Compare commits

...

9 Commits

Author SHA1 Message Date
Alf Gaida
1fd96f45b6
Adding upstream version 1.99.
Signed-off-by: Alf Gaida <agaida@siduction.org>
2018-08-18 14:57:58 +02:00
Alf Gaida
67e32d0aa7
Adding upstream version 1.98.
Signed-off-by: Alf Gaida <agaida@siduction.org>
2018-05-22 03:38:12 +02:00
Alf Gaida
727bda879b
Adding upstream version 1.97.
Signed-off-by: Alf Gaida <agaida@siduction.org>
2017-09-26 21:49:14 +02:00
Alf Gaida
11dcc131c7
Adding upstream version 1.96.
Signed-off-by: Alf Gaida <agaida@siduction.org>
2016-10-18 23:36:32 +02:00
Alf Gaida
356a29f903 Adding upstream version 1.96~38-g975f8ce. 2016-09-19 02:40:07 +02:00
Alf Gaida
c177e5784f Adding upstream version 1.95+20160128. 2016-01-29 23:28:13 +01:00
Alf Gaida
11f6e30f7c Adding upstream version 1.95-20151117. 2015-11-20 00:02:57 +01:00
Alf Gaida
d325fba672 Adding upstream version 1.95+20150929. 2015-11-01 23:21:40 +01:00
Alf Gaida
c41701becf Adding upstream version 1.95+20150907. 2015-09-07 22:56:19 +02:00
89 changed files with 10041 additions and 5193 deletions

3
.gitignore vendored
View File

@ -1,3 +0,0 @@
build/
*.qm
*.kdev4

13
AUTHORS
View File

@ -2,10 +2,15 @@ Upstream author:
Artem Galichkin <doomer3d@gmail.com>
Contributors:
Jerome Leclanche <jerome@leclan.ch>
Alexander Sokolov <sokoloff.a@gmail.com>
Tonci Antunovic <tantunovic@gmail.com>
Stef Binde <stef.binde@riseup.net>
Alf Gaida <agaida@siduction.org>
Ilya87 <yast4ik@gmail.com>
Jonathan Hooverman <jonathan.hooverman@gmail.com>
Ilya87 <yast4ik@gmail.com>
Tsu Jan <tsujan2000@gmail.com>
Jerome Leclanche <jerome@leclan.ch>
Paulo Lieuthier <paulolieuthier@gmail.com>
Peter Mattern <pmattern@arcor.de>
Luís Pereira <luis.artur.pereira@gmail.com>
Thibaut Quentin <thibaut.quentin@laposte.net>
Alexander Sokolov <sokoloff.a@gmail.com>

697
CHANGELOG
View File

@ -1,119 +1,614 @@
2.0
* Port on Qt5
1.2
* Added ability for autosaving type of the last created screenshot
* Some small fixes
screengrab-1.99 / 2018-07-21
============================
1.1.1
* Fixed wrong 'imgur' uploading result string for bb-code with preview
* Fixed segfault when exist configuration file contains "showTrayIcon=false"
* Translated using Weblate (Italian)
* Translated using Weblate (Catalan)
* Translated using Weblate (català)
* Translated using Weblate (català)
* Translated using Weblate (català)
* Translated using Weblate (Catalan)
* Added translation using Weblate (català)
* Translated using Weblate (Spanish)
* Translated using Weblate (Portuguese (Brazil))
* Translated using Weblate (Ukrainian (uk_UA))
* Translated using Weblate (Polish)
* Added translation promo
* Translated using Weblate (Spanish)
* Translated using Weblate (Polish)
* Added translation using Weblate (Polish)
* Translated using Weblate (Hebrew)
* Added translation using Weblate (Hebrew)
* Translated using Weblate (German)
* Translated using Weblate (German)
* Translated using Weblate (Lithuanian)
* Added translation using Weblate (Lithuanian)
* Translated using Weblate (German)
* Add X11Extras and Network to link target
1.1
* added ability to upload to MediaCreush (http://mediacru.sh)
* Option "Always save the window size" replaced by "autosave window size on exit ScreenGrab"
* Reworked main window ui (the order of the buttons)
* Reworked the configuration dialog (some UI elements moved between sections, and increment count of the sections)
1.98 / 2018-05-21
=================
1.0
* Fixed dual monitor support
* added XDG_CONFIG_HOME support, by a build option SG_XDG_CONFIG_SUPPORT
* added ability to upload to some image hosting services (imgur.com and imgshack.us)
* added build option for compiling without the upload feature (SG_EXT_UPLOADS build option)
* added "Previous selection" mode (save the last selected area and restore it in the next get area screenshot)
* added ability to edit a screenshot in an external editor
* added option for preview screenshot in default image viewer by double click on screenshot area
* Fixed non-minimize main window on "Exit" shortcut, when using "Minimize to tray" option
* Fixed bug with cutting button text on main window
* Fixed regression with not capturing a screenshot when a second instance of ScreenGrab is running
* fixed bug with not creating the path to autosave screenshots (when it is typed in manually in configuration dialog)
* added build option SG_GLOBALSHORTCUTS for turning on/off build with global shortcuts support
* autoincrement filenames when saving screenshots in manual mode (in one running session)
* added the ability to customise shortcuts to close ScreenGrab
* added ability to run ScreenGrab minimized to tray (or taskbar, if tray is disabled) with "--minimized" command line option
* Added ability to automatically upload the screenshot via the command line "--upload" parameter
* Release 1.98: Update changelog
* Bumped SCREENGRAB_VERSION to 1.98
* Spanish translation update
* A more specific condition for Ctrl+C
* Filter out Ctrl+C in Delay box
* No window screenshot with shaded windows
* Translated using Weblate (German)
* Translated using Weblate (German)
* Translated using Weblate (German)
* Rewritten the debian related build infos
* some little changes regarding headlines and copyright
* removed doomer jabber
* added our bugtracker
* use our github repo as home
* Translated using Weblate (German)
* Translated using Weblate (German)
* Translated using Weblate (Ukrainian)
* Translated using Weblate (Spanish)
* Translated using Weblate (Russian)
* Translated using Weblate (Portuguese (Brazil))
* Translated using Weblate (Italian)
* Translated using Weblate (French)
* Translated using Weblate (German)
* Translated using Weblate (Russian)
* Translated using Weblate (French)
* Updated translation files again - changed the parameters for lupdate
* Translated using Weblate (Portuguese (Brazil))
* Translation maintenance
* Always use contents rect Fixes https://github.com/lxqt/screengrab/issues/67
* Never scale up beyond real size
* Several fixes, especially for the tray icon
* __DATE__ and __TIME__ macro are not very helpful for reproducible builds.
* Cleanup CMakeLists.txt and complete AUTHORS
* Added a minimum default configuration
* Handle invalid window screenshots
* Corrected a grammar mistake
* Always use native (LXQt) file dialog
* Just changed the location of a comment
* Cleanup and fixes
* Some ui polishing
* Improve screengrab app behaviour
* Drops Qt foreach
* fix some uris
* Update references in about dialog
0.9.1
* fixed non-switching combo-box "Type of Screeen" when grabbing screenshot from signal by another instance
* fixed incorect grab active window screens in GNOME (when disabled "Allow multiple copies" option and run another instance)
1.97 / 2017-09-26
=================
0.9
* added global shortcuts
* added option to enable|disable system tray
* added switch to the already running instance of an application when you start a second instance (non-operating mode to allow multiple instances)
* added autosave first screenshot which has been taken on application start (enabled | disabled optional)
* redesign of the configuration dialog UI
* Release 1.97: Update changelog
* Added basic .gitattributes
* Bump SCREENGRAB_VERSION to 1.9.7
* Added KF5WindowSystem to build requirements
* Updated italian translation
* Update Qt Linguist files
* French translation
* Adds "snap to border" functionality
* Fixes a FTBFS when compiled against Qt 5.8
0.8.1
* [Linux] fixed incorrect selection of the default saving format in the KDE 4.4.x save file dialog
* added de_DE translation
1.96 / 2016-10-18
=================
0.8
* added command line parameters for grab modes (fullscreen, active window, selection area)
* added BMP support
* added pt_BR translation
* added automatically hiding main window on grab process
* [Linux] fixed grab active window screenshot without decorations
* [Linux] added option "no window decoration"
* added shortcuts for main window buttons
* Bump version to 1.96
* Disable the uploads the hard way - all other methods don't work right now. Only using the trigger results in a FTBFS. So for now it's the best just not to use the uploader lib.
* Work around grep 2.23 new behaviour
* Drop support for saving as bmp
* Remove unnecessary notification on screenshot
* Remove MediaCrush support as the official site shut down
* Some fixes regarding orthography and wording
* Documentation: fix some typos and HTML formatting issues
* Translations: drop country-specific translations in German and Italian
* Cleanup unused functions and defs
* Adds the Ui elements to support shot type saving/loading
* Adds methods to get/set screenshot type from/to config file
* imgur: Use https for uploads
* Make Imgur the default upload host again
* GPL2 header added whitespaces fixed
* fixed wrong fsf address the hard way
* Updates the CMake minimum version to v3.0.2
* Adapt to Qt5Xdg new way of finding the package
* Grab the mouse pointer only if the option is enabled
* Add checkboxes for enable or disable grab image of the mouse pointer
* Add configuration option for enable or disable grabbing image of the mouse pointer
* Change const DEF_ENABLE_EXT_VIEWER from "1" to "true"
* Add code for grab image of the cursor on the screenshots (full screen or active window)
* Add CMake modules for finding XCB library
* Install the app icon to the hicolor theme
* Move "quit" toolbutton to the right edge of toolbar
* Return simple QSystemTray notification, if D-Bus notifications is disabled
* Add build option "-DSG_DBUS_NOTIFY" for enable \ disable D-Bus notification support
* Replace QStystemTray notification at Freedesktop notificaions (via DBus)
* Rename method "Core::getScreen" to "Core::getScreenData"
* Add configuration option for url to mediacru.sh uploader
* "Imgur' now is default uploader
* Create screengrab_it.desktop
* Update screengrab_it_IT.ts
0.6.2 [Linux only]
* fixed non-translated tray menu (closed issue #7)
1.95_pr1 / 2015-01-29
=====================
0.6.1 [Linux only]
* fixed incorrect detection of the system language in some Linux distributions
* Reverse wrong cleanup in 21ad656c7284f346f5ecd4fc6914fa53b5c23093
0.6
* default value of hiding main window changed to true.
* added input template for inserting date-time into the saved filename
* added zoom around mouse cursor in area selection mode
* small modifications of the configuration dialog
* added html help info (English & Russian)
1.95 / 2015-01-29
=================
0.5
* added inserting date|time in saving filename [optional]
* added auto saving screenshots in grabbing process [option]
* added option to change the time of displaying tray messages [1 - 10 sec]
* added help info
* added tool tips for the UI elements
* small fixes config file syntax
* v2.0-beta1
* Small CMakeLists cleanup
* Refactor connections signals & slots to the Qt5-style (modules classes)
* Refactor connections signals & slots to the Qt5-style (core and ui classes)
* Incapsulate pointer to Config instance in Core instance
* Remove debug output prints
* Add ability to upload on MediaCrush vith "--upload" command line option
* Restore ability to upload screenshot vith "--upload" command line option
* Restore ability for send IPC signal from new instance to the running instance (if "Allow multiple instances" is disabled)
* Actions of the modules (upload & edit) moved to the right at the toolbar
* Restore ability to run as minimized to tray (or taskbarO
* Actions of the modules (upload & edit) moved to the left at the toolbar
* Replace the deprecated QPixmap::grabWindow() method at the QScreen::grabWindow()
* Replase emitimh signal "newScreenShot" by direct call "updatePixmap" method of the MainWnd
* Make re-update preview after editing screenshot
* Fox wrong connect to slot for the "copy" action
* Refactor adding to main toolbar the actions for upload & edit screenshot
* Restore code for autosave mainwindow size on exit
* Change order initialization for some members of the MainWindow
* Kill some old unused code
* Refactor code for displaying tray info messages
* Update code fo crate / kill tray icon and tray menu actions
* Remove some old code
* Restore shortcuts
* Restore open screenshot in ext viewer by double click on preview
* Restore display tooltip on the preview image
* Make right resizing mainwindow preview on startup
* Return worked resize pixmap on resizing main window
* Small return show() main window code
* Captured screenshot now displayed again
* Return make first screenshot when app is running
* Remove old quit() method from MainWindow
* Rewok restoring main window after shot
* Fix file saving (now used Qt-based dialog for save)
* Refactir method for hide main window on the sho event
* Screenshot with delay is moved to Core::setScreen
* Update close event code
* Fix crash on exit
* Code from "restoreWindow()" moved to "show()" (Main window)
* Start refactoring MainWindos and COre
* Sync translation infrastrucuture with LXQt
* Destroy old architecture
* lxqt_translate_desktop: Updates code to cope with the cmake-policy CMP0054
* Fix translations loader path bug introduced recently
* Remove old Windows files and move Changelog.txt
* More CMake cleanups
* Remove call 'displayPixmap()' method from the constructor of main window.
* Made first screenshot not too small in main window
* Removes left behind commented lines
* Merges singleapp lib with the core.
* More cleanups
* Use QDesktopServices::openUrl instead of calling xdg-open on uploader
* Move configuration const variables to #defines
* Remove option to use XDG's home config path and use it by default
* Remove old unused code
* Remove unused include in moduleuploader class
* Bump minimal required Qt version to 5.2
* Replace old command line parser on the QCommandLineParser
* Extracts modules translations sources
* Adds translation infrastructure to the modules
* Updates main application translations sources
* Use LXQt translation infrastructure
* Drop the check on Qt5LinguistTools_FOUND
* Avoid opening two intances of external editor
* translations: Use install(FILES ...) instead of install(DIRECTORY ...)
* Fix is not loaded translations
* Remove unnecessary separator from toolbar
* Use the same actions for both toolbar and tray menu
* Removed code specific to X11 (using KWindowSystem now) and large code refactoring to LXQt's style
* GUI fixes
* Use libqtxdg for the external editor module
* Fix some smapp typos in README
* Bump version number to 2.0-dev
* Add AUTHORS list
* Fix wrong 'imgur' uploading result string for bb-code with preview
* Fix regressive starting crash with 'showTrayIcon=false' settings parameter
* Define and handle LIB_SUFFIX
* Updated German translation
* Move buttons on right to toolbar and clean up main window layout
* Add an empty toolbar
* Get rid of DESKTOP_SESSION hacks
* Normalize style to whatever extent possible..
* Move translations to translations/
* No need to mention Qt-based
* Update Russian translation
* Remove debian/
* Move license to COPYING
* Change default preferences shortcut to something more appropriate
* Remove unused code
* Get rid of a warning in dialoguploader.ui
* Fix a warning in Core::sleep()
* Fix translations
* Windows support removed and CMake cleanups
* Port to Qt5
* CMakeLists.txt cleanup
* Some clean-ups in docs/html/en/index.html
* Fixed some typos in CMakeLists.txt
* Reword help messages
* Clean up --help output
* Remove imgshack support
* Move Delay below the screen, next to Type
v0.4
* added grabbing selection screen area
* added ability to copy image files into the clipboard
* added saving the size of the main window on exit [default is turned off]
* halve the memory size occupied by ScreenGrab at startup
* [win32] fixed bug with storing the screengrab.ini file
* change structure of some source code
* change buttons tab order of the main window
* new application icon
* some fixes
1.2 / 2014-12-30
================
v0.3.1
* fixed bug with non-displayed main window icon
* v1.2 release
* Add some Q_UNUSED macro
* Update changelog
* Add option for autosaving type of the last created screenshot
* Add ability for autosaving type of the last created screenshot
* Fix a warning in Core::sleep()
v0.3
* main window is now based on ui-file (remaked UI)
* added grabbing active window
* added option to allow running multiple instances of ScreenGrab
* added option to select between minimizing to tray and closing ScreenGrab (by close window button)
1.1.1 / 2014-11-14
==================
v0.2
* added JPEG support
* added options dialog
* added option to select a default directory for saving the files
* added option to select a default filename
* added option to select a default image format
* added saving options into an INI-file
* added i18n support and Russian localisation
* some fixes and changes in the code
* Windows version is now available as installer
* v1.1.1
* Update .ts files
* Fix wrong 'imgur' uploading result string for bb-code with preview
* Fix regressive starting crash with 'showTrayIcon=false' settings parameter
v0.1
* first public version
* added system tray icon and menu
* added option to hide ScreenGrab in systray
* added option to block running a second instance of ScreenGrab
1.1 / 2014-11-12
================
v0.0.3
- first working build
* v1.1
* Reword help messages
* Clean up --help output
* Update 'direct link' string for Uploade::MediaCrush (made link really direct, not page with image)
* Hide "fade effect" bug on the kwin with enabled compositing. issue #48
* Small update .ts files
* Change the "Exit" to a "Quit" button in the main window
* Updated help-file (cont.)
* Updated help-file (cont.)
* Updated help-file (cont.)
* Updated help-file (cont.)
* Updated help file (cont.)
* Fix non-reading local mimieifo.cache issue #42
* Start update docs for 1.1 release issue #43
* Update ChangeLog for 1.1 release
* Updated help file (cont.)
* Updated help file (cont.)
* Updated help file
* Updated ChangeLog.txt
* Fixed some typos in ChangeLog.txt
* Updated German translation
* Update ts files more
* Update translation files
* Update about.cpp
* Update configwidget.ui
* Update about.cpp
* Update core.cpp
* Update dialoguploader.cpp
* Update screengrab.desktop
* Update configwidget.cpp
* Update README.md
* Add check Debian or Ubuntu, via existing '/etc/debian_version' file (for set LIB path)
* Add hiding label and field for display preformated html and bb code with links to uploaded screenshot, when these links not were generated by uploader module. close #33
* Fix some tooltps in the window of the result uploading. issue #33
* Add the button for open "drect link" in the window of the result uploading. issue #33
* Add the button for open "delete link" in the window of the result uploading. issue #33
* Move "delete link" (in the window of the result uploading) into separate UI element issue #33
* Add empty widget for MediaCrush uploading settings. Fixed #36
* some typos: omage -> image Sset -> Set {A,a}utomaticaly - tically
* Add the delete url for MediaCrush uploads issue #27
* Micro refactor in MediaCrush uploder code
* Updated readme file
* Set Qt 4.8.0 as minimum required verions of Qt
* Add uploading to MediaCrush issue #27
* Move the clipboard setting below the default host. issue #28
* Set active tab "Saving" in the main section on load settings dialog issue #28
* Remove unused section in the configuration dialog issue #28
* Move "Zoom area around mouse in selection mode" to the "Main" section, in the "Screenshot" tab issue #28
* Move the filename clipboard copy to the Main tab, in the Saving section issue #28
* Secyion "main" of the configuration widget were split to the two tabs issue #28
* Disable (instead of hiding) other tray options when the tray isn't checked issue #28
* Fixes some English strings in the settings dialo issue #28
* Fixes some English strings in the settings dialog issue #28
* Made "Upload" and "Edit" in as two buttons instead "Advanced" button. close #29
* Fix detect 'lib64' dir
* Make "Help" a menu-button, with "Help" and "About" as menu items issue #29
* Option "Always save the window size" replaced by autosave window size on exit app. issue #28
* Started developing version 1.1
* Refactor some win32-depend code
1.0 / 2013-08-13
================
* Release 1.0
* Fix segfault on startup, when missing configuration file close #26
* Update ukrainian translation
* Update translation files
* Refactor some private class members (coding style fix)
* Updated copyrights (2012 -> 2013 year), version 1.0
* Remove unused files in ExtEdit module
* Update docs close #22
* Change modules lib fron STATIC to SHARED (only linux) close #23
* Enable shared linking with qkeysequencewidget library issue #23
* Update changelog for feature, which was added in issue #20
* Add the ability to automaticaly upload screenshot via command line "--upload" param issue #20
* Add dummy code for shadow upload screenshot issue #20
* Remove some old an unused code
* Refactor comand line options code close #21
* Add public method to ModuleManager, for init modules outside Core constructor
* Add "upload" cmd line param
* Update docs
* Update changelog
* Add opening screenshot in external default viewer by double click issue #18
* Add tooltip on screenshot view in main window issue #18
* Add load and saving @Enable ext view@ option in gui configuration dialog issue #18
* Add checkbox for enable disable external view option issue #18
* Add config param for enable\disable external view on dbl click issue #18
* Refactor code for reset to default settings in modules
* Fix non restore ImgUr as default image host by reset setings
* Refactor configwidget code for load modules configwidgets and save settings
* Remove prereserved listitem for ploader config widget in main configdialog
* Add return module by num if for cycle call all modules
* Add method for returning modules count (modulemanager)
* Add returning module name method to module interface
* Const string for path to global app linst moved outside a ExtEdit class
* Add ability to editing screenshots in external app (in Win32 platforn) close issue #10
* Add update screenshot when it is a changed and saved in external editor.
* Changed Core::getPixmap() return value form QPixmap to QPixmap*.
* Add monitoring changes for editing screenshot in external app by QFileSystemWatcher (issue #10)
* Implemented opening screenshot in selected external app. issue #10
* Add killing temp file after prepare screenshot for uploading
* Add core mrthod to kill temporary file
* Move method for getTempFilename from Uploader class to Core class
* Remove old unused code for module calls
* Implement base run selected external editor (without file)
* Set caption "Close" to DialogUploader->butClose in uploadDone slot
* Set caption "Close" to DialogUploader->butClose in uploadDone slot
* Refactor code for generate and display links with links on uploaded image (add delete url if it avalible) issue#17
* Add show delete url in "imgur uploader" #17
* Fix text labels on the uploader view (close #19)
* Temporary fix regressive crash whan display configuration dialog
* Remove some debug outputs
* make inheritance class ModuleUploader by QObject and AbstractModule and connect class action to Init() slot
* Refactor generate advansed menu in mainwindow
* Add module base interface and modulemanager basic implementation
* Add implementation for get external editors list
* Add extedit module static lib to linl on main code
* Add displaing status of SG_EXT_EDIT build variable
* ./src/common/singleapp/singleapp.cpp:94:60: error: format not a string literal and no format arguments [-Werror=format-security] ./src/common/singleapp/singleapp.cpp:100:60: error: format not a string literal and no format arguments [-Werror=format-security] cc1plus: some warnings being treated as errors
* Add module ext edit implementation
* Add license header in extedit module files
* Add menu for advanced actions and reconnect "Upload" slot to it.
* Change butUpload to butAdvanced
* Add blank code for module 'external edit'
* Fix override user set CXXFLAGS (close #14)
* Some small fix in ui and updated translation files
* added ability to run in minimized to ttray (or taskar, if tray is disabled) with "--minimized" comand line option
* Add "Previous selection" mode (issue #12)
* Micro fix code formating
* Small updates in user docs files
* Change preview image alignment in uploader dialog
* Fix incorrect scale of preview image in uploader dialog
* Fix non-selection default (first) image hosting in uploader dialog, when uploader.conf is missing
* Small fix in README filex
* Add note for building with using system version Qxt in Debian-based Linux distro (#11)
* Kill some compile warnings in uploader code
0.9.96 / 2012-10-03
===================
* v0.9.96 (1.0-rc, code and text strings are freezed to 1.0 release)
* Update translation files
* Remake about dialog
* Add layouts to "Common settings" tab in uploader config widget
* Implement selection uploader fron "defaultHost" settings param
* Add options for selectin default image hosting
* Change the text align on label for the option to select host settings (uploader config widget)
* Fix install README file problem
* Add some forgotten strings to README
* Update README file
* Add ability to build with system Qxt Lib (-DSG_USE_SYSTEM_QXT=ON) #11
* Add FindQxt.cmake module for detecting installed Qxt Library
* Fix resizing list of configuration sections
* Remove fixed size in configuration dialog
* Some small modified ui of uploader module
* Add layout to uploaderconfigwidget_imgur
* Remove some debug and unused code
* Add autocopy to clipboard result direct url for uploaded screenshot (if it is a set as true)
* Add widget for configuration uploading to image hosts (imgshack is work, imgur is not)
* Add .gitignore file
* Add save, load and deafaults setings of uploader (base, not full settings for image hostings)
* Add widget for uploader settings
* Fix incorrect defination path to user documentation files
* Move README file to project root directory
* Added forgotten license header into some new files
* Restore functionality for umageshack.us uploader part
* Add base implementation load & save uploader config params
* Slider "Image Quality" is hiding, if selected default format not "jpg" (issue #8)
* v0.9.94
* Some small code formating changes and remove unused code
0.9.94 / 2012-07-27
===================
* Some small code formating changes and remove unused code
* Fix non-minimize main window on @Exit@ shortcut, when use "Minimize to tray" option
* Escape key now is default shortcut to exit (issue #7)
* add ability to compile without upload feature [-DSG_EXT_UPLOADS=OFF] issue#5
* Remaked uploader module (base functions) Add ability to upload to imgur.com (issue #4)
* Add "0" symbol before string of screenshot's number (if num < 10)
* Remove conditional compilation in get save path function [core]
* Fix regression of autosaving first screenshot, when filename includes date-time
* Add checking existing file, when filename of saving file contains date-time string
* Removed compareSavename core function
* Moved screen number variable to Config class And commit forgotten changes for area selection grabber code
* Fix crash when canceled select of screen area (by Esc key)
* Append scheenshot number (1,2,3,etc) to default screenshot name, if it is already exists (issu #6)
* Updated ChangeLog
* Add build option SG_XDG_CONFIG_SUPPORT for enable storage config files in XDG_CONFIG_JOME (issue
* [X11 only] add moving config files from old-style location ($HOME/.screengrab/) to XDG_CONFIG_HOME ($XDG_CONFIG_HOME/screengrab/)
0.9.90 / 2012-04-06
===================
* Add Spanish translation (thanks to Burjans L García D)
* Add Italian translation (thnks to speps)
* Fix for selection on dual monitor
* Updated copyrights (2011 -> 2012 year), version 0.9.90
* Fixed wrong saving screenshot, when canceled area selection (in "Screen area" mode)
* Removed bad and deprecated code in regionselectclass
* changed applying region selection (from releasing left mouse button to double click or pressing enter)
* aligned some code lines in mainwindow.cpp
* Added disabling slider for set image qualkity, when bmp format is selected
* Added build option for manually setting name of documentation directory in unix(e.g. screengrab-1.0"
* Moved defination -DBUILD_QXT_GUI to if SG_GLOBALSHORTCUTS block
* Dixed some warnings
* Added "image quality" option for saved screenshots
* Removed overloaded method Core::writeScreen and moved his functionality to main Core::writeScreen method
* Fixed code indents in configwidget.cpp
* Modified ui for uploader doalog
* Set minimal button size of uis to 112 px
* Modified configuration dialog (tabwidget replaced by stackedwidget + listwidget)
* button text "Information" replaced with "About"
0.9.85 / 2011-08-17
===================
* Modified CMakeLists.txt - added some target for create distro (src and windows binary)
* Fixed non-saving uploader settings in windows
* Modified changelog and CMakeLists.txt v0.9.85
* small fix ui
* v0.9.82
* Fixed regression with non-capturing screen when runnin another instance
* Changed sizePolicy for buttons on main windows changed default width from 449 to 480 fixed issue #11
* Fixed non-creating directory for saved screenshot, when it directory was manualy entered in config dialog (v0.9.81) changed method of creating a dev-version number (nov baed on git rev)
* Fixed non-creating directory for saved screenshot, when it directory was manualy entered in config dialog (v0.9.81) changed method of creating a dev-version number (nov baed on git rev)
0.9.80 / 2011-05-30
===================
* Added implementation uploader settings
* Added static method to get the settings storage directory
* Implement set username and password in uploading process
* Added ui elements for user's imageshack account (login|pass)
* Added connectyion between errorFail signal in uploader backend and errorFail slot in uploader giu
* Fix incorrect setting mime-type for uploaded jpeg screenshots
* Added parsing returned error messages
* Modified ui for uploader dialog (set layouts on upload page)
* Modified ui for uploader dialog (set layouts on upload page)
* Added select modes for server-side resize uploaded screenshots
* Implement uploaderdialog ui basic functionaly
* Added basic implementation of create network request for uploader
* Added overloaded function writeScreen() in Core
* Started implementation uploading
* Added overloaded function writeScreen() in Core
* added skeletons for of functions for creating upload data & http-request
* Some small changes in uploader ui
* added connect button click to uploading slot
* Cleaned uploaderdialog ui (kill deprecated concept)
* Added copying string of saved image name (file name or full path)
* Small upd some include directives
* Implementation of the autoincrement filenames when saving screenshots in maual mode (in one running session)
* Updated CmakeLists.txt
* Added build option SG_GLOBALSHORTCUTS for enable|disable global shortcuts support in compile time
* Added setup @close shortcut" on close button
* Added ui dialog item foe @close shortcut"
* Added config key and default value for shotrcut close (load & save shortcuts modified)
* Changed detecting KDE session in show savefile dialog (for display KDE-based dialog in KDE SC 4.6)
* Starting development version 1.0
* added dir for debian-based pakcge cfgs
* Started uploader branch
0.9.1 / 2011-01-20
==================
* v 0.9.1
* Remove incorrect symbol in mai.cpp
* added debian oackage configs
* Updated ts files
* Updaded docs files
* Changed years in license headers
* Added hack for in gnome on showing window when run second instance app
* Removed double grab screen in start another instance app
* Removed executable flag from source files
* Added link to X11, for building in some rpm-based linux distro (Fedora, Mandriva, etc)
* Removed g++ warnings on some function of CmdLine class
* Added return value on assignment operator of Core class
* Close regression with not create screenshot whe run second instace app
* Added question messagebox on restore settings (replace information messagebox)
* Fix tray visible regression (hack with reimplement MainWindow::show() method )
* Added grab screenshot in restore mainwindow on signal from anther instance app (tested in KDE SC 4.6)
* Fixed non changed "Type" combobox on restoring app window when recieved msg from another innstance
* Start dev 0.9.1 bugfix
* Changed detecting KDE session in show savefile dialog (for display KDE-based dialog in KDE SC 4.6)
0.9 / 2010-11-14
================
* v0.9
* Updated pt_BR help file
* Removed unused debug output
* Small fx text strings
* Changed value of DEF_SHOW_TRAY from false to true
* Updated pt_BR translation
* change spacing for checkbox "Save first screen" from 14 to 16 px
* added margin in ledt for checkAutoSaveFirst
* mall string fix in core.cpp
* Modified README.txt
* Modified Russian & Ukrainian translation modified
* updated html-based user docs
* v0.8.97
* String freeze for version 0.9
* fixed crash when selected not avalible shortcuts in condig dialog (Windows)
* fixed non-build 0.8.95 in windows
0.8.95.1 / 2010-10-20
=====================
* fixed crash by clicking on empty shortcuts treewidget
* Update changelog for 0.9
0.8.95 / 2010-10-17
===================
* version 0.8.95 (0.9-rc)
* Added private slot for block|unblock global shortcuts in main wnd (when show config dialog)
* Renamed configwidget -> ConfigDialog & aboutWidget -> AboutDialog
* Added activation process of capturing key sequence with mouse dblClick & key enter pressed on hotkey items
* change method navigation on hotkeys treewidget
* Fixed regression incorrect displays tray messages
* Autoconnects replaced to manual connects in config dialog
* Refactored getDefaultFormatID method in Config class (ifs -> QVector.indexOf)
* added checkbox in configdialog for autosSaveFirst option
* added check of autoSaveDirst option on screenShot function
* fix forgotten loading autoSaveFirst option
* add setter & getter for aoutoSaveFirst option
0.8.88 / 2010-09-24
===================
* removed some debug code
* added small hack for block crash on grab selected area with globalshortcuts (whem main window is trayed) -- win32 only
* remove duplicate qrc file some fix on try code
* fix for build on win32 with mingw 4.4.0
* class screengrab renamed to core
* removed some deprecated code
* added non-displayed @new screen@ message on crete first screenshot (when ScreenGrab starting)
* remove inused code; added small hack for display autosave tray message on running screengrab
* restored saving mainwindow size on exit (if it enabled)
* restored minimization on tray on close window button, when is it enabled
* replace first call screenShot from core to mainWindow (core->screenShot() ) constructor
* Test commit
* Test commit
* Test commit
* add implementation get screens on shortcuts
* add shortcuts creating in mainwindow
* add trayed flag for check minimization to systray
* implement show runned aps when run another instance app with disabled allow multiple copies
* modify showAbout & showOptions method (fix crash when mainwindow is trayed)
* change emiting nweScreen signal pos in code
* add display tray notitfications
* add block tray icon on mwe screen getting process
* add sending StateNotigyMessages from core to mainwindow fix #includes
* returned tray
* dlete backupp files, created kdevelop
* first commit

View File

@ -1,11 +1,11 @@
cmake_minimum_required(VERSION 2.8.11)
cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR)
# set project's name
project(screengrab)
find_package(Qt5Widgets 5.2.0 REQUIRED)
find_package(Qt5X11Extras 5.2.0 REQUIRED)
find_package(Qt5Network 5.2.0 REQUIRED)
find_package(Qt5Widgets 5.7.1 REQUIRED)
find_package(Qt5X11Extras 5.7.1 REQUIRED)
find_package(Qt5Network 5.7.1 REQUIRED)
find_package(KF5WindowSystem REQUIRED)
# for translations
@ -20,8 +20,26 @@ set(CMAKE_AUTOUIC ON)
include(GNUInstallDirs)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
find_package(X11)
if (X11_FOUND)
set(HAVE_X11 1)
endif(X11_FOUND)
# set up xcb and x11_xcb
find_package(
XCB MODULE COMPONENTS
XCB
SHAPE
XFIXES
)
find_package(
X11_XCB MODULE
)
# add version define
set(SCREENGRAB_VERSION "1.95")
set(SCREENGRAB_VERSION "1.98")
set(SCREENGRAB_VERSION_DEV "2.0-beta1")
# set(DEV_BUILD True)
@ -46,7 +64,10 @@ elseif(NOT SCREENGRAB_VERSION_DEV)
set(VERSION "${SCREENGRAB_VERSION}")
endif(SCREENGRAB_VERSION_DEV)
add_definitions(-DVERSION="${VERSION}")
add_definitions(
-DVERSION="${VERSION}"
-DQT_NO_FOREACH
)
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
@ -63,8 +84,9 @@ message(STATUS "Library path: ${CMAKE_INSTALL_RPATH}")
# options
option(SG_GLOBALSHORTCUTS "Enable global shortcuts" OFF)
option(SG_EXT_UPLOADS "Enable upload screenshots to MediaCrush and imgur" ON)
option(SG_EXT_UPLOADS "Enable upload screenshots to Imgur" ON)
option(SG_EXT_EDIT "Enable ability to edit screenshots in external editor" ON)
option(SG_DBUS_NOTIFY "Enable D-Bus notifications" ON)
option(UPDATE_TRANSLATIONS "Update source translation translations/*.ts files" OFF)
# Although the names, LXQtTranslateTs and LXQtTranslateDesktop, they don't
@ -90,12 +112,17 @@ endif()
if(SG_EXT_EDIT)
add_definitions( -DSG_EXT_EDIT="1")
find_package(Qt5Xdg REQUIRED)
include(${QTXDG_USE_FILE})
endif()
if(SG_DBUS_NOTIFY)
find_package(Qt5DBus 5.2 REQUIRED)
add_definitions( -DSG_DBUS_NOTIFY="1")
endif()
message(STATUS "Global shortcuts support: " ${SG_GLOBALSHORTCUTS})
message(STATUS "Upload to MediaCrush and imgur support: " ${SG_EXT_UPLOADS})
message(STATUS "Imgur upload support: " ${SG_EXT_UPLOADS})
message(STATUS "Editing screenshots in external editor support: " ${SG_EXT_EDIT})
message(STATUS "Enable D-Bus notifications: " ${SG_DBUS_NOTIFY})
message(STATUS "Use system Qxt Library: " ${SG_USE_SYSTEM_QXT})
message(STATUS "Update source translation translations/*.ts files: " ${UPDATE_TRANSLATIONS})
@ -104,6 +131,9 @@ message(STATUS "Update source translation translations/*.ts files: " ${UPDATE_TR
message(STATUS "Documentation directory: " ${CMAKE_INSTALL_FULL_DOCDIR})
add_definitions(-DSG_DOCDIR="${CMAKE_INSTALL_FULL_DOCDIR}")
# app icon path
add_definitions(-DSG_ICONPATH="${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATADIR}/pixmaps/screengrab.png")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/src")
add_subdirectory("${CMAKE_CURRENT_SOURCE_DIR}/src/common/qkeysequencewidget")
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/src/common/qkeysequencewidget/src")
@ -131,6 +161,14 @@ set(SCREENGRAB_SRC
src/core/ui/mainwindow.cpp
)
if(SG_DBUS_NOTIFY)
set(SCREENGRAB_SRC ${SCREENGRAB_SRC} src/core/dbusnotifier.cpp)
endif()
if(X11_FOUND)
set(SCREENGRAB_SRC ${SCREENGRAB_SRC} src/core/x11utils.cpp)
endif()
set(SCREENGRAB_HDR
src/core/singleapp.h
)
@ -147,6 +185,10 @@ qt5_add_resources(QRC_SOURCES ${SCREENGRAB_QRC})
message(STATUS "Generating localize ...")
set(SCREENGRAB_CONFIG_FILES
screengrab.conf
)
set(SCREENGRAB_DESKTOP_FILES_IN
screengrab.desktop.in
)
@ -195,35 +237,40 @@ if(SG_EXT_EDIT)
target_link_libraries(screengrab extedit)
endif()
target_link_libraries(screengrab qkeysequencewidget Qt5::Widgets KF5::WindowSystem)
if(SG_DBUS_NOTIFY)
target_link_libraries(screengrab Qt5::DBus)
endif()
if (X11_XCB_FOUND)
add_definitions( -DX11_XCB_FOUND="1")
target_link_libraries(screengrab ${X11_XCB_LIBRARIES})
endif()
# make src.tar.gz
add_custom_target(dist @echo create source package)
set(SCREENGRAB_DIST "screengrab-${SCREENGRAB_VERSION}")
add_custom_command(COMMAND cp
ARGS -R ${CMAKE_CURRENT_SOURCE_DIR} "/tmp/${SCREENGRAB_DIST}"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
TARGET dist
)
if (XCB_XCB_FOUND)
add_definitions( -DXCB_XCB_FOUND="1")
target_link_libraries(screengrab ${XCB_XCB_LIBRARY})
endif()
add_custom_command(COMMAND tar
ARGS cvfz "${CMAKE_CURRENT_BINARY_DIR}/${SCREENGRAB_DIST}.tar.gz" --exclude=*~ --exclude-vcs --exclude=localize/*qm --exclude=*.kdev4 --exclude=build --exclude=create-src.sh --exclude=win32 -C "/tmp" "${SCREENGRAB_DIST}"
WORKING_DIRECTORY "/tmp"
TARGET dist
)
if (XCB_SHAPE_FOUND)
add_definitions( -DXCB_SHAPE_FOUND="1")
target_link_libraries(screengrab ${XCB_SHAPE_LIBRARY})
endif()
add_custom_command(COMMAND rm
ARGS -rf "/tmp/${SCREENGRAB_DIST}"
WORKING_DIRECTORY "/tmp"
TARGET dist
)
if (XCB_XFIXES_FOUND)
add_definitions( -DXCB_XFOXES_FOUND="1")
target_link_libraries(screengrab ${XCB_XFIXES_LIBRARY})
endif()
# Link with Network and X11Extras. See pull#86. TODO: Should be optional when upload module is needed.
target_link_libraries(screengrab qkeysequencewidget Qt5::Widgets KF5::WindowSystem Qt5::X11Extras Qt5::Network ${X11_LIBRARIES})
# installing
install(TARGETS screengrab RUNTIME DESTINATION bin)
# install html docs
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/docs/html" DESTINATION "${CMAKE_INSTALL_FULL_DOCDIR}")
# install config files
install(FILES ${SCREENGRAB_CONFIG_FILES} DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME})
# install desktop files
install(FILES ${SCREENGRAB_DESKTOP_FILES} DESTINATION ${CMAKE_INSTALL_DATADIR}/applications)
# install pixmap
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/img/screengrab.png" DESTINATION ${CMAKE_INSTALL_DATADIR}/pixmaps)
install(FILES "${CMAKE_CURRENT_SOURCE_DIR}/img/screengrab.png" DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/32x32/apps")

View File

@ -1,20 +1,18 @@
ScreenGrab
==========
# ScreenGrab
version 2.0-dev
##### version 2.0-dev
ScreenGrab - A program for fast creating screenshots, and easily publishing them on internet image hosting services. It works on Linux and Windows operating systems. ScreenGrab uses the Qt framework and thus, it is independent from any desktop environment.
Build requirements
------------------
### Build requirements
* Qt5 >= 5.2 (Qt 4.x support only 1.x branch)
* CMake >= 2.8.11 (only for building ScreenGrab from sources)
* GCC > 4.5
* KF5WindowSystem
* [optional] Qxt Library > 0.6 (if you want to build ScreenGrab using your system Qxt version - see the "Build options" section in this file)
Build
-----
### Build
To build ScreenGrab from sources, use these commands:
@ -24,38 +22,47 @@ To build ScreenGrab from sources, use these commands:
make
make install
Build options
-------------
### Build options
You can use some or all of these parameters to customise your build.
* **-DCMAKE_INSTALL_PREFIX** - Install prefix for Linux distro. Default setting: "/usr".
* **-DSG_XDG_CONFIG_SUPPORT** - Place config files into XDGC_CONFIG_HOME directory (usually - ~/.config/${app_name) ). Default setting: ON. In previous versions the config files were stored in ~/.screengrab (Set this parameter to "OFF" to store the config files here).
* **-DSG_EXT_UPLOADS** - Enable uploading screenshots to image hosting services. Default setting: ON.
* **-DSG_DBUS_NOTIFY** - Enable D-Bus notifications.
* **-DSG_GLOBALSHORTCUTS** - Enable global shortcuts for main actions to create screenshots. Default setting: ON.
* **-DSG_USE_SYSTEM_QXT** - Use system version Qxt Library for global shortcuts. Default setting: OFF.
* **-DSG_DOCDIR** - Name for the directory of user's documentation. Default setting: "screengrab".
* **-DQKSW_SHARED** - Enable shared linking with qkeysequencewidget library (in src/common/qksysekwesewidget). Default setting: OFF.
**Build notes:**
#### Build notes
* For Debian based Linux distro (Debian Squeezy, Ubuntu 12.04, etc) - if you want to build ScreenGrab using the system version of the Qxt Library, please use this command to run CMake:
For Debian based Linux distributions please use the distribution build tools. One can get the source-code with
```
apt source screengrab # Sources for the released package
- or -
git clone https://salsa.debian.org/lxqt-team/screengrab
```
Build with the tools provided by `devscripts` or better with `pbuilder` or `sbuild`
cmake -DSG_USE_SYSTEM_QXT=ON -DQXT_QXTCORE_INCLUDE_DIR=/usr/include/qxt/QxtCore -DQXT_QXTGUI_INCLUDE_DIR=/usr/include/qxt -DCMAKE_INSTALL_PREFIX=/usr ../
LICENSE
-------
### LICENSE
Screengrab is licensed under the GPL v2. See file LICENSE in docs directory for more information
Contacts
--------
### Contacts
E-mail: doomer3d@gmail.com
Jabber: doomer@jabber.linux.it
Web homepage: http://screengrab.doomer.org/
Web homepage: https://github.com/lxqt/screengrab
Bug Tracker: https://github.com/lxqt/screengrab/issues
Copyright (c) 2009-2013, Artem 'DOOMer' Galichkin
### Copyright
(c) 2014-2018, LXQt Team
(c) 2009-2013, Artem 'DOOMer' Galichkin
### Translation (Weblate)
<a href="https://weblate.lxqt.org/projects/lxqt/screengrab/">
<img src="https://weblate.lxqt.org/widgets/lxqt/-/screengrab/multi-auto.svg" alt="Translation status" />
</a>

31
cmake/FindX11_XCB.cmake Normal file
View File

@ -0,0 +1,31 @@
# - Try to find libX11-xcb
# Once done this will define
#
# X11_XCB_FOUND - system has libX11-xcb
# X11_XCB_LIBRARIES - Link these to use libX11-xcb
# X11_XCB_INCLUDE_DIR - the libX11-xcb include dir
# X11_XCB_DEFINITIONS - compiler switches required for using libX11-xcb
# Copyright (c) 2011 Fredrik Höglund <fredrik@kde.org>
# Copyright (c) 2008 Helio Chissini de Castro, <helio@kde.org>
# Copyright (c) 2007 Matthias Kretz, <kretz@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
IF (NOT WIN32)
# use pkg-config to get the directories and then use these values
# in the FIND_PATH() and FIND_LIBRARY() calls
FIND_PACKAGE(PkgConfig)
PKG_CHECK_MODULES(PKG_X11_XCB QUIET x11-xcb)
SET(X11_XCB_DEFINITIONS ${PKG_X11_XCB_CFLAGS})
FIND_PATH(X11_XCB_INCLUDE_DIR NAMES X11/Xlib-xcb.h HINTS ${PKG_X11_XCB_INCLUDE_DIRS})
FIND_LIBRARY(X11_XCB_LIBRARIES NAMES X11-xcb HINTS ${PKG_X11_XCB_LIBRARY_DIRS})
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(X11_XCB DEFAULT_MSG X11_XCB_LIBRARIES X11_XCB_INCLUDE_DIR)
MARK_AS_ADVANCED(X11_XCB_INCLUDE_DIR X11_XCB_LIBRARIES)
ENDIF (NOT WIN32)

238
cmake/FindXCB.cmake Normal file
View File

@ -0,0 +1,238 @@
# Try to find XCB on a Unix system
#
# This will define:
#
# XCB_FOUND - True if xcb is available
# XCB_LIBRARIES - Link these to use xcb
# XCB_INCLUDE_DIRS - Include directory for xcb
# XCB_DEFINITIONS - Compiler flags for using xcb
#
# In addition the following more fine grained variables will be defined:
#
# XCB_XCB_FOUND XCB_XCB_INCLUDE_DIR XCB_XCB_LIBRARY
# XCB_UTIL_FOUND XCB_UTIL_INCLUDE_DIR XCB_UTIL_LIBRARY
# XCB_COMPOSITE_FOUND XCB_COMPOSITE_INCLUDE_DIR XCB_COMPOSITE_LIBRARY
# XCB_DAMAGE_FOUND XCB_DAMAGE_INCLUDE_DIR XCB_DAMAGE_LIBRARY
# XCB_XFIXES_FOUND XCB_XFIXES_INCLUDE_DIR XCB_XFIXES_LIBRARY
# XCB_RENDER_FOUND XCB_RENDER_INCLUDE_DIR XCB_RENDER_LIBRARY
# XCB_RANDR_FOUND XCB_RANDR_INCLUDE_DIR XCB_RANDR_LIBRARY
# XCB_SHAPE_FOUND XCB_SHAPE_INCLUDE_DIR XCB_SHAPE_LIBRARY
# XCB_DRI2_FOUND XCB_DRI2_INCLUDE_DIR XCB_DRI2_LIBRARY
# XCB_GLX_FOUND XCB_GLX_INCLUDE_DIR XCB_GLX_LIBRARY
# XCB_SHM_FOUND XCB_SHM_INCLUDE_DIR XCB_SHM_LIBRARY
# XCB_XV_FOUND XCB_XV_INCLUDE_DIR XCB_XV_LIBRARY
# XCB_SYNC_FOUND XCB_SYNC_INCLUDE_DIR XCB_SYNC_LIBRARY
# XCB_XTEST_FOUND XCB_XTEST_INCLUDE_DIR XCB_XTEST_LIBRARY
# XCB_ICCCM_FOUND XCB_ICCCM_INCLUDE_DIR XCB_ICCCM_LIBRARY
# XCB_EWMH_FOUND XCB_EWMH_INCLUDE_DIR XCB_EWMH_LIBRARY
# XCB_IMAGE_FOUND XCB_IMAGE_INCLUDE_DIR XCB_IMAGE_LIBRARY
# XCB_RENDERUTIL_FOUND XCB_RENDERUTIL_INCLUDE_DIR XCB_RENDERUTIL_LIBRARY
# XCB_KEYSYMS_FOUND XCB_KEYSYMS_INCLUDE_DIR XCB_KEYSYMS_LIBRARY
#
# Copyright (c) 2011 Fredrik Höglund <fredrik@kde.org>
# Copyright (c) 2013 Martin Gräßlin <mgraesslin@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
set(knownComponents XCB
COMPOSITE
DAMAGE
DRI2
EWMH
GLX
ICCCM
IMAGE
KEYSYMS
RANDR
RENDER
RENDERUTIL
SHAPE
SHM
SYNC
UTIL
XFIXES
XTEST
XV)
unset(unknownComponents)
set(pkgConfigModules)
set(requiredComponents)
if (XCB_FIND_COMPONENTS)
set(comps ${XCB_FIND_COMPONENTS})
else()
set(comps ${knownComponents})
endif()
# iterate through the list of requested components, and check that we know them all.
# If not, fail.
foreach(comp ${comps})
list(FIND knownComponents ${comp} index )
if("${index}" STREQUAL "-1")
list(APPEND unknownComponents "${comp}")
else()
if("${comp}" STREQUAL "XCB")
list(APPEND pkgConfigModules "xcb")
elseif("${comp}" STREQUAL "COMPOSITE")
list(APPEND pkgConfigModules "xcb-composite")
elseif("${comp}" STREQUAL "DAMAGE")
list(APPEND pkgConfigModules "xcb-damage")
elseif("${comp}" STREQUAL "DRI2")
list(APPEND pkgConfigModules "xcb-dri2")
elseif("${comp}" STREQUAL "EWMH")
list(APPEND pkgConfigModules "xcb-ewmh")
elseif("${comp}" STREQUAL "GLX")
list(APPEND pkgConfigModules "xcb-glx")
elseif("${comp}" STREQUAL "ICCCM")
list(APPEND pkgConfigModules "xcb-icccm")
elseif("${comp}" STREQUAL "IMAGE")
list(APPEND pkgConfigModules "xcb-image")
elseif("${comp}" STREQUAL "KEYSYMS")
list(APPEND pkgConfigModules "xcb-keysyms")
elseif("${comp}" STREQUAL "RANDR")
list(APPEND pkgConfigModules "xcb-randr")
elseif("${comp}" STREQUAL "RENDER")
list(APPEND pkgConfigModules "xcb-render")
elseif("${comp}" STREQUAL "RENDERUTIL")
list(APPEND pkgConfigModules "xcb-renderutil")
elseif("${comp}" STREQUAL "SHAPE")
list(APPEND pkgConfigModules "xcb-shape")
elseif("${comp}" STREQUAL "SHM")
list(APPEND pkgConfigModules "xcb-shm")
elseif("${comp}" STREQUAL "SYNC")
list(APPEND pkgConfigModules "xcb-sync")
elseif("${comp}" STREQUAL "UTIL")
list(APPEND pkgConfigModules "xcb-util")
elseif("${comp}" STREQUAL "XFIXES")
list(APPEND pkgConfigModules "xcb-xfixes")
elseif("${comp}" STREQUAL "XTEST")
list(APPEND pkgConfigModules "xcb-xtest")
elseif("${comp}" STREQUAL "XV")
list(APPEND pkgConfigModules "xcb-xv")
endif()
endif()
endforeach()
if(DEFINED unknownComponents)
set(msgType STATUS)
if(XCB_FIND_REQUIRED)
set(msgType FATAL_ERROR)
endif()
if(NOT XCB_FIND_QUIETLY)
message(${msgType} "XCB: requested unknown components ${unknownComponents}")
endif()
return()
endif()
macro(_XCB_HANDLE_COMPONENT _comp)
set(_header )
set(_lib )
if("${_comp}" STREQUAL "XCB")
set(_header "xcb/xcb.h")
set(_lib "xcb")
elseif("${_comp}" STREQUAL "COMPOSITE")
set(_header "xcb/composite.h")
set(_lib "xcb-composite")
elseif("${_comp}" STREQUAL "DAMAGE")
set(_header "xcb/damage.h")
set(_lib "xcb-damage")
elseif("${_comp}" STREQUAL "DRI2")
set(_header "xcb/dri2.h")
set(_lib "xcb-dri2")
elseif("${_comp}" STREQUAL "EWMH")
set(_header "xcb/xcb_ewmh.h")
set(_lib "xcb-ewmh")
elseif("${_comp}" STREQUAL "GLX")
set(_header "xcb/glx.h")
set(_lib "xcb-glx")
elseif("${_comp}" STREQUAL "ICCCM")
set(_header "xcb/xcb_icccm.h")
set(_lib "xcb-icccm")
elseif("${_comp}" STREQUAL "IMAGE")
set(_header "xcb/xcb_image.h")
set(_lib "xcb-image")
elseif("${_comp}" STREQUAL "KEYSYMS")
set(_header "xcb/xcb_keysyms.h")
set(_lib "xcb-keysyms")
elseif("${_comp}" STREQUAL "RANDR")
set(_header "xcb/randr.h")
set(_lib "xcb-randr")
elseif("${_comp}" STREQUAL "RENDER")
set(_header "xcb/render.h")
set(_lib "xcb-render")
elseif("${_comp}" STREQUAL "RENDERUTIL")
set(_header "xcb/xcb_renderutil.h")
set(_lib "xcb-render-util")
elseif("${_comp}" STREQUAL "SHAPE")
set(_header "xcb/shape.h")
set(_lib "xcb-shape")
elseif("${_comp}" STREQUAL "SHM")
set(_header "xcb/shm.h")
set(_lib "xcb-shm")
elseif("${_comp}" STREQUAL "SYNC")
set(_header "xcb/sync.h")
set(_lib "xcb-sync")
elseif("${_comp}" STREQUAL "UTIL")
set(_header "xcb/xcb_util.h")
set(_lib "xcb-util")
elseif("${_comp}" STREQUAL "XFIXES")
set(_header "xcb/xfixes.h")
set(_lib "xcb-xfixes")
elseif("${_comp}" STREQUAL "XTEST")
set(_header "xcb/xtest.h")
set(_lib "xcb-xtest")
elseif("${_comp}" STREQUAL "XV")
set(_header "xcb/xv.h")
set(_lib "xcb-xv")
endif()
find_path(XCB_${_comp}_INCLUDE_DIR NAMES ${_header} HINTS ${PKG_XCB_INCLUDE_DIRS})
find_library(XCB_${_comp}_LIBRARY NAMES ${_lib} HINTS ${PKG_XCB_LIBRARY_DIRS})
if(XCB_${_comp}_INCLUDE_DIR AND XCB_${_comp}_LIBRARY)
list(APPEND XCB_INCLUDE_DIRS ${XCB_${_comp}_INCLUDE_DIR})
list(APPEND XCB_LIBRARIES ${XCB_${_comp}_LIBRARY})
if (NOT XCB_FIND_QUIETLY)
message(STATUS "XCB[${_comp}]: Found component ${_comp}")
endif()
endif()
if(XCB_FIND_REQUIRED_${_comp})
list(APPEND requiredComponents XCB_${_comp}_FOUND)
endif()
find_package_handle_standard_args(XCB_${_comp} DEFAULT_MSG XCB_${_comp}_LIBRARY XCB_${_comp}_INCLUDE_DIR)
mark_as_advanced(XCB_${_comp}_LIBRARY XCB_${_comp}_INCLUDE_DIR)
# compatibility for old variable naming
set(XCB_${_comp}_INCLUDE_DIRS ${XCB_${_comp}_INCLUDE_DIR})
set(XCB_${_comp}_LIBRARIES ${XCB_${_comp}_LIBRARY})
endmacro()
IF (NOT WIN32)
include(FindPackageHandleStandardArgs)
# Use pkg-config to get the directories and then use these values
# in the FIND_PATH() and FIND_LIBRARY() calls
find_package(PkgConfig)
pkg_check_modules(PKG_XCB QUIET ${pkgConfigModules})
set(XCB_DEFINITIONS ${PKG_XCB_CFLAGS})
foreach(comp ${comps})
_xcb_handle_component(${comp})
endforeach()
if(XCB_INCLUDE_DIRS)
list(REMOVE_DUPLICATES XCB_INCLUDE_DIRS)
endif()
find_package_handle_standard_args(XCB DEFAULT_MSG XCB_LIBRARIES XCB_INCLUDE_DIRS ${requiredComponents})
# compatibility for old variable naming
set(XCB_INCLUDE_DIR ${XCB_INCLUDE_DIRS})
ENDIF (NOT WIN32)

View File

@ -71,13 +71,13 @@ function(lxqt_translate_desktop _RESULT)
set(_pattern "'\\[.*]\\s*='")
if (_translations)
add_custom_command(OUTPUT ${_outFile}
COMMAND grep -v "'#TRANSLATIONS_DIR='" ${_inFile} > ${_outFile}
COMMAND grep -h ${_pattern} ${_translations} >> ${_outFile}
COMMAND grep -v -a "'#TRANSLATIONS_DIR='" ${_inFile} > ${_outFile}
COMMAND grep -h -a ${_pattern} ${_translations} >> ${_outFile}
COMMENT "Generating ${_fileName}${_fileExt}"
)
else()
add_custom_command(OUTPUT ${_outFile}
COMMAND grep -v "'#TRANSLATIONS_DIR='" ${_inFile} > ${_outFile}
COMMAND grep -v -a "'#TRANSLATIONS_DIR='" ${_inFile} > ${_outFile}
COMMENT "Generating ${_fileName}${_fileExt}"
)
endif()
@ -93,7 +93,7 @@ function(lxqt_translate_desktop _RESULT)
file(WRITE ${_txFile}
"[ -f ${_inFile} ] || exit 0\n"
"echo '[lxde-qt.${_fileName}_${_fileType}]'\n"
"echo '[lxqt.${_fileName}_${_fileType}]'\n"
"echo 'type = DESKTOP'\n"
"echo 'source_lang = en'\n"
"echo 'source_file = ${_tx_inFile}'\n"

View File

@ -27,18 +27,18 @@
<p>
ScreenGrab is a crossplatform application designed to quickly get screenshots.
ScreenGrab is based on the Qt Framework, which allows the program to be used in
Microsoft Windows and GNU/Linux environments.
GNU/Linux and Microsoft Windows environments.
</p>
<p>
Main features:
</p>
<ul>
<li>Supports Windows & Linux</li>
<li>Supports Linux & Windows</li>
<li>Get desktop screenshots</li>
<li>Get active window screenshots</li>
<li>Get screenshots of selected desktop areas</li>
<li>Copy screenshots into the clipboard</li>
<li>Save your image files in PNG, JPEG or BMP format</li>
<li>Save your image files in PNG or JPEG format</li>
<li>Ability to view and edit screenshots in an external editor</li>
<li>Ability to upload screenshots to MediaCrush and imgur</li>
<li>Ability to set delay before getting screenshots
@ -84,7 +84,7 @@ All management of the program can be carried out through the buttons in the main
<li><b>Quit</b> [Ctrl+Q] -- Exit ScreenGrab</li>
</ul>
<p>
These buttons can be accessed via right-click on the ScreenGrab icon in the systemtray menu as well.
These buttons can be accessed via right-click on the ScreenGrab icon in the system tray menu as well.
</p>
<p>
Additional controls, located in main window.
@ -101,7 +101,7 @@ or active window]. </li>
<li><b>Default directory</b> -- Default directory to save screenshots</li>
<li><b>Default filename</b> -- Default name of the saved file</li>
<li><b>Format</b> -- Default saving image format (you can select other formats)</li>
<li><b>No window decoration</b> -- Grab a screenshot of the active window without window decorations (only for linux version).</li>
<li><b>No window decoration</b> -- Grab a screenshot of the active window without window decorations (only for Linux version).</li>
</ul>
<p>
<b><u>Advanced settings:</u></b>
@ -178,12 +178,12 @@ when exiting ScreenGrab (and restore it at next run)</li>
<li><b>Tray messages</b> -- Mode of displaying tray messages on grab|save events. Can be "none"
or "if hidden" or "always"</li>
<li><b>Time to display tray messages</b> -- Time within a specific notification is displayed </li>
<li><b>Close in tray</b> -- Minimize the main window into the systemtray
<li><b>Close in tray</b> -- Minimize the main window into the system tray
by click on the close window button.</li>
</ul>
<p>
<u><b>Shortcut Settings:</u></b>
<u><b>Shortcut Settings:</b></u>
</p>
<p>
On the tab "Shortcuts" in the options window you can set the keyboard shortcuts, which allows you to access the application functions easily. There are two kinds of key combinations used in ScreenGrab - local and global.
@ -195,7 +195,7 @@ by click on the close window button.</li>
Global shortcuts can be used the get a new screenshot when you have opened other application windows.
</p>
<p>
<u><b>Command line parameters:</u></b>
<u><b>Command line parameters:</b></u>
</p>
<ul>
<li><b>--fullscreen</b> -- Set the fullscreen mode [default].</li>
@ -231,8 +231,8 @@ by click on the close window button.</li>
<strong>Translators:</strong>
</p>
<ul>
<li><strong>Marcio Moraes</strong> -- Brazilian Portuguese translation</strong> </li>
<li><strong>Gennadi Motsyo</strong> -- Ukrainian translation</strong> </li>
<li><strong>Marcio Moraes</strong> -- Brazilian Portuguese translation</li>
<li><strong>Gennadi Motsyo</strong> -- Ukrainian translation</li>
</ul>
<p>
<strong>Beta-testers:</strong>
@ -415,9 +415,9 @@ And all those who use ScreenGrab :)
<li>added saving options into INI-file</li>
<li>added i18n support and Russian localisation</li>
<li>some fixes and changes in code</li>
<li>now available as installer (Windows) and deb packages (ubuntu 9.04)</li>
<li>now available as installer (Windows) and deb packages (Ubuntu 9.04)</li>
</ul>
<p>x
<p>
<strong>Version 0.1:</strong>
</p>
<ul>

View File

@ -38,8 +38,7 @@ Microsoft Windows e GNU/Linux.
<li>Obtém captura de tela da janela ativa</li>
<li>Obtém captura de tela de uma região do desktop</li>
<li>Copia a captura de tela para a área de transferência</li>
<li>Salva seus arquivos de imagens no formato PNG
ou JPEG ou BMP</li>
<li>Salva seus arquivos de imagens no formato PNG ou JPEG</li>
<li>Ability to view and edit screenshots in an external editor</li>
<li>Ability to upload screenshots on several image hostings (mediacru.sh, imgur.com)</li>
<li>Habilidade em definir atraso ao obter as capturas de telas

23
screengrab.conf Normal file
View File

@ -0,0 +1,23 @@
[Base]
CopyFilenameToClipboard=0
autoSave=false
autoSaveFirst=false
defFilename=screen
defImgFormat=jpg
defScreenshotType=FullScreen
delay=0
imageQuality=80
[Display]
showTrayIcon=true
timeTrayMessages=5
trayMessages=1
windowHeight=533
windowWidth=700
zoomAroundMouse=false
[System]
AllowCopies=true
closeInTray=false
enbaleExternalView=true
fitInside=true

View File

@ -1,5 +1,3 @@
cmake_minimum_required(VERSION 2.8.11)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
include_directories(${Qt5Widgets_INCLUDE_DIRS})

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "src/core/config.h"
@ -35,8 +33,8 @@
#define KEY_SAVEDIR "defDir"
#define KEY_SAVENAME "defFilename"
#define KEY_SAVEFORMAT "defImgFormat"
#define KEY_DELAY_DEF "defDelay"
#define KEY_DELAY "delay"
#define KEY_SCREENSHOT_TYPE_DEF "defScreenshotType"
#define KEY_IMG_QUALITY "imageQuality"
#define KEY_FILENAMEDATE "insDateTimeInFilename"
#define KEY_DATETIME_TPL "templateDateTime"
@ -53,35 +51,74 @@
#define KEY_ZOOMBOX "zoomAroundMouse"
#define KEY_TIME_NOTIFY "timeTrayMessages"
#define KEY_ALLOW_COPIES "AllowCopies"
#define KEY_TYPE_SCREEN "typeScreenDefault"
#define KEY_ENABLE_EXT_VIEWER "enbaleExternalView"
#define KEY_NODECOR "noDecorations"
#define KEY_INCLUDE_CURSOR "includeCursor"
#define KEY_FIT_INSIDE "fitInside"
#define KEY_LAST_SELECTION "lastSelection"
static const QLatin1String FullScreen("FullScreen");
static const QLatin1String Window("Window");
static const QLatin1String Area("Area");
static const QLatin1String PreviousSelection("PreviousSelection");
static QString screenshotTypeToString(int v);
static int screenshotTypeFromString(const QString& str);
static QString screenshotTypeToString(int v)
{
QString r;
switch(v) {
case Core::FullScreen:
r = FullScreen;
break;
case Core::Window:
r = Window;
break;
case Core::Area:
r = Area;
break;
case Core::PreviousSelection:
r = PreviousSelection;
break;
default:
r = FullScreen;
}
return r;
}
static int screenshotTypeFromString(const QString& str)
{
int r;
if (str == FullScreen)
r = Core::FullScreen;
else if (str == Window)
r = Core::Window;
else if (str == Area)
r = Core::Area;
else if (str == PreviousSelection)
r = Core::PreviousSelection;
else
r = Core::FullScreen; // Default
return r;
}
const static QStringList _imageFormats = {"png", "jpg"};
Config* Config::ptrInstance = 0;
// constructor
Config::Config()
{
_settings = new QSettings(getConfigFile(), QSettings::IniFormat);
_settings = new Settings("screengrab", "screengrab");
_shortcuts = new ShortcutManager(_settings);
// check existing config file
if (!QFile::exists(getConfigFile()))
{
// creating conf file from set defaults
QFile cf(getConfigFile());
if (cf.open(QIODevice::WriteOnly))
{
cf.close();
}
setDefaultSettings();
saveSettings();
}
_imageFormats << "png" << "jpg" << "bmp";
_settings->setIniCodec("UTF-8");
_scrNum = 0;
}
@ -118,11 +155,6 @@ void Config::killInstance()
}
}
QString Config::getConfigFile()
{
return getConfigDir() + QDir::separator() + CONFIG_FILE_NAME;
}
QString Config::getConfigDir()
{
QString dir = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation);
@ -183,6 +215,16 @@ void Config::setEnableExtView(bool val)
setValue(KEY_ENABLE_EXT_VIEWER, val);
}
bool Config::getIncludeCursor()
{
return value(KEY_INCLUDE_CURSOR).toBool();
}
void Config::setIncludeCursor(bool val)
{
setValue(KEY_INCLUDE_CURSOR, val);
}
QString Config::getSaveDir()
{
return value(KEY_SAVEDIR).toString();
@ -213,16 +255,6 @@ void Config::setSaveFormat(QString format)
setValue(KEY_SAVEFORMAT, format);
}
quint8 Config::getDefDelay()
{
return value(KEY_DELAY_DEF).toInt();
}
void Config::setDefDelay(quint8 sec)
{
setValue(KEY_DELAY_DEF, sec);
}
quint8 Config::getDelay()
{
return value(KEY_DELAY).toInt();
@ -233,6 +265,16 @@ void Config::setDelay(quint8 sec)
setValue(KEY_DELAY, sec);
}
int Config::getDefScreenshotType()
{
return (value(QLatin1String(KEY_SCREENSHOT_TYPE_DEF)).toInt());
}
void Config::setDefScreenshotType(const int type)
{
setValue(QLatin1String(KEY_SCREENSHOT_TYPE_DEF), type);
}
quint8 Config::getAutoCopyFilenameOnSaving()
{
return value(KEY_FILENAME_TO_CLB).toInt();
@ -274,16 +316,6 @@ void Config::setCloseInTray(bool val)
setValue(KEY_CLOSE_INTRAY, val);
}
int Config::getTypeScreen()
{
return value(KEY_TYPE_SCREEN).toInt();
}
void Config::setTypeScreen(quint8 type)
{
setValue(KEY_TYPE_SCREEN, type);
}
quint8 Config::getTimeTrayMess()
{
return value(KEY_TIME_NOTIFY).toInt();
@ -386,6 +418,26 @@ void Config::setNoDecoration(bool val)
setValue(KEY_NODECOR, val);
}
bool Config::getFitInside()
{
return value(KEY_FIT_INSIDE).toBool();
}
void Config::setFitInside(bool val)
{
setValue(KEY_FIT_INSIDE, val);
}
QRect Config::getLastSelection()
{
return value(KEY_LAST_SELECTION).toRect();
}
void Config::setLastSelection(QRect rect)
{
setValue(KEY_LAST_SELECTION, rect);
}
void Config::saveWndSize()
{
// saving size
@ -402,7 +454,8 @@ void Config::loadSettings()
setSaveDir(_settings->value(KEY_SAVEDIR, getDirNameDefault()).toString() );
setSaveFileName(_settings->value(KEY_SAVENAME,DEF_SAVE_NAME).toString());
setSaveFormat(_settings->value(KEY_SAVEFORMAT, DEF_SAVE_FORMAT).toString());
setDefDelay(_settings->value(KEY_DELAY, DEF_DELAY).toInt());
setDelay(_settings->value(KEY_DELAY, DEF_DELAY).toInt());
setDefScreenshotType(screenshotTypeFromString(_settings->value(QLatin1String(KEY_SCREENSHOT_TYPE_DEF)).toString()));
setAutoCopyFilenameOnSaving(_settings->value(KEY_FILENAME_TO_CLB, DEF_FILENAME_TO_CLB).toInt());
setDateTimeInFilename(_settings->value(KEY_FILENAMEDATE, DEF_DATETIME_FILENAME).toBool());
setDateTimeTpl(_settings->value(KEY_DATETIME_TPL, DEF_DATETIME_TPL).toString());
@ -410,12 +463,14 @@ void Config::loadSettings()
setAutoSaveFirst(_settings->value(KEY_AUTOSAVE_FIRST, DEF_AUTO_SAVE_FIRST).toBool());
setNoDecoration(_settings->value(KEY_NODECOR, DEF_X11_NODECOR).toBool());
setImageQuality(_settings->value(KEY_IMG_QUALITY, DEF_IMG_QUALITY).toInt());
setIncludeCursor(_settings->value(KEY_INCLUDE_CURSOR, DEF_INCLUDE_CURSOR).toBool());
_settings->endGroup();
_settings->beginGroup("Display");
setTrayMessages(_settings->value(KEY_TRAYMESSAGES, DEF_TRAY_MESS_TYPE).toInt());
setTimeTrayMess(_settings->value(KEY_TIME_NOTIFY, DEF_TIME_TRAY_MESS).toInt( ));
setZoomAroundMouse(_settings->value(KEY_ZOOMBOX, DEF_ZOOM_AROUND_MOUSE).toBool());
setLastSelection(_settings->value(KEY_LAST_SELECTION).toRect());
// TODO - make set windows size without hardcode values
setRestoredWndSize(_settings->value(KEY_WND_WIDTH, DEF_WND_WIDTH).toInt(),
_settings->value(KEY_WND_HEIGHT, DEF_WND_HEIGHT).toInt());
@ -426,33 +481,29 @@ void Config::loadSettings()
setCloseInTray(_settings->value(KEY_CLOSE_INTRAY, DEF_CLOSE_IN_TRAY).toBool());
setAllowMultipleInstance(_settings->value(KEY_ALLOW_COPIES, DEF_ALLOW_COPIES).toBool());
setEnableExtView(_settings->value(KEY_ENABLE_EXT_VIEWER, DEF_ENABLE_EXT_VIEWER).toBool());
setFitInside(_settings->value(KEY_FIT_INSIDE, DEF_FIT_INSIDE).toBool());
_settings->endGroup();
setDelay(getDefDelay());
_shortcuts->loadSettings();
}
void Config::saveSettings()
{
{ // save settings except for those on the main window
_settings->beginGroup("Base");
_settings->setValue(KEY_SAVEDIR, getSaveDir());
_settings->setValue(KEY_SAVENAME, getSaveFileName());
_settings->setValue(KEY_SAVEFORMAT, getSaveFormat());
_settings->setValue(KEY_DELAY, getDefDelay());
_settings->setValue(KEY_FILENAME_TO_CLB, getAutoCopyFilenameOnSaving());
_settings->setValue(KEY_FILENAMEDATE, getDateTimeInFilename());
_settings->setValue(KEY_DATETIME_TPL, getDateTimeTpl());
_settings->setValue(KEY_AUTOSAVE, getAutoSave());
_settings->setValue(KEY_AUTOSAVE_FIRST, getAutoSaveFirst());
_settings->setValue(KEY_IMG_QUALITY, getImageQuality());
_settings->setValue(KEY_NODECOR, getNoDecoration());
_settings->endGroup();
_settings->beginGroup("Display");
_settings->setValue(KEY_TRAYMESSAGES, getTrayMessages());
_settings->setValue(KEY_TIME_NOTIFY, getTimeTrayMess());
_settings->setValue(KEY_ZOOMBOX, getZoomAroundMouse());
_settings->setValue(KEY_SHOW_TRAY, getShowTrayIcon());
_settings->endGroup();
saveWndSize();
@ -461,6 +512,7 @@ void Config::saveSettings()
_settings->setValue(KEY_CLOSE_INTRAY, getCloseInTray());
_settings->setValue(KEY_ALLOW_COPIES, getAllowMultipleInstance());
_settings->setValue(KEY_ENABLE_EXT_VIEWER, getEnableExtView());
_settings->setValue(KEY_FIT_INSIDE, getFitInside());
_settings->endGroup();
_shortcuts->saveSettings();
@ -468,13 +520,27 @@ void Config::saveSettings()
resetScrNum();
}
void Config::saveScreenshotSettings()
{ // save the main window settings
_settings->beginGroup("Base");
_settings->setValue(QLatin1String(KEY_SCREENSHOT_TYPE_DEF), screenshotTypeToString(getDefScreenshotType()));
_settings->setValue(KEY_NODECOR, getNoDecoration());
_settings->setValue(KEY_INCLUDE_CURSOR, getIncludeCursor());
_settings->setValue(KEY_DELAY, getDelay());
_settings->endGroup();
_settings->beginGroup("Display");
_settings->setValue(KEY_ZOOMBOX, getZoomAroundMouse());
_settings->setValue(KEY_LAST_SELECTION, getLastSelection());
_settings->endGroup();
}
// set default values
void Config::setDefaultSettings()
{
setSaveDir(getDirNameDefault());
setSaveFileName(DEF_SAVE_NAME);
setSaveFormat(DEF_SAVE_FORMAT);
setDefDelay(DEF_DELAY);
setImageQuality(DEF_IMG_QUALITY);
setDateTimeInFilename(DEF_DATETIME_FILENAME);
setDateTimeTpl(DEF_DATETIME_TPL);
@ -482,7 +548,7 @@ void Config::setDefaultSettings()
setAutoSave(DEF_AUTO_SAVE);
setAutoSaveFirst(DEF_AUTO_SAVE_FIRST);
setTrayMessages(DEF_TRAY_MESS_TYPE);
setZoomAroundMouse(DEF_ZOOM_AROUND_MOUSE);
setIncludeCursor(DEF_INCLUDE_CURSOR);
setCloseInTray(DEF_CLOSE_IN_TRAY);
setTimeTrayMess(DEF_TIME_TRAY_MESS);
setAllowMultipleInstance(DEF_ALLOW_COPIES);
@ -490,12 +556,10 @@ void Config::setDefaultSettings()
// setRestoredWndSize(DEF_WND_WIDTH, DEF_WND_HEIGHT);
setShowTrayIcon(DEF_SHOW_TRAY);
setEnableExtView(DEF_ENABLE_EXT_VIEWER);
setFitInside(DEF_FIT_INSIDE);
_shortcuts->setDefaultSettings();
setNoDecoration(DEF_X11_NODECOR);
setDelay(DEF_DELAY);
quint8 countModules = Core::instance()->modules()->count();
for (int i = 0; i < countModules; ++i)
Core::instance()->modules()->getModule(i)->defaultSettings();
@ -507,6 +571,10 @@ QString Config::getDirNameDefault()
return QDir::homePath()+QDir::separator();
}
QStringList Config::getFormatIDs() const
{
return _imageFormats;
}
// get id of default save format
int Config::getDefaultFormatID()
{

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef CONFIG_H
@ -50,7 +48,23 @@ const bool DEF_AUTO_SAVE = false;
const bool DEF_AUTO_SAVE_FIRST = false;
const QString DEF_DATETIME_TPL = "yyyy-MM-dd-hh-mm-ss";
const bool DEF_SHOW_TRAY = true;
const bool DEF_ENABLE_EXT_VIEWER = 1;
const bool DEF_ENABLE_EXT_VIEWER = true;
const bool DEF_INCLUDE_CURSOR = false;
const bool DEF_FIT_INSIDE = true;
class Settings : public QSettings // prevents redundant writings
{
Q_OBJECT
public:
Settings(const QString &organization, const QString &application = QString(), QObject *parent = nullptr)
: QSettings (organization, application, parent) {}
void setValue(const QString &key, const QVariant &v) {
if (value(key) == v)
return;
QSettings::setValue(key, v);
}
};
// class worker with conf data
class Config
@ -99,12 +113,6 @@ public:
static void killInstance();
~Config();
/**
* @brief Gets the configuration file for screengrab. It's
* inside the folder returned by getConfigDir().
*/
static QString getConfigFile();
/**
* @brief Gets the directory where to save the configuration files.
* Does not end with '/'.
@ -121,6 +129,11 @@ public:
*/
void saveSettings();
/**
* Save screenshot settings to conf file
*/
void saveScreenshotSettings();
/**
* Reset configuration data from default values
*/
@ -138,13 +151,13 @@ public:
QString getSaveFormat();
void setSaveFormat(QString format);
// default delay
quint8 getDefDelay();
void setDefDelay(quint8 sec);
quint8 getDelay();
void setDelay(quint8 sec);
// configured default screenshot type
int getDefScreenshotType();
void setDefScreenshotType(const int type);
quint8 getAutoCopyFilenameOnSaving();
void setAutoCopyFilenameOnSaving(quint8 val);
@ -160,10 +173,6 @@ public:
bool getCloseInTray();
void setCloseInTray(bool val);
// type of screen
int getTypeScreen();
void setTypeScreen(quint8 type);
// tume of tray messages
quint8 getTimeTrayMess();
void setTimeTrayMess(int src);
@ -188,7 +197,8 @@ public:
void setRestoredWndSize(int w, int h);
void saveWndSize();
// get default image save format
// get image save format(s)
QStringList getFormatIDs() const;
int getDefaultFormatID();
QString getDirNameDefault();
@ -219,6 +229,15 @@ public:
bool getEnableExtView();
void setEnableExtView(bool val);
bool getIncludeCursor();
void setIncludeCursor(bool val);
bool getFitInside();
void setFitInside(bool val);
QRect getLastSelection();
void setLastSelection(QRect rect);
static QString getSysLang();
ShortcutManager* shortcuts();
@ -246,13 +265,11 @@ private:
*/
void setValue(const QString& key, QVariant val);
QSettings *_settings;
Settings *_settings;
QHash<QString, QVariant> _confData;
ShortcutManager *_shortcuts;
QVector<QString> _imageFormats;
int _scrNum; // screen num in session
QDateTime _dateLastSaving;
};

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include <QMutex>
@ -31,8 +29,18 @@
#include <QDebug>
#include "core/core.h"
#include <KF5/KWindowSystem/KWindowSystem>
#include <xcb/xfixes.h>
#ifdef X11_XCB_FOUND
#include "x11utils.h"
#endif
#include "core/core.h"
#ifdef SG_DBUS_NOTIFY
#include "dbusnotifier.h"
#endif
#ifdef SG_EXT_UPLOADS
#include "modules/uploader/moduleuploader.h"
@ -46,6 +54,7 @@ Core::Core()
_conf = Config::instance();
_conf->loadSettings();
_lastSelectedArea = _conf->getLastSelection();
_pixelMap = new QPixmap;
_selector = 0;
@ -136,6 +145,9 @@ void Core::sleep(int msec)
void Core::coreQuit()
{
_conf->setLastSelection(_lastSelectedArea);
_conf->saveScreenshotSettings();
_conf->setRestoredWndSize(_wnd->width(), _wnd->height());
_conf->saveWndSize();
@ -175,33 +187,34 @@ void Core::screenShot(bool first)
if (_firstScreen)
_conf->updateLastSaveDate();
switch(_conf->getTypeScreen())
switch(_conf->getDefScreenshotType())
{
case 0:
case Core::FullScreen:
{
const QList<QScreen *> screens = qApp->screens();
const QDesktopWidget *desktop = QApplication::desktop();
const int screenNum = desktop->screenNumber(QCursor::pos());
*_pixelMap = screens[screenNum]->grabWindow(desktop->winId());
grabCursor(0, 0);
checkAutoSave(first);
_wnd->updatePixmap(_pixelMap);
break;
}
case 1:
case Core::Window:
{
getActiveWindow();
checkAutoSave(first);
_wnd->updatePixmap(_pixelMap);
break;
}
case 2:
case Core::Area:
{
_selector = new RegionSelect(_conf);
connect(_selector, &RegionSelect::processDone, this, &Core::regionGrabbed);
break;
}
case 3:
case Core::PreviousSelection:
{
_selector = new RegionSelect(_conf, _lastSelectedArea);
connect(_selector, &RegionSelect::processDone, this, &Core::regionGrabbed);
@ -212,6 +225,8 @@ void Core::screenShot(bool first)
break;
}
_wnd->updatePixmap(_pixelMap);
_wnd->restoreFromShot();
}
@ -229,17 +244,9 @@ void Core::checkAutoSave(bool first)
else
autoSave();
}
else
{
if (!first)
{
StateNotifyMessage message(tr("New screen"), tr("New screen is getted!"));
_wnd->showTrayMessage(message.header, message.message);
}
}
}
void Core::getActiveWindow()
void Core::getActiveWindow() // called only with window screenshots
{
const QList<QScreen *> screens = qApp->screens();
const QDesktopWidget *desktop = QApplication::desktop();
@ -247,10 +254,34 @@ void Core::getActiveWindow()
WId wnd = KWindowSystem::activeWindow();
if (!wnd)
// this window screenshot will be invalid
// if there's no active window or the active window is ours
bool invalid(!wnd || !KWindowSystem::hasWId(wnd) || (_wnd && _wnd->winId() == wnd));
if (!invalid)
{ // or if it isn't on the current desktop
KWindowInfo info(wnd, NET::WMDesktop);
invalid = info.valid() && !info.isOnDesktop(KWindowSystem::currentDesktop());
if (!invalid)
{ // or if it is a desktop or panel/dock
info = KWindowInfo(wnd, NET::WMWindowType);
QFlags<NET::WindowTypeMask> flags;
flags |= NET::DesktopMask;
flags |= NET::DockMask;
invalid = info.valid() && NET::typeMatchesMask(info.windowType(NET::AllTypesMask), flags);
}
}
// also invalid if the window is shaded/invisible
KWindowInfo info(wnd, NET::XAWMState | NET::WMFrameExtents);
if (!invalid && info.mappingState() != NET::Visible)
invalid = true;
// if this is an invalid screenshot, take a fullscreen shot instead
if (invalid)
{
qWarning() << "Could not take a window screenshot.";
*_pixelMap = screens[screenNum]->grabWindow(desktop->winId());
exit(1);
return;
}
// no decorations option is selected
@ -260,17 +291,31 @@ void Core::getActiveWindow()
return;
}
KWindowInfo info(wnd, NET::XAWMState | NET::WMFrameExtents);
if (info.mappingState() != NET::Visible)
qWarning() << "Window not visible";
QRect geometry = info.frameGeometry();
*_pixelMap = screens[screenNum]->grabWindow(QApplication::desktop()->winId(),
geometry.x(),
geometry.y(),
geometry.width(),
geometry.height());
grabCursor(geometry.x(), geometry.y());
}
void Core::grabCursor(int offsetX, int offsetY)
{
#ifdef XCB_XFOXES_FOUND
if (_conf->getIncludeCursor())
X11Utils::compositePointer(offsetX, offsetY, _pixelMap);
#else
Q_UNUSED(offsetx);
Q_UNUSED(offsety);
#endif
}
void Core::sendSystemNotify(const StateNotifyMessage& /*notify*/)
{
qDebug() << "Send system notification";
}
QString Core::getSaveFilePath(QString format)
@ -279,14 +324,16 @@ QString Core::getSaveFilePath(QString format)
do
{
QDir dir(_conf->getSaveDir());
const QString filePath = dir.filePath(_conf->getSaveFileName());
if (_conf->getDateTimeInFilename())
initPath = _conf->getSaveDir() + _conf->getSaveFileName() + "-" + getDateTimeFileName() + "." + format;
initPath = filePath + "-" + getDateTimeFileName() + "." + format;
else
{
if (_conf->getScrNum() != 0)
initPath = _conf->getSaveDir() + _conf->getSaveFileName() + _conf->getScrNumStr() + "." + format;
initPath = filePath + _conf->getScrNumStr() + "." + format;
else
initPath = _conf->getSaveDir() + _conf->getSaveFileName() + "." + format;
initPath = filePath + "." + format;
}
} while (checkExsistFile(initPath));
@ -377,7 +424,7 @@ bool Core::writeScreen(QString& fileName, QString& format, bool tmpScreen)
message.message = message.message + copyFileNameToCliipboard(fileName);
_conf->updateLastSaveDate();
_wnd->showTrayMessage(message.header, message.message);
sendNotify(message);
}
else
qWarning() << "Error saving file " << fileName;
@ -410,11 +457,21 @@ QString Core::copyFileNameToCliipboard(QString file)
return retString;
}
void Core::sendNotify(const StateNotifyMessage &message)
{
#ifdef SG_DBUS_NOTIFY
DBusNotifier *notifier = new DBusNotifier();
notifier->displayNotify(message);
#else
_wnd->showTrayMessage(message.header, message.message);
#endif
}
void Core::copyScreen()
{
QApplication::clipboard()->setPixmap(*_pixelMap, QClipboard::Clipboard);
StateNotifyMessage message(tr("Copied"), tr("Screenshot is copied to clipboard"));
_wnd->showTrayMessage(message.header, message.message);
sendNotify(message);
}
void Core::openInExtViewer()
@ -477,7 +534,7 @@ void Core::processCmdLineOpts(const QStringList& arguments)
// Check commandline parameters and set screenshot type
for (int i=0; i < _screenTypeOpts.count(); ++i)
if (_cmdLine.isSet(_screenTypeOpts.at(i)))
_conf->setTypeScreen(i);
_conf->setDefScreenshotType(i);
#ifdef SG_EXT_UPLOADS
/// FIXMA - In module interface need add the mthod for geting module cmdLine options
@ -519,7 +576,7 @@ QPixmap* Core::getPixmap()
return _pixelMap;
}
QByteArray Core::getScreen()
QByteArray Core::getScreenData()
{
QByteArray bytes;
QBuffer buffer(&bytes);

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef SCREENGRAB_H
#define SCREENGRAB_H
@ -26,7 +24,6 @@
#include "config.h"
#include "regionselect.h"
#include "modulemanager.h"
#include "ui/mainwindow.h"
@ -74,6 +71,13 @@ public Q_SLOTS:
void autoSave();
public:
enum ScreenshotType {
FullScreen = 0,
Window,
Area,
PreviousSelection
};
static Core* instance();
~Core();
@ -84,7 +88,7 @@ public:
static QString getVersionPrintable();
QPixmap* getPixmap();
QByteArray getScreen();
QByteArray getScreenData();
void updatePixmap();
QString getTempFilename(const QString& format);
@ -115,9 +119,12 @@ private:
void checkAutoSave(bool first = false);
void getActiveWindow();
void grabCursor(int offsetX, int offsetY);
void sendSystemNotify(const StateNotifyMessage& notify);
bool checkExsistFile(QString path);
QString copyFileNameToCliipboard(QString file);
void sendNotify(const StateNotifyMessage& message);
QPixmap *_pixelMap; // pixel map
RegionSelect *_selector; // region grabber widget
QRect _lastSelectedArea;

106
src/core/dbusnotifier.cpp Normal file
View File

@ -0,0 +1,106 @@
/***************************************************************************
* Copyright (C) 2009 - 2013 by Artem 'DOOMer' Galichkin *
* doomer3d@gmail.com *
* *
* This program is free software; you can 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, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include <QDBusConnection>
#include <QDBusConnectionInterface>
#include <QDBusInterface>
#include <QDir>
#include <QTimer>
#include <QDebug>
#include "dbusnotifier.h"
#include "config.h"
#define SERVICE_FREEDESKTOP "org.freedesktop.Notifications"
#define PATH_FREEDESKTOP "/org/freedesktop/Notifications" ,"org.freedesktop.Notifications"
#define CACHE_DIR "notify-cache"
#define CACHE_PREV "preview.jpg"
DBusNotifier::DBusNotifier(QObject *parent) : QObject(parent)
{
_notifier = new QDBusInterface(SERVICE_FREEDESKTOP, PATH_FREEDESKTOP,
QDBusConnection::sessionBus(), this);
if (_notifier->lastError().type() != QDBusError::NoError) {
qWarning() << "Notify: Unable to create interface.";
return;
}
qWarning() << "Notify: DBus interfece created successfully.";
QDir dir(Config::getConfigDir());
if (!dir.exists(CACHE_DIR))
dir.mkdir(CACHE_DIR);
_previewPath = dir.absolutePath() + QDir::toNativeSeparators(QDir::separator()) + CACHE_PREV;
_appIconPath = QString(SG_ICONPATH);
_notifyDuration = Config::instance()->getTimeTrayMess() * 1000;
}
DBusNotifier::~DBusNotifier()
{
if (!_previewPath.isEmpty()) {
QDir dir(QDir::home());
dir.remove(_previewPath);
}
}
void DBusNotifier::displayNotify(const StateNotifyMessage &message)
{
QList<QVariant> n = prepareNotification(message);
if (!n.isEmpty()) {
QDBusReply<uint> reply = _notifier->callWithArgumentList(QDBus::Block,"Notify",n);
}
deleteLater();
}
QList<QVariant> DBusNotifier::prepareNotification(const StateNotifyMessage& message)
{
QList<QVariant> args;
args << "Screen Grab";
args << QVariant(QVariant::UInt); // id
// app-icon(path to icon on disk)
args << _appIconPath;
// summary (notification title)
args << message.header;
// message text
args << message.message;
// actions is none
args << QStringList();
// hints
args << QVariantMap();
// timeout
args << _notifyDuration;
return args;
}

View File

@ -13,41 +13,34 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADER_MEDIACRUSH_H
#define UPLOADER_MEDIACRUSH_H
#ifndef DBUSNOTIFIER_H
#define DBUSNOTIFIER_H
#include <uploader.h>
#include <QObject>
#include <QUrl>
#include "core.h"
class Uploader_MediaCrush : public Uploader
class QDBusInterface;
class DBusNotifier : public QObject
{
Q_OBJECT
public:
explicit Uploader_MediaCrush(const QString& format, QObject* parent = 0);
virtual ~Uploader_MediaCrush();
explicit DBusNotifier(QObject *parent = 0);
~DBusNotifier();
virtual void startUploading();
protected:
virtual QUrl apiUrl();
virtual void createData(bool inBase64 = false);
protected Q_SLOTS:
virtual void replyFinished(QNetworkReply* reply);
void displayNotify(const StateNotifyMessage& message);
private:
void setCurrentFormat(const QString& format);
QList<QVariant> prepareNotification(const StateNotifyMessage& message);
QByteArray _host;
QByteArray _currentFormat;
void UpdateUploadedStrList();
QDBusInterface *_notifier;
int _notifyDuration;
QString _appIconPath;
QString _previewPath;
};
#endif // UPLOADER_MEDIACRUSH_H
#endif // DBUSNOTIFIER_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "singleapp.h"
@ -28,6 +26,10 @@ int main(int argc, char *argv[])
{
SingleApp scr(argc, argv, VERSION);
scr.setApplicationVersion(VERSION);
scr.setOrganizationName(QStringLiteral("lxqt"));
scr.setOrganizationDomain(QStringLiteral("https://lxqt.org"));
scr.setApplicationName(QStringLiteral("screengrab"));
scr.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
Core *ScreenGrab = Core::instance();
ScreenGrab->modules()->initModules();
ScreenGrab->processCmdLineOpts(scr.arguments());
@ -36,7 +38,7 @@ int main(int argc, char *argv[])
if (!ScreenGrab->config()->getAllowMultipleInstance() && scr.isRunning())
{
QString type = QString::number(ScreenGrab->config()->getTypeScreen());
QString type = QString::number(ScreenGrab->config()->getDefScreenshotType());
scr.sendMessage("screengrab --type=" + type);
return 0;
}

View File

@ -13,16 +13,14 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "modulemanager.h"
#ifdef SG_EXT_UPLOADS
#include "src/modules/uploader/moduleuploader.h"
#endif
// #ifdef SG_EXT_UPLOADS
// #include "src/modules/uploader/moduleuploader.h"
// #endif
#ifdef SG_EXT_EDIT
#include "src/modules/extedit/moduleextedit.h"
@ -37,10 +35,10 @@ ModuleManager::ModuleManager()
void ModuleManager::initModules()
{
#ifdef SG_EXT_UPLOADS
ModuleUploader *uploader = new ModuleUploader();
_modules->insert(MOD_UPLOADER , uploader);
#endif
//#ifdef SG_EXT_UPLOADS
// ModuleUploader *uploader = new ModuleUploader();
// _modules->insert(MOD_UPLOADER , uploader);
//#endif
#ifdef SG_EXT_EDIT
ModuleExtEdit *extedit = new ModuleExtEdit();
_modules->insert(MOD_EXT_EDIT.data(), extedit);

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef MODULEMANAGER_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "src/core/regionselect.h"
@ -34,6 +32,7 @@ RegionSelect::RegionSelect(Config *mainconf, QWidget *parent)
drawBackGround();
_processSelection = false;
_fittedSelection = false;
show();
@ -52,6 +51,7 @@ RegionSelect::RegionSelect(Config* mainconf, const QRect& lastRect, QWidget* par
drawBackGround();
_processSelection = false;
_fittedSelection = false;
show();
@ -97,7 +97,7 @@ void RegionSelect::paintEvent(QPaintEvent *event)
void RegionSelect::mousePressEvent(QMouseEvent* event)
{
if (event->button() != Qt::LeftButton)
if (event->button() != Qt::LeftButton && event->button() != Qt::RightButton)
return;
_selStartPoint = event->pos();
@ -108,6 +108,8 @@ void RegionSelect::mouseReleaseEvent(QMouseEvent* event)
{
_selEndPoint = event->pos();
_processSelection = false;
if (event->button() == Qt::RightButton && !_fittedSelection)
selectFit();
}
void RegionSelect::mouseDoubleClickEvent(QMouseEvent* event)
@ -124,6 +126,7 @@ void RegionSelect::mouseMoveEvent(QMouseEvent *event)
{
_selEndPoint = event->pos();
_selectRect = QRect(_selStartPoint, _selEndPoint).normalized();
_fittedSelection = false;
update();
}
}
@ -134,6 +137,8 @@ void RegionSelect::keyPressEvent(QKeyEvent* event)
if (event->key() == Qt::Key_Escape)
Q_EMIT processDone(false);
// canceled select screen area
else if (event->key() == Qt::Key_Space)
selectFit();
else if (event->key() == Qt::Key_Enter || event->key() == Qt::Key_Return)
Q_EMIT processDone(true);
else
@ -218,6 +223,153 @@ void RegionSelect::drawRectSelection(QPainter &painter)
}
}
void RegionSelect::selectFit()
{
if (_fittedSelection)
_currentFit = (_currentFit + 1) % _fitRectangles.size();
else
{
findFit();
_currentFit = 1;
_fittedSelection = true;
}
_selectRect = _fitRectangles[_currentFit];
update();
}
void RegionSelect::findFit()
{
QRect boundingRect;
int left = _selectRect.left();
int top = _selectRect.top();
int right = _selectRect.right();
int bottom = _selectRect.bottom();
_fitRectangles.clear();
_fitRectangles.push_back(_selectRect);
// Set the rectangle in which to search for borders
if (_conf->getFitInside())
boundingRect = _selectRect;
else
{
boundingRect.setLeft(qMax(left - fitRectExpand, 0));
boundingRect.setTop(qMax(top - fitRectExpand, 0));
boundingRect.setRight(qMin(right + fitRectExpand, _sizeDesktop.width() - 1));
boundingRect.setBottom(qMin(bottom + fitRectExpand, _sizeDesktop.height() - 1));
}
// Find borders inside boundingRect
fitBorder(boundingRect, LEFT, left);
fitBorder(boundingRect, TOP, top);
fitBorder(boundingRect, RIGHT, right);
fitBorder(boundingRect, BOTTOM, bottom);
const QRect fitRectangle = QRect(QPoint(left, top), QPoint(right, bottom));
_fitRectangles.push_back(fitRectangle);
}
void RegionSelect::fitBorder(const QRect &boundRect, enum Side side, int &border)
{
const QImage boundImage = _desktopPixmapClr.copy(boundRect).toImage();
// Set the relative coordinates of a box vertex and a vector along the box side
QPoint startPoint;
QPoint directionVector;
switch(side){
case TOP:
startPoint = QPoint(0,0);
directionVector = QPoint(1,0);
break;
case RIGHT:
startPoint = boundRect.topRight() - boundRect.topLeft();
directionVector = QPoint(0,1);
break;
case BOTTOM:
startPoint = boundRect.bottomRight() - boundRect.topLeft();
directionVector = QPoint(-1,0);
break;
case LEFT:
startPoint = boundRect.bottomLeft() - boundRect.topLeft();
directionVector = QPoint(0,-1);
break;
default:
return;
}
// Set vector normal to the box side
QPoint normalVector = QPoint(-directionVector.y(), directionVector.x());
// Setbox dimensions relative to the box side
int directionLength;
int normalDepth;
if (directionVector.x() == 0)
{
directionLength = boundRect.height() - 1;
normalDepth = boundRect.width() - 1;
}
else
{
directionLength = boundRect.width() - 1;
normalDepth = boundRect.height() - 1;
}
// Set how deep in the boundingRect to search for the border
if (_conf->getFitInside())
normalDepth = qMin(normalDepth/2 - 1, fitRectDepth);
else
normalDepth = qMin(normalDepth/2 - 1, fitRectDepth + fitRectExpand);
QVector<int> gradient = QVector<int>(normalDepth, 0);
QVector<int> preR = QVector<int>(normalDepth + 1, 0);
QVector<int> preG = QVector<int>(normalDepth + 1, 0);
QVector<int> preB = QVector<int>(normalDepth + 1, 0);
// Compute pixel Sobel normal gradients and add their absolute values parallel to the box side
for (int i = 1; i < directionLength; i++)
{
for (int j = 0; j <= normalDepth; j++)
{
QPoint point = startPoint + i*directionVector + j*normalVector;
QRgb pixelL = boundImage.pixel(point - directionVector);
QRgb pixelC = boundImage.pixel(point);
QRgb pixelR = boundImage.pixel(point + directionVector);
preR[j] = qRed(pixelL) + 2*qRed(pixelC) + qRed(pixelR);
preG[j] = qGreen(pixelL) + 2*qGreen(pixelC) + qGreen(pixelR);
preB[j] = qBlue(pixelL) + 2*qBlue(pixelC) + qBlue(pixelR);
}
for (int j = 1; j < normalDepth; j++)
gradient[j] += qAbs(preR[j-1] - preR[j+1]) + qAbs(preG[j-1] - preG[j+1]) + qAbs(preB[j-1] - preB[j+1]);
}
int maxGradient = 0;
int positionMax = 0;
for (int j = 1; j < normalDepth; j++)
{
// Scale pixel normal gradients and break if drop detected
gradient[j] = 1 + gradient[j]/(60*directionLength);
if (_conf->getFitInside() && gradient[j] <= maxGradient/2)
break;
// Keep searching for the maximum normal gradient
if (gradient[j] > maxGradient)
{
maxGradient = gradient[j];
positionMax = j;
}
}
// If all normal gradients small, keep the original user selected border
if (maxGradient <= 1)
return;
// Transform computed border back to original coordinates
startPoint = boundRect.topLeft() + startPoint + (positionMax + 1)*normalVector;
if (normalVector.x() == 0)
border = startPoint.y();
else
border = startPoint.x();
}
QPixmap RegionSelect::getSelection()
{
QPixmap sel;

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef REGIONSELECT_H
@ -32,6 +30,13 @@
#include <QSize>
#include <QPoint>
enum Side{
TOP,
RIGHT,
BOTTOM,
LEFT
};
// class RegionSelect : public QDialog
class RegionSelect : public QWidget
{
@ -61,7 +66,11 @@ private:
QPoint _selStartPoint;
QPoint _selEndPoint;
int _currentFit;
QVector<QRect> _fitRectangles;
bool _processSelection;
bool _fittedSelection;
QPixmap _desktopPixmapBkg;
QPixmap _desktopPixmapClr;
@ -69,9 +78,15 @@ private:
void sharedInit();
void drawBackGround();
void drawRectSelection(QPainter &painter);
void selectFit();
void findFit();
void fitBorder(const QRect &boundRect, enum Side side, int &border);
Config *_conf;
const int fitRectExpand = 20;
const int fitRectDepth = 50;
};
#endif // REGIONSELECT_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "shortcutmanager.h"

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef SHORTCUTMANAGER_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include <QTimer>

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef SINGLEAPP_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "about.h"
@ -33,22 +31,13 @@ AboutDialog::AboutDialog(QWidget *parent):
_ui->setupUi(this);
_ui->labAppName->setText(_ui->labAppName->text() + QString(" <b>") + qApp->applicationVersion() + QString("</b>"));
QString versionInfo;
versionInfo = tr("built on ");
versionInfo.append(__DATE__);
versionInfo.append(" ");
versionInfo.append(__TIME__);
_ui->labQtVer->setText(tr("using Qt ") + qVersion());
_ui->labVersion->setText(versionInfo);
QTabBar *tabs = new QTabBar;
_ui->frame->layout()->addWidget(tabs);
_ui->frame->layout()->addWidget(_ui->txtArea);
tabs->setFixedHeight(24);
tabs->insertTab(0, tr("About"));
tabs->insertTab(1, tr("Thanks"));
tabs->insertTab(2, tr("Help us"));
@ -110,14 +99,11 @@ QString AboutDialog::tabAbout()
str += "<b>ScreenGrab</b> ";
str += tr("is a crossplatform application for fast creating screenshots of your desktop.");
str += "<br><br>";
str += tr("It is a light and powerful application and has been written using the Qt framework, so that you are able to use in Windows and Linux.");
str += tr("It is a light and powerful application, written in Qt.");
str += "<br><br>";
str += tr("E-Mail")+" - ";
str += "<a href=mailto:doomer3d@gmail.com>doomer3d@gmail.com</a>";
str += "<br>";
str += tr("Web site")+" - ";
str += "<a href=http://screengrab.doomer.org>http://screengrab.doomer.org/</a>";
str += tr("Website")+" - ";
str += "<a href=\"https://github.com/lxqt/screengrab\">https://github.com/lxqt/screengrab</a>";
str += "<br><br>";
str += tr("Licensed under the ");
@ -142,13 +128,9 @@ QString AboutDialog::tabHelpUs()
str += "<li>" + tr("Report bugs and issues") + "</li>";
str += "</ul>";
str += tr("E-Mail");
str += "<br>";
str += "<a href=mailto:doomer3d@gmail.com>mailto:doomer3d@gmail.com</a>";
str += "<br><br>";
str += tr("Bug tracker");
str += "<br>";
str += "<a href=https://github.com/DOOMer/screengrab/issues>https://github.com/DOOMer/screengrab/issues/</a>";
str += "<a href=https://github.com/lxqt/screengrab/issues>https://github.com/lxqt/screengrab/issues/</a>";
return str;
}

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef ABOUT_H

View File

@ -52,7 +52,7 @@
<string/>
</property>
<property name="pixmap">
<pixmap resource="../../screengrab.qrc">:/res/img/logo.png</pixmap>
<pixmap resource="../../../screengrab.qrc">:/res/img/logo.png</pixmap>
</property>
</widget>
</item>
@ -160,8 +160,8 @@
</layout>
</widget>
<resources>
<include location="../../screengrab.qrc"/>
<include location="../../screengrab.qrc"/>
<include location="../../../screengrab.qrc"/>
<include location="../../../screengrab.qrc"/>
</resources>
<connections/>
</ui>

View File

@ -13,10 +13,8 @@
* GNU 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. *
***************************************************************************/
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include <QKeyEvent>
@ -41,22 +39,19 @@ ConfigDialog::ConfigDialog(QWidget *parent) :
_ui->setupUi(this);
conf = Config::instance();
connect(_ui->butSaveOpt, &QPushButton::clicked, this, &ConfigDialog::saveSettings);
connect(_ui->buttonBox->button(QDialogButtonBox::Save), &QPushButton::clicked, this, &ConfigDialog::saveSettings);
connect(_ui->buttonBrowse, &QPushButton::clicked, this, &ConfigDialog::selectDir);
connect(_ui->butRestoreOpt, &QPushButton::clicked, this, &ConfigDialog::restoreDefaults);
connect(_ui->buttonBox->button(QDialogButtonBox::RestoreDefaults), &QPushButton::clicked, this, &ConfigDialog::restoreDefaults);
connect(_ui->checkIncDate, &QCheckBox::toggled, this, &ConfigDialog::setVisibleDateTplEdit);
connect(_ui->keyWidget, &QKeySequenceWidget::keySequenceAccepted, this, &ConfigDialog::acceptShortcut);
connect(_ui->keyWidget, &QKeySequenceWidget::keyNotSupported, this, &ConfigDialog::keyNotSupported);
connect(_ui->checkAutoSave, &QCheckBox::toggled, this, &ConfigDialog::setVisibleAutoSaveFirst);
connect(_ui->butCancel, &QPushButton::clicked, this, &ConfigDialog::reject);
connect(_ui->buttonBox->button(QDialogButtonBox::Cancel), &QPushButton::clicked, this, &ConfigDialog::reject);
connect(_ui->treeKeys, &QTreeWidget::expanded, _ui->treeKeys, &QTreeWidget::clearSelection);
connect(_ui->treeKeys, &QTreeWidget::collapsed, this, &ConfigDialog::collapsTreeKeys);
connect(_ui->checkShowTray, &QCheckBox::toggled, this, &ConfigDialog::toggleCheckShowTray);
connect(_ui->editDateTmeTpl, &QLineEdit::textEdited, this, &ConfigDialog::editDateTmeTpl);
void (QSpinBox::*delayChange)(int) = &QSpinBox::valueChanged;
connect(_ui->defDelay, delayChange, this, &ConfigDialog::changeDefDelay);
void (QSpinBox::*timeToTray)(int) = &QSpinBox::valueChanged;
connect(_ui->timeTrayMess, timeToTray, this, &ConfigDialog::changeTimeTrayMess);
@ -75,13 +70,11 @@ ConfigDialog::ConfigDialog(QWidget *parent) :
connect(_ui->cbxFormat, formatChabge, this, &ConfigDialog::changeFormatType);
loadSettings();
changeDefDelay(conf->getDefDelay());
setVisibleDateTplEdit(conf->getDateTimeInFilename());
setVisibleAutoSaveFirst(conf->getAutoSave());
_ui->listWidget->setCurrentRow(0);
_ui->tabMain->setCurrentIndex(0);
editDateTmeTpl(conf->getDateTimeTpl());
@ -150,12 +143,9 @@ void ConfigDialog::loadSettings()
_ui->editDir->setText(conf->getSaveDir());
_ui->editFileName->setText(conf->getSaveFileName());
_ui->cbxFormat->addItem("png");
_ui->cbxFormat->addItem("jpg");
_ui->cbxFormat->addItem("bmp");
_ui->cbxFormat->addItems(conf->getFormatIDs());
_ui->cbxFormat->setCurrentIndex(conf->getDefaultFormatID());
_ui->defDelay->setValue(conf->getDefDelay());
_ui->checkIncDate->setChecked(conf->getDateTimeInFilename());
_ui->editDateTmeTpl->setText(conf->getDateTimeTpl());
_ui->cbxCopyFileName->setCurrentIndex(conf->getAutoCopyFilenameOnSaving());
@ -164,20 +154,19 @@ void ConfigDialog::loadSettings()
_ui->cbxTrayMsg->setCurrentIndex(conf->getTrayMessages());
changeTrayMsgType(_ui->cbxTrayMsg->currentIndex());
_ui->timeTrayMess->setValue(conf->getTimeTrayMess());
_ui->checkAutoSave->setChecked(conf->getAutoSave());;
_ui->checkAutoSaveFirst->setChecked(conf->getAutoSaveFirst());;
_ui->checkZommMouseArea->setChecked(conf->getZoomAroundMouse());
_ui->checkAutoSave->setChecked(conf->getAutoSave());
_ui->checkAutoSaveFirst->setChecked(conf->getAutoSaveFirst());
// integration tab
_ui->checkInTray->setChecked(conf->getCloseInTray());
_ui->checkAllowCopies->setChecked(conf->getAllowMultipleInstance());
_ui->checkNoDecorX11->setChecked(conf->getNoDecoration());
_ui->checkShowTray->setChecked(conf->getShowTrayIcon());
toggleCheckShowTray(conf->getShowTrayIcon());
_ui->slideImgQuality->setValue(conf->getImageQuality());
_ui->cbxEnableExtView->setChecked(conf->getEnableExtView());
_ui->checkFitInside->setChecked(conf->getFitInside());
}
@ -201,17 +190,9 @@ void ConfigDialog::setVisibleAutoSaveFirst(bool status)
void ConfigDialog::changeFormatType(int type)
{
if (type == 1)
{
_ui->slideImgQuality->setVisible(true);;
_ui->labImgQuality->setVisible(true);
_ui->labImgQualityCurrent->setVisible(true);;
}
_ui->groupQuality->setVisible(true);
else
{
_ui->slideImgQuality->setVisible(false);
_ui->labImgQuality->setVisible(false);
_ui->labImgQualityCurrent->setVisible(false);;
}
_ui->groupQuality->setVisible(false);
}
@ -253,7 +234,6 @@ void ConfigDialog::saveSettings()
conf->setSaveDir(_ui->editDir->text());
conf->setSaveFileName(_ui->editFileName->text());
conf->setSaveFormat(_ui->cbxFormat->currentText());
conf->setDefDelay(_ui->defDelay->value());
conf->setDateTimeInFilename(_ui->checkIncDate->isChecked());
conf->setDateTimeTpl(_ui->editDateTmeTpl->text());
conf->setAutoCopyFilenameOnSaving(_ui->cbxCopyFileName->currentIndex());
@ -261,13 +241,12 @@ void ConfigDialog::saveSettings()
conf->setAutoSaveFirst(_ui->checkAutoSaveFirst->isChecked());
conf->setTrayMessages(_ui->cbxTrayMsg->currentIndex());
conf->setCloseInTray(_ui->checkInTray->isChecked());
conf->setZoomAroundMouse(_ui->checkZommMouseArea->isChecked());
conf->setAllowMultipleInstance(_ui->checkAllowCopies->isChecked());
conf->setTimeTrayMess(_ui->timeTrayMess->value());
conf->setShowTrayIcon(_ui->checkShowTray->isChecked());
conf->setImageQuality(_ui->slideImgQuality->value());
conf->setEnableExtView(_ui->cbxEnableExtView->isChecked());
conf->setNoDecoration(_ui->checkNoDecorX11->isChecked());
conf->setFitInside(_ui->checkFitInside->isChecked());
// save shortcuts in shortcutmanager
int action = 0;
@ -294,7 +273,6 @@ void ConfigDialog::saveSettings()
// update values of front-end settings
conf->saveSettings();
conf->setDelay(conf->getDefDelay());
// call save method on modeule's configwidgets'
for (int i = 0; i < _moduleWidgetNames.count(); ++i)
@ -320,15 +298,12 @@ QString ConfigDialog::getFormat()
void ConfigDialog::selectDir()
{
QString *directory = new QString;
{
*directory = QFileDialog::getExistingDirectory(this, trUtf8("Select directory"),
_ui->editDir->text(), QFileDialog::ShowDirsOnly)+QDir::separator();
if (directory->toUtf8() != QDir::separator())
_ui->editDir->setText( *directory);
}
QString directory = QFileDialog::getExistingDirectory(this, trUtf8("Select directory"),
_ui->editDir->text(), QFileDialog::ShowDirsOnly);
delete directory;
if (!directory.isEmpty()) {
_ui->editDir->setText(QDir::toNativeSeparators(directory));
}
}
void ConfigDialog::restoreDefaults()
@ -349,12 +324,6 @@ void ConfigDialog::restoreDefaults()
}
}
void ConfigDialog::changeDefDelay(int val)
{
if (val == 0)
_ui->defDelay->setSpecialValueText(tr("None"));
}
void ConfigDialog::changeTimeTrayMess(int sec)
{
conf->setTimeTrayMess(sec);

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef CONFIGWIDGET_H
@ -64,7 +62,6 @@ private slots:
void setVisibleDateTplEdit(bool);
void changeTrayMsgType(int type);
void changeTimeTrayMess(int sec);
void changeDefDelay(int val);
void setVisibleAutoSaveFirst(bool status);
void changeFormatType(int type);
void changeImgQualituSlider(int pos);

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>554</width>
<height>278</height>
<width>770</width>
<height>335</height>
</rect>
</property>
<property name="minimumSize">
@ -57,9 +57,6 @@
<property name="textElideMode">
<enum>Qt::ElideNone</enum>
</property>
<property name="flow">
<enum>QListView::TopToBottom</enum>
</property>
<property name="isWrapping" stdset="0">
<bool>false</bool>
</property>
@ -106,45 +103,18 @@
</sizepolicy>
</property>
<property name="currentIndex">
<number>3</number>
<number>0</number>
</property>
<widget class="QWidget" name="page_6">
<layout class="QVBoxLayout" name="verticalLayout_6">
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QTabWidget" name="tabMain">
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="tabSaving">
<attribute name="title">
<string>Saving</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>4</number>
</property>
<property name="rightMargin">
<number>0</number>
<number>5</number>
</property>
<item>
<widget class="QLabel" name="labDirectory">
<property name="text">
<string>Default save directory:</string>
<widget class="QGroupBox" name="groupBox">
<property name="title">
<string>Default save directory</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<item>
<widget class="QLineEdit" name="editDir">
@ -170,9 +140,14 @@
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QGroupBox" name="groupBox_1">
<property name="title">
<string>Default file</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_14">
<property name="rightMargin">
@ -183,7 +158,7 @@
<item>
<widget class="QLabel" name="labFilename">
<property name="text">
<string>Default filename:</string>
<string>Name:</string>
</property>
</widget>
</item>
@ -222,6 +197,9 @@
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_11">
<property name="leftMargin">
@ -262,84 +240,11 @@
</layout>
</item>
<item>
<spacer name="verticalSpacer_5">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>82</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="tabScreenshot">
<attribute name="title">
<string>Screenshot</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Delay:</string>
</property>
</widget>
</item>
<item>
<widget class="QSpinBox" name="defDelay">
<property name="toolTip">
<string>Default delay before grabbing screen</string>
</property>
<property name="wrapping">
<bool>false</bool>
</property>
<property name="suffix">
<string> sec</string>
</property>
<property name="prefix">
<string/>
</property>
<property name="maximum">
<number>90</number>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QCheckBox" name="checkNoDecorX11">
<property name="text">
<string>No window decoration</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QLabel" name="labImgQuality">
<property name="text">
<widget class="QGroupBox" name="groupQuality">
<property name="title">
<string>Image quality</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_13">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QSlider" name="slideImgQuality">
<property name="toolTip">
@ -367,35 +272,28 @@
</widget>
</item>
</layout>
</item>
<item>
<widget class="QCheckBox" name="checkZommMouseArea">
<property name="text">
<string>Zoom area around mouse in selection mode</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<spacer name="verticalSpacer_5">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>117</height>
<height>298</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="page_2">
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="spacing">
<number>5</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
@ -503,6 +401,16 @@
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkFitInside">
<property name="toolTip">
<string>Fit to edges only inside selected screen area</string>
</property>
<property name="text">
<string>Fit to edges inside selected area</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
@ -520,6 +428,9 @@
</widget>
<widget class="QWidget" name="page_4">
<layout class="QVBoxLayout" name="verticalLayout_13">
<property name="spacing">
<number>5</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
@ -756,63 +667,9 @@
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QPushButton" name="butRestoreOpt">
<property name="minimumSize">
<size>
<width>112</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Restore default settings</string>
</property>
<property name="text">
<string>Defaults</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>88</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="butSaveOpt">
<property name="minimumSize">
<size>
<width>112</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Save settings</string>
</property>
<property name="text">
<string>Save</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="butCancel">
<property name="minimumSize">
<size>
<width>112</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Discard changes</string>
</property>
<property name="text">
<string>Cancel</string>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="standardButtons">
<set>QDialogButtonBox::Cancel|QDialogButtonBox::RestoreDefaults|QDialogButtonBox::Save</set>
</property>
</widget>
</item>
@ -827,10 +684,6 @@
<header>qkeysequencewidget.h</header>
</customwidget>
</customwidgets>
<tabstops>
<tabstop>butSaveOpt</tabstop>
<tabstop>butCancel</tabstop>
</tabstops>
<resources/>
<connections/>
</ui>

View File

@ -13,10 +13,8 @@
* GNU 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. *
***************************************************************************/
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "mainwindow.h"
#include "ui_mainwindow.h"
@ -34,7 +32,7 @@
#include <QMenu>
MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent),
_ui(new Ui::MainWindow), _conf(NULL), _trayMenu(NULL)
_ui(new Ui::MainWindow), _conf(nullptr), _trayMenu(nullptr)
{
_ui->setupUi(this);
_trayed = false;
@ -58,8 +56,9 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent),
connect(_globalShortcutSignals, SIGNAL(mapped(int)), this, SLOT(globalShortcutActivate(int)));
#endif
_trayIcon = NULL;
_hideWnd = NULL;
_trayIcon = nullptr;
_hideWnd = nullptr;
_trayMenu = nullptr;
// create actions menu
actNew = new QAction(QIcon::fromTheme("document-new"), tr("New"), this);
@ -96,20 +95,32 @@ MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent),
help->setMenu(menuInfo);
_ui->toolBar->addWidget(help);
QWidget* spacer = new QWidget();
spacer->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
_ui->toolBar->addWidget(spacer);
_ui->toolBar->addAction(actQuit);
void (QSpinBox::*delayChange)(int) = &QSpinBox::valueChanged;
connect(_ui->delayBox, delayChange, this, &MainWindow::delayBoxChange);
void (QComboBox::*typeScr)(int) = &QComboBox::currentIndexChanged;
connect(_ui->cbxTypeScr, typeScr, this, &MainWindow::typeScreenShotChange);
connect(_ui->checkIncludeCursor, &QCheckBox::toggled, this, &MainWindow::checkIncludeCursor);
connect(_ui->checkNoDecoration, &QCheckBox::toggled, this, &MainWindow::checkNoDecoration);
connect(_ui->checkZommMouseArea, &QCheckBox::toggled, this, &MainWindow::checkZommMouseArea);
QIcon icon(":/res/img/logo.png");
setWindowIcon(icon);
appIcon = QIcon::fromTheme ("screengrab");
if (appIcon.isNull())
appIcon = QIcon(":/res/img/logo.png");
setWindowIcon(appIcon);
QRect geometry = QApplication::desktop()->availableGeometry(QApplication::desktop()->screenNumber());
move(geometry.width() / 2 - width() / 2, geometry.height() / 2 - height() / 2);
_ui->scrLabel->installEventFilter(this);
_ui->delayBox->installEventFilter(this);
}
MainWindow::~MainWindow()
@ -147,20 +158,29 @@ void MainWindow::resizeEvent(QResizeEvent *event)
// get size dcreen pixel map
QSize scaleSize = Core::instance()->getPixmap()->size(); // get orig size pixmap
scaleSize.scale(_ui->scrLabel->size(), Qt::KeepAspectRatio);
scaleSize.scale(_ui->scrLabel->contentsRect().size(), Qt::KeepAspectRatio);
// if not scrlabel pixmap
if (!_ui->scrLabel->pixmap() || scaleSize != _ui->scrLabel->pixmap()->size())
updatePixmap(Core::instance()->getPixmap());
}
bool MainWindow::eventFilter(QObject* obj, QEvent* event)
{
if (obj == _ui->scrLabel && event->type() == QEvent::ToolTip)
if (obj == _ui->scrLabel)
{
if (event->type() == QEvent::ToolTip)
displatScreenToolTip();
else if (obj == _ui->scrLabel && event->type() == QEvent::MouseButtonDblClick)
else if (event->type() == QEvent::MouseButtonDblClick)
Core::instance()->openInExtViewer();
}
else if (obj == _ui->delayBox && event->type() == QEvent::ShortcutOverride)
{ // filter out Ctrl+C because we need it
if (QKeyEvent *keyEvent = static_cast<QKeyEvent*>(event))
{
if ((keyEvent->modifiers() & Qt::ControlModifier) && keyEvent->key() == Qt::Key_C)
return true;
}
}
return QObject::eventFilter(obj, event);
}
@ -168,8 +188,11 @@ bool MainWindow::eventFilter(QObject* obj, QEvent* event)
void MainWindow::updatePixmap(QPixmap *pMap)
{
_ui->scrLabel->setPixmap(pMap->scaled(_ui->scrLabel->size(),
Qt::KeepAspectRatio, Qt::SmoothTransformation));
QSize lSize = _ui->scrLabel->contentsRect().size();
// never scale up the image beyond its real size
_ui->scrLabel->setPixmap(lSize.width() < pMap->width() || lSize.height() < pMap->height()
? pMap->scaled(lSize, Qt::KeepAspectRatio, Qt::SmoothTransformation)
: *pMap);
}
void MainWindow::updateModulesActions(QList<QAction *> list)
@ -215,7 +238,7 @@ void MainWindow::show()
if (_conf->getShowTrayIcon())
{
_trayIcon->blockSignals(false);
_trayIcon->setContextMenu(_trayMenu); // enable context menu
_trayIcon->setContextMenu(_trayMenu);
}
if (_trayIcon)
@ -226,7 +249,7 @@ void MainWindow::show()
bool MainWindow::isTrayed() const
{
return _trayIcon != NULL;
return _trayIcon != nullptr;
}
void MainWindow::showTrayMessage(const QString& header, const QString& message)
@ -290,7 +313,7 @@ void MainWindow::showHelp()
void MainWindow::showOptions()
{
ConfigDialog *options = new ConfigDialog();
ConfigDialog *options = new ConfigDialog(this);
#ifdef SG_GLOBAL_SHORTCUTS
globalShortcutBlock(true);
#endif
@ -298,9 +321,12 @@ void MainWindow::showOptions()
if (isMinimized())
{
showNormal();
disableTrayMenuActions(true);
if (options->exec() == QDialog::Accepted)
updateUI();
hideToShot();
disableTrayMenuActions(false);
if (_trayIcon) // the tray may have been removed
windowHideShow(); // hides the window in this case
}
else
{
@ -321,8 +347,10 @@ void MainWindow::showAbout()
if (isMinimized())
{
showNormal();
disableTrayMenuActions(true);
about->exec();
hideToShot();
disableTrayMenuActions(false);
windowHideShow(); // hides the window in this case
}
else
about->exec();
@ -339,7 +367,7 @@ void MainWindow::displatScreenToolTip()
if (_conf->getEnableExtView())
{
toolTip += "\n\n";
toolTip += tr("Double click for open screenshot in external default image viewer");
toolTip += tr("Double click to open screenshot in external default image viewer");
}
_ui->scrLabel->setToolTip(toolTip);
@ -366,44 +394,86 @@ void MainWindow::createTray()
_trayMenu->addSeparator();
_trayMenu->addAction(actQuit);
// icon menu
QIcon icon(":/res/img/logo.png");
_trayIcon = new QSystemTrayIcon(this);
_trayIcon->setContextMenu(_trayMenu);
_trayIcon->setIcon(icon);
_trayIcon->setIcon(appIcon);
_trayIcon->show();
connect(_trayIcon, &QSystemTrayIcon::activated, this, &MainWindow::trayClick);
}
void MainWindow::disableTrayMenuActions(bool disable)
{
// On the one hand, QSystemTrayIcon::setContextMenu() can't be used for changing/removing
// the menu. On the other hand, deleting/recreating the current menu isn't a good way of
// disabling the context menu. Instead, we disable/enable menu ACTIONS when needed.
if (_trayMenu)
{
const QList<QAction*> actions = _trayMenu->actions();
for (QAction *action : actions)
action->setDisabled(disable);
}
}
void MainWindow::killTray()
{
// the actions should be enabled because they're shared with the main window
disableTrayMenuActions(false);
_trayed = false;
_trayMenu->clear();
delete _trayMenu;
_trayMenu = nullptr;
delete _trayIcon;
_trayIcon = NULL;
_trayIcon = nullptr;
}
void MainWindow::delayBoxChange(int delay)
{
if (delay == 0)
_ui->delayBox->setSpecialValueText(tr("None"));
_conf->setDelay(delay);
}
void MainWindow::typeScreenShotChange(int type)
{
_conf->setTypeScreen(type);
_conf->setDefScreenshotType(type);
// show/hide checkboxes according to the type
_ui->checkNoDecoration->setVisible(type == 1);
_ui->checkIncludeCursor->setVisible(type < 2);
_ui->checkZommMouseArea->setVisible(type >= 2);
}
void MainWindow::checkIncludeCursor(bool include)
{
_conf->setIncludeCursor(include);
}
void MainWindow::checkNoDecoration(bool noDecor)
{
_conf->setNoDecoration(noDecor);
}
void MainWindow::checkZommMouseArea(bool zoom)
{
_conf->setZoomAroundMouse(zoom);
}
// updating UI from configdata
void MainWindow::updateUI()
{
_ui->cbxTypeScr->setCurrentIndex(_conf->getTypeScreen());
_ui->delayBox->setValue(_conf->getDelay());
int type = _conf->getDefScreenshotType();
_ui->cbxTypeScr->setCurrentIndex(type);
// show/hide checkboxes according to the type
_ui->checkNoDecoration->setVisible(type == 1);
_ui->checkIncludeCursor->setVisible(type < 2);
_ui->checkZommMouseArea->setVisible(type >= 2);
_ui->checkZommMouseArea->setChecked(_conf->getZoomAroundMouse());
_ui->checkNoDecoration->setChecked(_conf->getNoDecoration());
_ui->checkIncludeCursor->setChecked(_conf->getIncludeCursor());
updateShortcuts();
// create tray object
@ -418,6 +488,12 @@ void MainWindow::updateUI()
// mouse clicks on tray icom
void MainWindow::trayClick(QSystemTrayIcon::ActivationReason reason)
{
if (findChildren<QDialog*>().count() > 0)
{ // just activate the window when there's a dialog
activateWindow();
raise();
return;
}
switch(reason)
{
case QSystemTrayIcon::Trigger:
@ -450,7 +526,7 @@ void MainWindow::hideToShot()
if (_conf->getShowTrayIcon())
{
_trayIcon->blockSignals(true);
_trayIcon->setContextMenu(NULL); // enable context menu
disableTrayMenuActions(true);
}
hide();
@ -469,48 +545,51 @@ void MainWindow::showWindow(const QString& str)
void MainWindow::restoreFromShot()
{
if (!isVisible() && !_trayed)
showNormal();
// if show tray
if (_conf->getShowTrayIcon())
{
_trayIcon->blockSignals(false);
_trayIcon->setContextMenu(_trayMenu); // enable context menu
disableTrayMenuActions(false);
}
showNormal();
}
void MainWindow::saveScreen()
{
bool wasMinimized(isMinimized());
if (wasMinimized)
{
showNormal();
disableTrayMenuActions(true);
}
// create initial filepath
QHash<QString, QString> formatsAvalible;
const QStringList formatIDs = _conf->getFormatIDs();
for (const QString &formatID : formatIDs)
formatsAvalible[formatID] = tr("%1 Files").arg(formatID.toUpper());
formatsAvalible["png"] = tr("PNG Files");
formatsAvalible["jpg"] = tr("JPEG Files");
formatsAvalible["bmp"] = tr("BMP Files");
QString format = "png";
QString format = formatIDs.at(_conf->getDefaultFormatID());
_conf->getSaveFormat();
Core* c = Core::instance();
QString filePath = c->getSaveFilePath(format);
// create file filters
QString fileFilters;
QString filterSelected;
filterSelected = formatsAvalible[format];
// create file filters
QStringList fileFilters;
QHash<QString, QString>::const_iterator iter = formatsAvalible.constBegin();
while (iter != formatsAvalible.constEnd())
{
fileFilters.append(iter.value() + " (*." + iter.key() + ");;");
QString str = iter.value() + " (*." + iter.key() + ")";
if (iter.key() == format)
filterSelected = str;
fileFilters << str;
++iter;
}
fileFilters.chop(2);
QString fileName;
fileName = QFileDialog::getSaveFileName(this, tr("Save As..."), filePath, fileFilters, &filterSelected, QFileDialog::DontUseNativeDialog);
fileName = QFileDialog::getSaveFileName(this, tr("Save As..."), filePath, fileFilters.join(";;"), &filterSelected);
QRegExp rx("\\(\\*\\.[a-z]{3,4}\\)");
quint8 tmp = filterSelected.size() - rx.indexIn(filterSelected);
@ -518,6 +597,12 @@ void MainWindow::saveScreen()
filterSelected.chop(tmp + 1);
format = formatsAvalible.key(filterSelected);
if (wasMinimized)
{
disableTrayMenuActions(false);
windowHideShow(); // hides the window in this case
}
// if user canceled saving
if (fileName.isEmpty())
return;

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef MAINWINDOW_H
@ -84,6 +82,7 @@ private:
QMenu *_trayMenu;
QShortcut *_hideWnd;
bool _trayed;
QIcon appIcon;
#ifdef SG_GLOBAL_SHORTCUTS
QxtGlobalShortcut *_fullScreen;
@ -97,6 +96,7 @@ private:
void displatScreenToolTip();
void createTray();
void killTray();
void disableTrayMenuActions(bool disable);
void updateShortcuts();
private Q_SLOTS:
@ -106,6 +106,9 @@ private Q_SLOTS:
void showAbout();
void delayBoxChange(int);
void typeScreenShotChange(int type);
void checkIncludeCursor(bool include);
void checkNoDecoration(bool noDecor);
void checkZommMouseArea(bool zoom);
void updateUI();
void trayClick(QSystemTrayIcon::ActivationReason reason);

View File

@ -6,16 +6,10 @@
<rect>
<x>0</x>
<y>0</y>
<width>480</width>
<height>299</height>
<width>640</width>
<height>498</height>
</rect>
</property>
<property name="minimumSize">
<size>
<width>480</width>
<height>299</height>
</size>
</property>
<property name="windowTitle">
<string>ScreenGrab</string>
</property>
@ -26,12 +20,9 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="layoutDirection">
<enum>Qt::RightToLeft</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="sizeConstraint">
<enum>QLayout::SetMaximumSize</enum>
<property name="spacing">
<number>5</number>
</property>
<item>
<widget class="QLabel" name="scrLabel">
@ -43,8 +34,8 @@
</property>
<property name="minimumSize">
<size>
<width>450</width>
<height>190</height>
<width>600</width>
<height>400</height>
</size>
</property>
<property name="frameShape">
@ -62,26 +53,7 @@
</widget>
</item>
<item>
<widget class="QWidget" name="bottomBar" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<property name="leftMargin">
<number>0</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>0</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
@ -89,12 +61,25 @@
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>13</height>
<width>5</width>
<height>5</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="labTypeScr">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Type:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="cbxTypeScr">
<property name="enabled">
@ -123,27 +108,37 @@
</item>
<item>
<property name="text">
<string>Previous selection</string>
<string>Last selected area</string>
</property>
</item>
</widget>
</item>
<item>
<widget class="QLabel" name="labTypeScr">
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>5</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="labDelay">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text">
<string>Type: </string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
<string>Delay:</string>
</property>
</widget>
</item>
@ -155,15 +150,12 @@
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="toolTip">
<string>Delay in seconds before taking screenshot</string>
</property>
<property name="specialValueText">
<string>None</string>
</property>
<property name="suffix">
<string> sec</string>
</property>
@ -172,19 +164,6 @@
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="labDelay">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Delay</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
@ -192,15 +171,68 @@
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>13</height>
<width>5</width>
<height>5</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<property name="spacing">
<number>10</number>
</property>
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>5</width>
<height>5</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QCheckBox" name="checkZommMouseArea">
<property name="text">
<string>Zoom area around mouse</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkNoDecoration">
<property name="text">
<string>No window decoration</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="checkIncludeCursor">
<property name="text">
<string>Include mouse pointer</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>5</width>
<height>5</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QToolBar" name="toolBar">

43
src/core/x11utils.cpp Normal file
View File

@ -0,0 +1,43 @@
/***************************************************************************
* Copyright (C) 2010 - 2013 by Artem 'DOOMer' Galichkin *
* doomer3d@gmail.com *
* *
* This program is free software; you can 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, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "x11utils.h"
#include <xcb/xfixes.h>
#include <QDebug>
#include <QPainter>
void X11Utils::compositePointer(int offsetX, int offsetY, QPixmap *snapshot)
{
Xcb::ScopedCPointer<xcb_xfixes_get_cursor_image_reply_t> cursor(
xcb_xfixes_get_cursor_image_reply(Xcb::connection(),
xcb_xfixes_get_cursor_image_unchecked(Xcb::connection()),
NULL));
if (cursor.isNull()) {
return;
}
QImage qcursorimg((uchar *) xcb_xfixes_get_cursor_image_cursor_image(cursor.data()),
cursor->width, cursor->height,
QImage::Format_ARGB32_Premultiplied);
QPainter painter(snapshot);
painter.drawImage(QPointF(cursor->x - cursor->xhot - offsetX, cursor->y - cursor ->yhot - offsetY), qcursorimg);
}

50
src/core/x11utils.h Normal file
View File

@ -0,0 +1,50 @@
/***************************************************************************
* Copyright (C) 2010 - 2013 by Artem 'DOOMer' Galichkin *
* doomer3d@gmail.com *
* *
* This program is free software; you can 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, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef X11UTILS_H
#define X11UTILS_H
#include <QPixmap>
#include <QScopedPointer>
#include <QX11Info>
#include <X11/Xlib-xcb.h>
#include <fixx11h.h>
#include <xcb/xcb.h>
namespace X11Utils {
void compositePointer(int offsetX, int offsetY, QPixmap *snapshot);
}
namespace Xcb {
template <typename T>
class ScopedCPointer : public QScopedPointer<T, QScopedPointerPodDeleter>
{
public:
ScopedCPointer(T *p = 0) : QScopedPointer<T, QScopedPointerPodDeleter>(p) {}
};
inline xcb_connection_t *connection()
{
return XGetXCBConnection(QX11Info::display());
}
} // namespace Xcb
#endif // X11UTILS_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef ABSTRACTMODULE_H

View File

@ -1,5 +1,3 @@
cmake_minimum_required(VERSION 2.8.11)
set (extedit_SRC
moduleextedit.cpp
extedit.cpp
@ -34,4 +32,4 @@ add_library(extedit
set_property (TARGET extedit PROPERTY SOVERSION 1.0.0)
install(TARGETS extedit DESTINATION ${SG_LIBDIR})
target_link_libraries(extedit Qt5::Widgets Qt5::X11Extras ${QTXDG_LIBRARIES})
target_link_libraries(extedit Qt5::Widgets Qt5::X11Extras Qt5Xdg)

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "extedit.h"
@ -90,6 +88,6 @@ void ExtEdit::createAppList()
QMimeType mt = db.mimeTypeForFile(fileName);
_appList = XdgDesktopFileCache::getApps(mt.name());
foreach (XdgDesktopFile *app, _appList)
for (XdgDesktopFile *app : qAsConst(_appList))
_actionList << new XdgAction(app);
}

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef EXTEDIT_H

View File

@ -13,10 +13,8 @@
* GNU 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. *
***************************************************************************/
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "moduleextedit.h"
@ -49,9 +47,9 @@ void ModuleExtEdit::init()
QMenu* ModuleExtEdit::initModuleMenu()
{
QMenu *menu = new QMenu(QObject::tr("Edit in..."), 0);
QList<XdgAction*> actionsList = _extEdit->getActions();
const QList<XdgAction*> actionsList = _extEdit->getActions();
foreach (XdgAction *appAction, actionsList)
for (XdgAction *appAction : actionsList)
{
menu->addAction(appAction);
appAction->disconnect(SIGNAL(triggered()));

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef MODULEEXTEDIT_H

View File

@ -1,5 +1,3 @@
cmake_minimum_required(VERSION 2.8.11)
set(uploader_SRC
moduleuploader.cpp
uploader.cpp
@ -9,9 +7,6 @@ set(uploader_SRC
uploaderconfigwidget.cpp
imgur/uploader_imgur_widget.cpp
imgur/uploaderconfigwidget_imgur.cpp
mediacrush/uploader_mediacrush.cpp
mediacrush/uploader_mediacrush_widget.cpp
mediacrush/uploaderconfigwidget_mediacrush.cpp
)
set(uploader_UI
@ -19,8 +14,6 @@ set(uploader_UI
uploaderconfigwidget.ui
imgur/uploader_imgur_widget.ui
imgur/uploaderconfigwidget_imgur.ui
mediacrush/uploader_mediacrush_widget.ui
mediacrush/uploaderconfigwidget_mediacrush.ui
)
lxqt_translate_ts(uploader_QMS

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "dialoguploader.h"
@ -24,8 +22,6 @@
#include "uploaderconfig.h"
#include "imgur/uploader_imgur.h"
#include "imgur/uploader_imgur_widget.h"
#include "mediacrush/uploader_mediacrush.h"
#include "mediacrush/uploader_mediacrush_widget.h"
#include <core/core.h>
#include <QMessageBox>
@ -115,9 +111,6 @@ void DialogUploader::slotUploadStart()
switch(_selectedHost)
{
case 0:
_uploader = new Uploader_MediaCrush(Core::instance()->config()->getSaveFormat());
break;
case 1:
_uploader = new Uploader_ImgUr;
break;
default:
@ -150,13 +143,10 @@ void DialogUploader::slotSeletHost(int type)
switch(_selectedHost)
{
case 0:
_uploaderWidget = new Uploader_MediaCrush_Widget();
break;
case 1:
_uploaderWidget = new Uploader_ImgUr_Widget();
break;
default:
_uploaderWidget = new Uploader_MediaCrush_Widget();
_uploaderWidget = new Uploader_ImgUr_Widget();
}
_ui->stackedWidget->addWidget(_uploaderWidget);

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef DIALOGUPLOADER_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "uploader_imgur.h"
@ -49,7 +47,7 @@ void Uploader_ImgUr::startUploading()
*/
QUrl Uploader_ImgUr::apiUrl()
{
return QUrl("http://api.imgur.com/2/upload");
return QUrl("https://api.imgur.com/2/upload");
}
/*!

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADER_IMGUR_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "uploader_imgur_widget.h"

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADER_IMGUR_WIDGET_H

View File

@ -17,7 +17,7 @@
<item>
<widget class="QLabel" name="labTitle">
<property name="text">
<string>Upload to ImgUr.com</string>
<string>Upload to Imgur</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "uploaderconfigwidget_imgur.h"

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADERCONFIGWIDGET_IMGUR_H

View File

@ -40,7 +40,7 @@
<item>
<widget class="QLabel" name="labImgurConfDescription">
<property name="text">
<string>Now is nothing yet</string>
<string>No settings available right now</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>

View File

@ -1,134 +0,0 @@
/***************************************************************************
* Copyright (C) 2009 - 2013 by Artem 'DOOMer' Galichkin *
* doomer3d@gmail.com *
* *
* This program is free software; you can 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 "uploader_mediacrush.h"
#include <QStringList>
#include <QtNetwork/QHttpMultiPart>
#include <QtNetwork/QHttpPart>
#include <QDebug>
Uploader_MediaCrush::Uploader_MediaCrush(const QString& format, QObject* parent): Uploader(parent)
{
_host = "mediacru.sh";
qDebug() << " create MediaCrush uploader";
UpdateUploadedStrList();
setCurrentFormat(format);
}
Uploader_MediaCrush::~Uploader_MediaCrush()
{
qDebug() << " kill MediaCrush uploader";
}
/*!
* Start upload process
*/
void Uploader_MediaCrush::startUploading()
{
createData();
createRequest(imageData, apiUrl());
_request.setRawHeader("Host", _host);
Uploader::startUploading();
}
/*!
* Set type of uploading image, for generate right direct link on it.
*/
void Uploader_MediaCrush::setCurrentFormat(const QString& format)
{
_currentFormat = format.toLatin1();
}
/*!
* Return url for upload image
*/
QUrl Uploader_MediaCrush::apiUrl()
{
return QUrl("https://mediacru.sh/api/upload/file");
}
/*!
* Prepare image data for uploading
*/
void Uploader_MediaCrush::createData(bool inBase64)
{
Uploader::createData(inBase64);
_multipartData = new QHttpMultiPart(QHttpMultiPart::FormDataType);
QHttpPart imagePart;
if (_formatString == "jpg")
{
imagePart.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("image/jpeg"));
}
else
{
imagePart.setHeader(QNetworkRequest::ContentTypeHeader, QVariant("image/" + _formatString));
}
QByteArray disposition = "form-data; name=\"file\"; filename='"+ _uploadFilename.toLatin1() +"'";
imagePart.setHeader(QNetworkRequest::ContentDispositionHeader, QVariant(disposition));
imagePart.setBody(imageData);
_multipartData->append(imagePart);
imageData.clear();
}
/*!
* Process server reply data
*/
void Uploader_MediaCrush::replyFinished(QNetworkReply* reply)
{
if (reply->error() == QNetworkReply::NoError)
{
QByteArray response = reply->readAll();
if (response.split(':').count() >= 2)
{
response = response.split(':').at(1);
response = response.mid(2, 12);
}
_uploadedStrings[UL_DIRECT_LINK].first = "https://" + _host + "/" + response + "." + _currentFormat;
_uploadedStrings[UL_DELETE_URL].first = "https://" + _host + "/" + response + "/delete";
Q_EMIT uploadDoneStr(_uploadedStrings[UL_DIRECT_LINK].first);
Q_EMIT uploadDone();
}
else
{
Q_EMIT uploadFail(reply->errorString().toLatin1());
}
reply->deleteLater();
}
void Uploader_MediaCrush::UpdateUploadedStrList()
{
QStringList nonUsed = QStringList() << UL_BB_CODE << UL_BB_CODE_THUMB << UL_HTML_CODE << UL_HTML_CODE_THUMB;
for (int i =0; i < nonUsed.count(); ++i)
{
_uploadedStrings.remove(nonUsed.at(i).toLatin1());
}
}

View File

@ -1,14 +0,0 @@
#include "uploader_mediacrush_widget.h"
#include "ui_uploader_mediacrush_widget.h"
Uploader_MediaCrush_Widget::Uploader_MediaCrush_Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Uploader_MediaCrush_Widget)
{
ui->setupUi(this);
}
Uploader_MediaCrush_Widget::~Uploader_MediaCrush_Widget()
{
delete ui;
}

View File

@ -1,22 +0,0 @@
#ifndef UPLOADER_MEDIACRUSH_WIDGET_H
#define UPLOADER_MEDIACRUSH_WIDGET_H
#include <QWidget>
namespace Ui {
class Uploader_MediaCrush_Widget;
}
class Uploader_MediaCrush_Widget : public QWidget
{
Q_OBJECT
public:
explicit Uploader_MediaCrush_Widget(QWidget *parent = 0);
~Uploader_MediaCrush_Widget();
private:
Ui::Uploader_MediaCrush_Widget *ui;
};
#endif // UPLOADER_MEDIACRUSH_WIDGET_H

View File

@ -1,44 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Uploader_MediaCrush_Widget</class>
<widget class="QWidget" name="Uploader_MediaCrush_Widget">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>417</width>
<height>203</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="labTitle">
<property name="text">
<string>Upload to MediaCrush</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>168</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -1,14 +0,0 @@
#include "uploaderconfigwidget_mediacrush.h"
#include "ui_uploaderconfigwidget_mediacrush.h"
UploaderConfigWidget_MediaCrush::UploaderConfigWidget_MediaCrush(QWidget *parent) :
QWidget(parent),
ui(new Ui::UploaderConfigWidget_MediaCrush)
{
ui->setupUi(this);
}
UploaderConfigWidget_MediaCrush::~UploaderConfigWidget_MediaCrush()
{
delete ui;
}

View File

@ -1,22 +0,0 @@
#ifndef UPLOADERCONFIGWIDGET_MEDIACRUSH_H
#define UPLOADERCONFIGWIDGET_MEDIACRUSH_H
#include <QWidget>
namespace Ui {
class UploaderConfigWidget_MediaCrush;
}
class UploaderConfigWidget_MediaCrush : public QWidget
{
Q_OBJECT
public:
explicit UploaderConfigWidget_MediaCrush(QWidget *parent = 0);
~UploaderConfigWidget_MediaCrush();
private:
Ui::UploaderConfigWidget_MediaCrush *ui;
};
#endif // UPLOADERCONFIGWIDGET_MEDIACRUSH_H

View File

@ -1,67 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>UploaderConfigWidget_MediaCrush</class>
<widget class="QWidget" name="UploaderConfigWidget_MediaCrush">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>320</width>
<height>240</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="labTitle">
<property name="text">
<string>Configuration for mediacru.sh upload</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>87</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="labDescription">
<property name="text">
<string>Now is nothing yet</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>87</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "moduleuploader.h"
@ -23,7 +21,6 @@
#include "uploaderconfigwidget.h"
#include "uploaderconfig.h"
#include "imgur/uploader_imgur.h"
#include "mediacrush/uploader_mediacrush.h"
#include "core/core.h"
@ -64,9 +61,6 @@ void ModuleUploader::init()
switch(config.labelsList().indexOf(selectedtHost))
{
case 0:
uploader = new Uploader_MediaCrush(core->config()->getSaveFormat());
break;
case 1:
uploader = new Uploader_ImgUr;
break;
default:

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef MODULEUPLOADER_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "uploader.h"
@ -159,11 +157,11 @@ void Uploader::createData(bool inBase64)
if (inBase64 == false)
{
imageData = core->getScreen();
imageData = core->getScreenData();
}
else
{
imageData = core->getScreen().toBase64();
imageData = core->getScreenData().toBase64();
}
core->killTempFile();
}

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADER_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "uploaderconfig.h"
@ -28,15 +26,15 @@
// common defaults
#define DEF_AUTO_COPY_RESULT_LIMK false
#define DEF_DEFAULT_HOST "MediaCrush"
#define DEF_DEFAULT_HOST "Imgur"
QStringList UploaderConfig::_labelsList = QStringList() << "MediaCrush" << "Imgur";
QStringList UploaderConfig::_labelsList = QStringList() << "Imgur";
UploaderConfig::UploaderConfig()
{
QString configFile = Config::getConfigDir() + QDir::separator() + "uploader.conf";
_settings = new QSettings(configFile, QSettings::IniFormat);
_groupsList << "mediacru.sh" << "imgur.com";
_settings = new QSettings ("screengrab", "uploader");
_groupsList << "imgur.com" << "mediacru.sh";
}
UploaderConfig::~UploaderConfig()
@ -104,7 +102,7 @@ void UploaderConfig::defaultSettings()
_settings->endGroup();
// imgur.com settings
_settings->beginGroup(_groupsList[0]);
_settings->beginGroup(_groupsList[1]);
_settings->endGroup();
}

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADERCONFIG_H

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#include "uploaderconfigwidget.h"
@ -42,14 +40,14 @@ UploaderConfigWidget::UploaderConfigWidget(QWidget *parent) :
loadSettings();
_crush = new UploaderConfigWidget_MediaCrush(this);
_imgur = new UploaderConfigWidget_ImgUr(this);
_ui->stackedHosts->addWidget(_crush);
_ui->stackedHosts->addWidget(_imgur);
void (QComboBox::*hostChanged)(int) = &QComboBox::currentIndexChanged;
connect(_ui->cbxHosts, hostChanged, _ui->stackedHosts, &QStackedWidget::setCurrentIndex);
_ui->stackedHosts->setCurrentIndex(_ui->cbxDefaultHost->currentIndex());
}
UploaderConfigWidget::~UploaderConfigWidget()
@ -83,6 +81,7 @@ void UploaderConfigWidget::loadSettings()
_ui->cbxDefaultHost->setCurrentIndex(index);
}
_ui->cbxHosts->setCurrentIndex(_ui->cbxDefaultHost->currentIndex());
_ui->checkAutoCopyMainLink->setChecked(loadValues["autoCopyDirectLink"].toBool());
}
@ -99,7 +98,6 @@ void UploaderConfigWidget::saveSettings()
config.saveSettings("common", savingValues);
QMetaObject::invokeMethod(_imgur, "saveSettings");
}
void UploaderConfigWidget::changeEvent(QEvent *e)

View File

@ -13,9 +13,7 @@
* GNU 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. *
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
***************************************************************************/
#ifndef UPLOADERCONFIGWIDGET_H
@ -24,7 +22,6 @@
#include <QWidget>
#include "imgur/uploaderconfigwidget_imgur.h"
#include "mediacrush/uploaderconfigwidget_mediacrush.h"
namespace Ui {
class UploaderConfigWidget;
@ -49,7 +46,6 @@ private:
Ui::UploaderConfigWidget *_ui;
// services widgets
UploaderConfigWidget_MediaCrush *_crush;
UploaderConfigWidget_ImgUr *_imgur;
};

View File

@ -17,7 +17,7 @@
<item>
<widget class="QTabWidget" name="settings">
<property name="currentIndex">
<number>0</number>
<number>1</number>
</property>
<widget class="QWidget" name="commonSettings">
<attribute name="title">

View File

@ -1,17 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>QObject</name>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="40"/>
<source>External edit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="51"/>
<source>Edit in...</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,772 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="ca">
<context>
<name>AboutDialog</name>
<message>
<source>using Qt </source>
<translation>mitjançant Qt </translation>
</message>
<message>
<source>About</source>
<translation>Quant a</translation>
</message>
<message>
<source>Thanks</source>
<translation>Agraïments</translation>
</message>
<message>
<source>Help us</source>
<translation>Ajudeu-nos</translation>
</message>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>és una aplicació multiplataforma per a la creació ràpida de captures de pantalla del vostre escriptori.</translation>
</message>
<message>
<source>It is a light and powerful application, written in Qt.</source>
<translation>És una aplicació lleugera i potent, escrita en Qt.</translation>
</message>
<message>
<source>Website</source>
<translation>Lloc web</translation>
</message>
<message>
<source>Licensed under the </source>
<translation>Llicenciat sota la </translation>
</message>
<message>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation>Drets d&apos;autor &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</translation>
</message>
<message>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>Podeu unir-vos a nosaltres i ajudar-nos si voleu. Aquesta és una invitació si us agrada aquesta aplicació.</translation>
</message>
<message>
<source>What you can do?</source>
<translation>Què podeu fer?</translation>
</message>
<message>
<source>Translate ScreenGrab to other languages</source>
<translation>Traduir ScreenGrab a altres llengües</translation>
</message>
<message>
<source>Make suggestions for next releases</source>
<translation>Fer suggeriments per als pròxims llançaments</translation>
</message>
<message>
<source>Report bugs and issues</source>
<translation>Informar dels errors i de les incidències</translation>
</message>
<message>
<source>Bug tracker</source>
<translation>Seguiment d&apos;errors</translation>
</message>
<message>
<source>Translate:</source>
<translation>Traducció:</translation>
</message>
<message>
<source> Brazilian Portuguese translation</source>
<translation> Traducció al portuguès de Brasil</translation>
</message>
<message>
<source>Marcio Moraes</source>
<translation></translation>
</message>
<message>
<source> Ukrainian translation</source>
<translation> Traducció a l&apos;ucraïnès</translation>
</message>
<message>
<source>Gennadi Motsyo</source>
<translation></translation>
</message>
<message>
<source> Spanish translation</source>
<translation> Traducció a l&apos;espanyol</translation>
</message>
<message>
<source>Burjans L García D</source>
<translation></translation>
</message>
<message>
<source> Italian translation</source>
<translation> Traducció a l&apos;italià</translation>
</message>
<message>
<source>Testing:</source>
<translation>Proves:</translation>
</message>
<message>
<source>Dual monitor support and other in Linux</source>
<translation>Admissió de monitors duals i altres a Linux</translation>
</message>
<message>
<source>Dual monitor support in Linux</source>
<translation>Admissió de monitors duals a Linux</translation>
</message>
<message>
<source>win32-build [Windows XP and 7]</source>
<translation>Construcció win32 [Windows XP i 7]</translation>
</message>
<message>
<source>old win32-build [Windows Vista]</source>
<translation>Construcció win32 antiga [Windows Vista]</translation>
</message>
<message>
<source>win32-build [Windows 7]</source>
<translation>Construcció win32 [Windows 7]</translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>No existeix el directori %1. Voleu crear-lo?</translation>
</message>
<message>
<source>Warning</source>
<translation>Avís</translation>
</message>
<message>
<source>Select directory</source>
<translation>Selecciona el directori</translation>
</message>
<message>
<source>Do you want to reset the settings to the defaults?</source>
<translation>Voleu restablir els ajusts als valors predeterminats?</translation>
</message>
<message>
<source>Example: </source>
<translation>Exemple: </translation>
</message>
<message>
<source>This key is already used in your system! Please select another.</source>
<translation>Aquesta tecla ja s&apos;utilitza al vostre sistema. Seleccioneu-ne una altra.</translation>
</message>
<message>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>Aquesta tecla ja s&apos;utilitza a ScreenGrab. Seleccioneu-ne una altra.</translation>
</message>
<message>
<source>This key is not supported on your system!</source>
<translation>Aquesta tecla no està admesa al vostre sistema!</translation>
</message>
<message>
<source>Error</source>
<translation></translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>és una aplicació multiplataforma per a la creació ràpida de captures de pantalla del vostre escriptori.</translation>
</message>
<message>
<source>Take a fullscreen screenshot</source>
<translation>Feu captures de pantalla a pantalla completa</translation>
</message>
<message>
<source>Take a screenshot of the active window</source>
<translation>Feu una captura de pantalla de la finestra activa</translation>
</message>
<message>
<source>Take a screenshot of a selection of the screen</source>
<translation>Feu captures de pantalla d&apos;una selecció de la pantalla</translation>
</message>
<message>
<source>Run the application with a hidden main window</source>
<translation>Executeu l&apos;aplicació amb una finestra principal oculta</translation>
</message>
<message>
<source>Saved</source>
<translation>Desat</translation>
</message>
<message>
<source>Saved to </source>
<translation>Desat a </translation>
</message>
<message>
<source>Name of saved file is copied to the clipboard</source>
<translation>El nom del fitxer desat es copia al porta-retalls</translation>
</message>
<message>
<source>Path to saved file is copied to the clipboard</source>
<translation>El camí al fitxer desat es copia al porta-retalls</translation>
</message>
<message>
<source>Copied</source>
<translation>Copiat</translation>
</message>
<message>
<source>Screenshot is copied to clipboard</source>
<translation>La captura de pantalla es copia al porta-retalls</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<source>Upload to internet</source>
<translation>Pujar-ho a Internet</translation>
</message>
<message>
<source>Upload to</source>
<translation>Pujar-ho a</translation>
</message>
<message>
<source>Direct link:</source>
<translation>Enllaç directe:</translation>
</message>
<message>
<source>Open this link in the default web-browser</source>
<translation>Obre aquest enllaç al navegador web per defecte</translation>
</message>
<message>
<source>Open</source>
<translation>Obre</translation>
</message>
<message>
<source>Copy this link to the clipboard</source>
<translation>Copia aquest enllaç al porta-retalls</translation>
</message>
<message>
<source>Copy</source>
<translation>Copia</translation>
</message>
<message>
<source>Extended preformed html or bb codes:</source>
<translation>Codis html o bb preformats ampliats:</translation>
</message>
<message>
<source>Link to delete image:</source>
<translation>Enllaç per eliminar la imatge:</translation>
</message>
<message>
<source>Upload</source>
<translation>Puja</translation>
</message>
<message>
<source>Cancel</source>
<translation>Cancel·la</translation>
</message>
<message>
<source>Size: </source>
<translation>Mida: </translation>
</message>
<message>
<source> pixel</source>
<translation> píxel</translation>
</message>
<message>
<source>Uploaded </source>
<translation>Pujat </translation>
</message>
<message>
<source>Ready to upload</source>
<translation>A punt per pujar</translation>
</message>
<message>
<source>Upload processing... Please wait</source>
<translation>Processament de la pujada... Espereu</translation>
</message>
<message>
<source>Receiving a response from the server</source>
<translation>Recepció d&apos;una resposta del servidor</translation>
</message>
<message>
<source>Upload completed</source>
<translation>Pujada completada</translation>
</message>
<message>
<source>Close</source>
<translation>Tanca</translation>
</message>
<message>
<source>Error uploading screenshot</source>
<translation>Error en la pujada de la captura de pantalla</translation>
</message>
<message>
<source>Error</source>
<translation></translation>
</message>
<message>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation>Obre aquest enllaç al navegador web per defecte, pot eliminar directament la imatge que heu carregat, sense cap avís.</translation>
</message>
<message>
<source>Are you sure you want to continue?</source>
<translation>Esteu segur que voleu continuar?</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<source>ScreenGrab</source>
<translation></translation>
</message>
<message>
<source>Type:</source>
<translation>Tipus:</translation>
</message>
<message>
<source>Type of screenshot</source>
<translation>Tipus de la captura de pantalla</translation>
</message>
<message>
<source>Full screen</source>
<translation>Pantalla completa</translation>
</message>
<message>
<source>Window</source>
<translation>Finestra</translation>
</message>
<message>
<source>Screen area</source>
<translation>Àrea de la pantalla</translation>
</message>
<message>
<source>Last selected area</source>
<translation>Última àrea seleccionada</translation>
</message>
<message>
<source>Delay:</source>
<translation>Retard:</translation>
</message>
<message>
<source>Delay in seconds before taking screenshot</source>
<translation>Retard en segons abans de prendre la captura de pantalla</translation>
</message>
<message>
<source>None</source>
<translation>Cap</translation>
</message>
<message>
<source> sec</source>
<translation> s</translation>
</message>
<message>
<source>Zoom area around mouse</source>
<translation>Zoom a l&apos;àrea al voltant del ratolí</translation>
</message>
<message>
<source>No window decoration</source>
<translation>Sense decoració de finestra</translation>
</message>
<message>
<source>Include mouse pointer</source>
<translation>Inclou el punter del ratolí</translation>
</message>
<message>
<source>toolBar</source>
<translation>Barra d&apos;eines</translation>
</message>
<message>
<source>New</source>
<translation>Nova</translation>
</message>
<message>
<source>Save</source>
<translation>Desa</translation>
</message>
<message>
<source>Copy</source>
<translation>Copia</translation>
</message>
<message>
<source>Options</source>
<translation></translation>
</message>
<message>
<source>Help</source>
<translation></translation>
</message>
<message>
<source>About</source>
<translation>Quant a</translation>
</message>
<message>
<source>Quit</source>
<translation>Surt</translation>
</message>
<message>
<source>Screenshot </source>
<translation></translation>
</message>
<message>
<source>Double click to open screenshot in external default image viewer</source>
<translation>Doble clic per obrir la captura de pantalla al visualitzador d&apos;imatges extern predeterminat</translation>
</message>
<message>
<source>Hide</source>
<translation>Oculta</translation>
</message>
<message>
<source>Show</source>
<translation>Mostra</translation>
</message>
<message>
<source>%1 Files</source>
<translation>%1 fitxers</translation>
</message>
<message>
<source>Save As...</source>
<translation>Desa com...</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<source>Upload the screenshot to the default image host</source>
<translation>Puja la captura de pantalla a l&apos;amfitrió d&apos;imatges predeterminat</translation>
</message>
<message>
<source>Uploading</source>
<translation>Pujada</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Utilitzeu el ratolí per dibuixar un rectangle per capturar la pantalla o
sortiu prement qualsevol tecla o els botons dret o central del ratolí.</translation>
</message>
<message>
<source>%1 x %2 pixels </source>
<translation>%1 x %2 píxels </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>External edit</source>
<translation>Edició externa</translation>
</message>
<message>
<source>Edit in...</source>
<translation>Edita a...</translation>
</message>
<message>
<source>Upload</source>
<translation></translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<source>Direct link</source>
<translation>Enllaç directe</translation>
</message>
<message>
<source>HTML code</source>
<translation></translation>
</message>
<message>
<source>BB code</source>
<translation></translation>
</message>
<message>
<source>HTML code with thumb image</source>
<translation>Codi HTML amb la imatge en miniatura</translation>
</message>
<message>
<source>BB code with thumb image</source>
<translation>Codi BB amb la imatge en miniatura</translation>
</message>
<message>
<source>URl to delete image</source>
<translation></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<source>Common settings</source>
<translation>Ajusts comuns</translation>
</message>
<message>
<source>Default image host</source>
<translation></translation>
</message>
<message>
<source>Always copy the link to the clipboard</source>
<translation>Copia sempre l&apos;enllaç al porta-retalls</translation>
</message>
<message>
<source>Hosts settings</source>
<translation>Ajusts dels amfitrions</translation>
</message>
<message>
<source>Settings for: </source>
<translation>Ajusts per: </translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<source>Configuration for imgur.com upload</source>
<translation></translation>
</message>
<message>
<source>No settings available right now</source>
<translation>No hi ha cap ajust disponible ara mateix</translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<source>Upload to Imgur</source>
<translation>Puja a Imgur</translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<source>About Qt</source>
<translation>Quant a Qt</translation>
</message>
<message>
<source>Close</source>
<translation>Tanca</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<source>Options</source>
<translation></translation>
</message>
<message>
<source>Main</source>
<translation>Principal</translation>
</message>
<message>
<source>Advanced</source>
<translation>Avançat</translation>
</message>
<message>
<source>System tray</source>
<translation>Safata del sistema</translation>
</message>
<message>
<source>Shortcuts</source>
<translation>Dreceres</translation>
</message>
<message>
<source>Default save directory</source>
<translation>Directori de desament predeterminat</translation>
</message>
<message>
<source>Path to default selection dir for saving</source>
<translation>Camí al directori predeterminat dels desaments per seleccionar-ne un</translation>
</message>
<message>
<source>Browse filesystem</source>
<translation>Navega pel sistema de fitxers</translation>
</message>
<message>
<source>Browse</source>
<translation>Navega</translation>
</message>
<message>
<source>Default file</source>
<translation>Fitxer predeterminat</translation>
</message>
<message>
<source>Name:</source>
<translation>Nom:</translation>
</message>
<message>
<source>Default filename</source>
<translation>Nom de fitxer predeterminat</translation>
</message>
<message>
<source>Format</source>
<translation></translation>
</message>
<message>
<source>Default saving image format</source>
<translation>Format d&apos;imatge predeterminat de desament</translation>
</message>
<message>
<source>Copy file name to the clipboard when saving</source>
<translation>Copia el nom del fitxer al porta-retalls quan es desa</translation>
</message>
<message>
<source>Do not copy</source>
<translation>No ho copiïs</translation>
</message>
<message>
<source>Copy file name only</source>
<translation>Copia només el nom del fitxer</translation>
</message>
<message>
<source>Copy full file path</source>
<translation>Copia el camí complet al fitxer</translation>
</message>
<message>
<source>Image quality</source>
<translation>Qualitat d&apos;imatge</translation>
</message>
<message>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Qualitat d&apos;imatge (1 - fitxer petit, 100 - alta qualitat)</translation>
</message>
<message>
<source>Inserting current date time into saved filename</source>
<translation>Inserció de la data actual al nom del fitxer desat</translation>
</message>
<message>
<source>Insert current date and time in file name</source>
<translation>Insereix la data i hora actual al nom del fitxer</translation>
</message>
<message>
<source>Template: </source>
<translation>Plantilla: </translation>
</message>
<message>
<source>Example: </source>
<translation>Exemple: </translation>
</message>
<message>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Desament automàtic de captures de pantalla en el procés d&apos;agafament</translation>
</message>
<message>
<source>Autosave screenshot</source>
<translation>Desa automàticament la captura de pantalla</translation>
</message>
<message>
<source>Save first screenshot</source>
<translation>Desa primer la captura de pantalla</translation>
</message>
<message>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>Permet l&apos;execució de diverses còpies de ScreenGrab</translation>
</message>
<message>
<source>Allow multiple instances of ScreenGrab</source>
<translation>Permet diverses instàncies de ScreenGrab</translation>
</message>
<message>
<source>Open in external viewer on double click</source>
<translation>Obre al visualitzador extern amb el doble clic</translation>
</message>
<message>
<source>Enable external viewer</source>
<translation>Habilita el visualitzador extern</translation>
</message>
<message>
<source>Fit to edges only inside selected screen area</source>
<translation>Ajusta a les vores només dins de l&apos;àrea de la pantalla seleccionada</translation>
</message>
<message>
<source>Fit to edges inside selected area</source>
<translation>Ajusta a les vores dins de l&apos;àrea seleccionada</translation>
</message>
<message>
<source>Show ScreenGrab in the system tray</source>
<translation>Mostra ScreenGrab a la safata del sistema</translation>
</message>
<message>
<source>Tray messages:</source>
<translation>Missatges de la safata:</translation>
</message>
<message>
<source>Tray messages display mode</source>
<translation>Mode de visualització dels missatges de la safata</translation>
</message>
<message>
<source>Never</source>
<translation>Mai</translation>
</message>
<message>
<source>Tray mode</source>
<translation>Mode safata</translation>
</message>
<message>
<source>Always</source>
<translation>Sempre</translation>
</message>
<message>
<source>Time of display tray messages</source>
<translation>Temps de visualització dels missatges de la safata</translation>
</message>
<message>
<source>Time to display tray messages</source>
<translation>Temps per mostrar el missatges de la safata</translation>
</message>
<message>
<source> sec</source>
<translation> s</translation>
</message>
<message>
<source>Minimize to tray on click close button</source>
<translation>Minimitza a la safata amb el clic al botó de tancar</translation>
</message>
<message>
<source>Minimize to tray when closing</source>
<translation>Minimitza a la safata quan s&apos;està tancant</translation>
</message>
<message>
<source>Action</source>
<translation>Acció</translation>
</message>
<message>
<source>Shortcut</source>
<translation>Drecera</translation>
</message>
<message>
<source>Global shortcuts</source>
<translation>Dreceres globals</translation>
</message>
<message>
<source>Fill screen</source>
<translation>Omple la pantalla</translation>
</message>
<message>
<source>Active window</source>
<translation>Finestra activa</translation>
</message>
<message>
<source>Area select</source>
<translation>Selecció de l&apos;àrea</translation>
</message>
<message>
<source>Local shortcuts</source>
<translation>Dreceres locals</translation>
</message>
<message>
<source>New screen</source>
<translation>Pantalla nova</translation>
</message>
<message>
<source>Save screen</source>
<translation>Desa la pantalla</translation>
</message>
<message>
<source>Copy screen</source>
<translation>Copia la pantalla</translation>
</message>
<message>
<source>Help</source>
<translation>Ajuda</translation>
</message>
<message>
<source>Quit</source>
<translation>Surt</translation>
</message>
<message>
<source>Selected shortcut:</source>
<translation>Drecera seleccionada:</translation>
</message>
<message>
<source>Not defined</source>
<translation>Sense definir</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,3 @@
Name[es]=ScreenGrab
GenericName[es]=Programa para capturas de pantalla
Comment[es]=Captura la pantalla

View File

@ -0,0 +1,963 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="es">
<context>
<name>AboutDialog</name>
<message>
<location filename="../src/core/ui/about.cpp" line="34"/>
<source>using Qt </source>
<translation>usando Qt </translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="41"/>
<source>About</source>
<translation>Acerca de</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="42"/>
<source>Thanks</source>
<translation>Agradecimientos</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="102"/>
<source>It is a light and powerful application, written in Qt.</source>
<translation>Es una aplicación ligera y potente, escrita usando Qt.</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="105"/>
<source>Website</source>
<translation>Sitio web</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="109"/>
<source>Licensed under the </source>
<translation>Licenciado bajo la </translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="43"/>
<source>Help us</source>
<translation>Ayúdenos</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="113"/>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="123"/>
<source>What you can do?</source>
<translation>¿Qué puede hacer?</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="100"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>es una aplicación multiplataforma para hacer rápidamente capturas de pantalla del escritorio.</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="120"/>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>Puede unirse a nosotros y ayudarnos si quiere. Es una invitación si le gusta esta aplicación.</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="126"/>
<source>Translate ScreenGrab to other languages</source>
<translation>Traducir ScreenGrab a otros idiomas</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="127"/>
<source>Make suggestions for next releases</source>
<translation>Hacer sugerencias para próximas versiones</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="128"/>
<source>Report bugs and issues</source>
<translation>Informar de fallos y otras cuestiones</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="131"/>
<source>Bug tracker</source>
<translation>Seguimiento de errores</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="141"/>
<source>Translate:</source>
<translation>Traducción:</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="143"/>
<source> Brazilian Portuguese translation</source>
<translation> traducción al portugués de Brasil</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="144"/>
<source>Marcio Moraes</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="146"/>
<source> Ukrainian translation</source>
<translation> traducción al ucraniano</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="147"/>
<source>Gennadi Motsyo</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="149"/>
<source> Spanish translation</source>
<translation> traducción al español</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="150"/>
<source>Burjans L García D</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="152"/>
<source> Italian translation</source>
<translation> traducción al italiano</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="156"/>
<source>Testing:</source>
<translation>Pruebas:</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="158"/>
<source>Dual monitor support and other in Linux</source>
<translation>Soporte para monitor doble y otros en Linux</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="159"/>
<source>Dual monitor support in Linux</source>
<translation>Soporte para monitor doble en Linux</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="160"/>
<source>win32-build [Windows XP and 7]</source>
<translation>win32-build [Windows XP y 7]</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="161"/>
<source>old win32-build [Windows Vista]</source>
<translation>antiguo win32-build [Windows Vista]</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="162"/>
<source>win32-build [Windows 7]</source>
<translation></translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="301"/>
<source>Select directory</source>
<translation>Seleccione el directorio</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="212"/>
<location filename="../src/core/ui/configwidget.cpp" line="313"/>
<source>Warning</source>
<translation>Aviso</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="211"/>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>El directorio %1 no existe. ¿Desea crearlo?</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="312"/>
<source>Do you want to reset the settings to the defaults?</source>
<translation>¿Quiere reiniciar la configuración a la predefinida?</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="370"/>
<source>Example: </source>
<translation>Ejemplo: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="426"/>
<source>This key is already used in your system! Please select another.</source>
<translation>¡La tecla ya está siendo usada por el sistema! Seleccione otra.</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="432"/>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>¡La tecla ya está siendo usada en ScreenGrab! Seleccione otra.</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="450"/>
<source>This key is not supported on your system!</source>
<translation>¡La tecla no está permitida en su sistema!</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="485"/>
<source>Error</source>
<translation>Error</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<location filename="../src/core/core.cpp" line="421"/>
<source>Saved</source>
<translation>Guardado</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="443"/>
<source>Name of saved file is copied to the clipboard</source>
<translation>El nombre del archivo guardado se copia al portapapeles</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="471"/>
<source>Copied</source>
<translation>Copiado</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="421"/>
<source>Saved to </source>
<translation>Guardado en </translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="63"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>es una aplicación multiplataforma para hacer rápidamente capturas de pantalla del escritorio.</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="67"/>
<source>Take a fullscreen screenshot</source>
<translation>Hacer una captura de la pantalla completa</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="71"/>
<source>Take a screenshot of the active window</source>
<translation>Hacer una captura de pantalla de la ventana activa</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="75"/>
<source>Take a screenshot of a selection of the screen</source>
<translation>Hacer una captura de pantalla de un área de la pantalla</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="79"/>
<source>Run the application with a hidden main window</source>
<translation>Ejecutar la aplicación con la ventana principal oculta</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="449"/>
<source>Path to saved file is copied to the clipboard</source>
<translation>La ruta al archivo guardado se copia al portapapeles</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="471"/>
<source>Screenshot is copied to clipboard</source>
<translation>La captura de pantalla se copia al portapapeles</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="14"/>
<source>Upload to internet</source>
<translation>Subir a internet</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="22"/>
<source>Upload to</source>
<translation>Subir a</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="76"/>
<source>Direct link:</source>
<translation>Enlace directo:</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="98"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="189"/>
<source>Open this link in the default web-browser</source>
<translation>Abrir el enlace en el navegador por defecto</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="101"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="192"/>
<source>Open</source>
<translation>Abrir</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="114"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="155"/>
<source>Copy this link to the clipboard</source>
<translation>Copiar el enlace al portapapeles</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="117"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="158"/>
<source>Copy</source>
<translation>Copiar</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="128"/>
<source>Extended preformed html or bb codes:</source>
<translation>Códigos html o bb preformados extendidos:</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="167"/>
<source>Link to delete image:</source>
<translation>Enlace para borrar la imagen:</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="300"/>
<source>Upload</source>
<translation>Subir</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="313"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="201"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="216"/>
<source>Close</source>
<translation>Cerrar</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="68"/>
<source>Uploaded </source>
<translation>Subido </translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="58"/>
<source>Size: </source>
<translation>Tamaño: </translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="58"/>
<source> pixel</source>
<translation> píxel</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="71"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="214"/>
<source>Ready to upload</source>
<translation>Listo para subir</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="109"/>
<source>Upload processing... Please wait</source>
<translation>Subida en proceso... Por favor, espere</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="162"/>
<source>Receiving a response from the server</source>
<translation>Recibiendo respuesta desde el servidor</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="179"/>
<source>Upload completed</source>
<translation>Subida completada</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="208"/>
<source>Error uploading screenshot</source>
<translation>Error al subir la captura de pantalla</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="209"/>
<source>Error</source>
<translation>Error</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="246"/>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation>Abrir el enlace en el navegador por defecto; puede borrar directamente la imagen subida, sin ningún aviso.</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="247"/>
<source>Are you sure you want to continue?</source>
<translation>¿Seguro que quiere continuar?</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="355"/>
<source>Screenshot </source>
<translation>Captura de pantalla </translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="70"/>
<source>Quit</source>
<translation>Salir</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="65"/>
<source>Save</source>
<translation>Guardar</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="64"/>
<source>New</source>
<translation>Nuevo</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="66"/>
<source>Copy</source>
<translation>Copiar</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="359"/>
<source>Double click to open screenshot in external default image viewer</source>
<translation>Haga doble clic para abrir la captura de pantalla en el visor de imágenes externo por defecto</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="368"/>
<location filename="../src/core/ui/mainwindow.cpp" line="499"/>
<source>Hide</source>
<translation>Ocultar</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="69"/>
<source>About</source>
<translation>Acerca de</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="67"/>
<source>Options</source>
<translation>Opciones</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="157"/>
<source>None</source>
<translation>Ninguna</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="506"/>
<source>Show</source>
<translation>Mostrar</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="558"/>
<source>%1 Files</source>
<translation>%1 archivos</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="581"/>
<source>Save As...</source>
<translation>Guardar como...</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="14"/>
<source>ScreenGrab</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="79"/>
<source>Type:</source>
<translation>Tipo:</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="89"/>
<source>Type of screenshot</source>
<translation>Tipo de captura de pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="96"/>
<source>Full screen</source>
<translation>Pantalla completa</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="101"/>
<source>Window</source>
<translation>Ventana</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="106"/>
<source>Screen area</source>
<translation>Área de la pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="111"/>
<source>Last selected area</source>
<translation>Última área seleccionada</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="141"/>
<source>Delay:</source>
<translation>Demora:</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="203"/>
<source>Zoom area around mouse</source>
<translation>Ampliar el área alrededor del ratón</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="210"/>
<source>No window decoration</source>
<translation>Sin decoración de ventana</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="217"/>
<source>Include mouse pointer</source>
<translation>Incluir el puntero del ratón</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="246"/>
<source>toolBar</source>
<translation>Barra de herramientas</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="154"/>
<source>Delay in seconds before taking screenshot</source>
<translation>Demora en segundos antes hacer la captura de pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="160"/>
<source> sec</source>
<translation> s</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="68"/>
<location filename="../src/core/ui/mainwindow.cpp" line="92"/>
<source>Help</source>
<translation>Ayuda</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="41"/>
<source>Upload the screenshot to the default image host</source>
<translation>Subir la captura de pantalla al sitio para imágenes por defecto</translation>
</message>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="48"/>
<source>Uploading</source>
<translation>Subiendo</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<location filename="../src/core/regionselect.cpp" line="160"/>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Use el ratón para dibujar el rectángulo a capturar o salga pulsando
cualquier tecla o los botones derecho o central del ratón.</translation>
</message>
<message>
<location filename="../src/core/regionselect.cpp" line="192"/>
<source>%1 x %2 pixels </source>
<translation>%1 x %2 píxeles </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="103"/>
<source>Upload</source>
<translation>Subir</translation>
</message>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="38"/>
<source>External edit</source>
<translation>Edición externa</translation>
</message>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="49"/>
<source>Edit in...</source>
<translation>Editar en...</translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="225"/>
<source>Direct link</source>
<translation>Enlace directo</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="228"/>
<source>HTML code</source>
<translation>Código HTML</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="231"/>
<source>BB code</source>
<translation>Código BB</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="234"/>
<source>HTML code with thumb image</source>
<translation>Código HTML con miniatura de imagen</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="237"/>
<source>BB code with thumb image</source>
<translation>Código BB con miniatura de imagen</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="240"/>
<source>URl to delete image</source>
<translation>URI para borrar la imagen</translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="24"/>
<source>Common settings</source>
<translation>Configuración general</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="32"/>
<source>Default image host</source>
<translation>Sitio de imágenes por defecto</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="44"/>
<source>Always copy the link to the clipboard</source>
<translation>Copiar siempre el enlace al portapapeles</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="65"/>
<source>Hosts settings</source>
<translation>Configuración de los servidores</translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="73"/>
<source>Settings for: </source>
<translation>Configuración para: </translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="20"/>
<source>Configuration for imgur.com upload</source>
<translation>Configuración para subir a imgur.com</translation>
</message>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="43"/>
<source>No settings available right now</source>
<translation>No hay ajustes disponibles de momento</translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<location filename="../src/modules/uploader/imgur/uploader_imgur_widget.ui" line="20"/>
<source>Upload to Imgur</source>
<translation>Subir a Imgur</translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<location filename="../src/core/ui/aboutwidget.ui" line="128"/>
<source>About Qt</source>
<translation>Acerca de Qt</translation>
</message>
<message>
<location filename="../src/core/ui/aboutwidget.ui" line="154"/>
<source>Close</source>
<translation>Cerrar</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<location filename="../src/core/ui/configwidget.ui" line="26"/>
<location filename="../src/core/ui/configwidget.ui" line="627"/>
<source>Options</source>
<translation>Opciones</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="192"/>
<source>Default saving image format</source>
<translation>Formato por defecto al guardar imágenes</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="316"/>
<source>Inserting current date time into saved filename</source>
<translation>Inserta la fecha y hora actuales en el nombre de archivo guardado</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="319"/>
<source>Insert current date and time in file name</source>
<translation>Insertar la fecha y hora actuales en el nombre de archivo</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="366"/>
<source>Autosave screenshot</source>
<translation>Guardar automáticamente la captura de pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="378"/>
<source>Save first screenshot</source>
<translation>Guardar la primera captura de pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="245"/>
<source>Image quality</source>
<translation>Calidad de la imagen</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="251"/>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Calidad de imagen (1 - archivo pequeño, 100 - alta calidad)</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="387"/>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>Permitir múltiples instancias de ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="400"/>
<source>Enable external viewer</source>
<translation>Habilitar el visor externo</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="407"/>
<source>Fit to edges only inside selected screen area</source>
<translation>Ajustar a los bordes solo en el área de pantalla seleccionada</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="410"/>
<source>Fit to edges inside selected area</source>
<translation>Ajustar a los bordes en el área seleccionada</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="448"/>
<source>Show ScreenGrab in the system tray</source>
<translation>Mostrar ScreenGrab en la bandeja del sistema</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="533"/>
<source>Minimize to tray on click close button</source>
<translation>Minimizar a la bandeja al hacer clic en el botón de cierre</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="536"/>
<source>Minimize to tray when closing</source>
<translation>Minimizar a la bandeja al cerrar</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="575"/>
<source>Action</source>
<translation>Acción</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="585"/>
<source>Global shortcuts</source>
<translation>Atajos globales</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="592"/>
<source>Fill screen</source>
<translation>Rellenar la pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="597"/>
<source>Active window</source>
<translation>Ventana activa</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="602"/>
<source>Area select</source>
<translation>Selección del area</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="608"/>
<source>Local shortcuts</source>
<translation>Atajos locales</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="612"/>
<source>New screen</source>
<translation>Nueva pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="617"/>
<source>Save screen</source>
<translation>Grabar la pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="622"/>
<source>Copy screen</source>
<translation>Copiar la pantalla</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="632"/>
<source>Help</source>
<translation>Ayuda</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="655"/>
<source>Not defined</source>
<translation>No definido</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="77"/>
<source>Main</source>
<translation>Principal</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="87"/>
<source>System tray</source>
<translation>Bandeja del sistema</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="122"/>
<source>Path to default selection dir for saving</source>
<translation>Ruta al directorio seleccionado por defecto para guardar</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="135"/>
<source>Browse filesystem</source>
<translation>Explorar el sistema de archivos</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="138"/>
<source>Browse</source>
<translation>Explorar</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="168"/>
<source>Default filename</source>
<translation>Nombre por defecto</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="179"/>
<source>Format</source>
<translation>Formato</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="211"/>
<source>Copy file name to the clipboard when saving</source>
<translation>Copiar el nombre de archivo al portapapeles al guardar</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="225"/>
<source>Do not copy</source>
<translation>No copiar</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="230"/>
<source>Copy file name only</source>
<translation>Copiar solo el nombre del archivo</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="235"/>
<source>Copy full file path</source>
<translation>Copiar la ruta completa del archivo</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="515"/>
<source> sec</source>
<translation> s</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="82"/>
<source>Advanced</source>
<translation>Avanzado</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="116"/>
<source>Default save directory</source>
<translation>Directorio por omisión donde guardar</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="148"/>
<source>Default file</source>
<translation>Archivo por omisión</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="161"/>
<source>Name:</source>
<translation>Nombre:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="328"/>
<source>Template: </source>
<translation>Plantilla: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="353"/>
<source>Example: </source>
<translation>Ejemplo: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="363"/>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Guarda automaticamente las capturas de pantalla en un proceso de grabacion</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="457"/>
<source>Tray messages:</source>
<translation>Mensajes en bandeja:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="470"/>
<source>Tray messages display mode</source>
<translation>Modo de presentación de mensajes en bandeja</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="474"/>
<source>Never</source>
<translation>Nunca</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="479"/>
<source>Tray mode</source>
<translation>Modo en bandeja</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="484"/>
<source>Always</source>
<translation>Siempre</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="92"/>
<source>Shortcuts</source>
<translation>Atajos de teclado</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="390"/>
<source>Allow multiple instances of ScreenGrab</source>
<translation>Permitir múltiples instancias de ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="397"/>
<source>Open in external viewer on double click</source>
<translation>Abrir en el visor externo al hacer doble clic</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="580"/>
<source>Shortcut</source>
<translation>Atajos</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="637"/>
<source>Quit</source>
<translation>Salir</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="648"/>
<source>Selected shortcut:</source>
<translation>Atajo seleccionado:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="496"/>
<source>Time of display tray messages</source>
<translation>Duración de los mensajes de bandeja</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="512"/>
<source>Time to display tray messages</source>
<translation>Tiempo hasta mostrar mensajes de bandeja</translation>
</message>
</context>
</TS>

View File

@ -1,874 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="es_ES">
<context>
<name>AboutDialog</name>
<message>
<location filename="../src/ui/about.cpp" line="37"/>
<source>built on </source>
<translation>construído en </translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="42"/>
<source>using Qt </source>
<translation>usando Qt </translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="52"/>
<source>About</source>
<translation>Acerca</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="53"/>
<source>Thanks</source>
<translation>Agradecimientos</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="122"/>
<source>Licensed under the </source>
<translation>Licencia bajo la </translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="54"/>
<source>Help us</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="115"/>
<location filename="../src/ui/about.cpp" line="144"/>
<source>E-Mail</source>
<translation>Correo E</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="118"/>
<source>Web site</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="126"/>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation type="unfinished">Copyright &amp;copy; 2009-2012, Artem &apos;DOOMer&apos; Galichkin {2009-2013,?}</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="136"/>
<source>What you can do?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="110"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="112"/>
<source>It is a light and powerful application and has been written using the Qt framework, so that you are able to use in Windows and Linux.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="133"/>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="139"/>
<source>Translate ScreenGrab to other languages</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="140"/>
<source>Make suggestions for next releases</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="141"/>
<source>Report bugs and issues</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="148"/>
<source>Bug tracker</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="158"/>
<source>Translate:</source>
<translation>Traducciones:</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="160"/>
<source> Brazilian Portuguese translation</source>
<translation>Brasil - Portugués</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="161"/>
<source>Marcio Moraes</source>
<translation>Marcio Moraes</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="163"/>
<source> Ukrainian translation</source>
<translation>Ucraniano</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="164"/>
<source>Gennadi Motsyo</source>
<translation>Gennadi Motsyo</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="166"/>
<source> Spanish translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="167"/>
<source>Burjans L García D</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="169"/>
<source> Italian translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="173"/>
<source>Testing:</source>
<translation>Pruebas:</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="175"/>
<source>Dual monitor support and other in Linux</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="176"/>
<source>Dual monitor support in Linux</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="177"/>
<source>win32-build [Windows XP and 7]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="178"/>
<source>old win32-build [Windows Vista]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="179"/>
<source>win32-build [Windows 7]</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<location filename="../src/ui/configwidget.cpp" line="317"/>
<source>Select directory</source>
<translation>Selecciona el directorio</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="223"/>
<location filename="../src/ui/configwidget.cpp" line="330"/>
<source>Warning</source>
<translation>Cuidado</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="222"/>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="329"/>
<source>Do you want to reset the settings to the defaults?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="347"/>
<source>None</source>
<translation>No</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="393"/>
<source>Example: </source>
<translation>Ejemplo: </translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="449"/>
<source>This key is already used in your system! Please select another.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="455"/>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="473"/>
<source>This key is not supported on your system!</source>
<translation>Esta tecla nos es admitida en su sistema!</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="508"/>
<source>Error</source>
<translation>Error</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<location filename="../src/core/core.cpp" line="171"/>
<source>New screen</source>
<translation>Nueva captura</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="171"/>
<source>New screen is getted!</source>
<translation>Nueva captura obtenida</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="303"/>
<source>Saved</source>
<translation>Guardado</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="327"/>
<source>Name of saved file is copied to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="345"/>
<source>Copied</source>
<translation>Copiado</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="303"/>
<source>Saved to </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="333"/>
<source>Path to saved file is copied to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="345"/>
<source>Screenshot is copied to clipboard</source>
<translation>Captura copiada al portapapeles</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<source>Direct link:</source>
<translation type="obsolete">Enlace directo:</translation>
</message>
<message>
<source>Copy</source>
<translation type="obsolete">Copiar</translation>
</message>
<message>
<source>Upload</source>
<translation type="obsolete">Subir</translation>
</message>
<message>
<source>Cancel</source>
<translation type="obsolete">Cancelar</translation>
</message>
<message>
<source>Close</source>
<translation type="obsolete">Cerrar</translation>
</message>
<message>
<source>Uploaded </source>
<translation type="obsolete">Subido </translation>
</message>
<message>
<source>Receiving a response from the server</source>
<translation type="obsolete">Recibiendo respuesta desde el servidor</translation>
</message>
<message>
<source>Error</source>
<translation type="obsolete">Error</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../src/ui/mainwindow.cpp" line="321"/>
<source>Screenshot </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="325"/>
<source>Double click for open screenshot in external default image viewer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="71"/>
<source>Quit</source>
<translation>Salir</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="66"/>
<source>Save</source>
<translation>Guardar</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="65"/>
<source>New</source>
<translation>Nuevo</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="67"/>
<source>Copy</source>
<translation>Copiar</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="334"/>
<location filename="../src/ui/mainwindow.cpp" line="435"/>
<location filename="../src/ui/mainwindow.cpp" line="464"/>
<source>Hide</source>
<translation>Ocultar</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="70"/>
<source>About</source>
<translation>Acerca de SG</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="524"/>
<source>PNG Files</source>
<translation>Archivo PNG</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="525"/>
<source>JPEG Files</source>
<translation>Archivo JPEG</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="526"/>
<source>BMP Files</source>
<translation>Archivo BMP</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="68"/>
<source>Options</source>
<translation>Opciones</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="379"/>
<source>None</source>
<translation>No</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="442"/>
<source>Show</source>
<translation>Ver</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="546"/>
<source>Save As...</source>
<translation>Guardar como...</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="20"/>
<source>ScreenGrab</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="92"/>
<source>Type: </source>
<translation>Tipo: </translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="105"/>
<source>Type of screenshot</source>
<translation>Tipo de captura</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="112"/>
<source>Full screen</source>
<translation>Pantalla completa</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="117"/>
<source>Window</source>
<translation>Ventana</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="122"/>
<source>Screen area</source>
<translation>Area o porción</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="127"/>
<source>Previous selection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="196"/>
<source>toolBar</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Getting new screenshot</source>
<translation type="vanished">Obtener nueva captura</translation>
</message>
<message>
<source>New Screen</source>
<translation type="vanished">Nueva captura</translation>
</message>
<message>
<source>Ctrl+N</source>
<translation type="vanished">Ctrl+N</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="141"/>
<source>Delay</source>
<translation>Retardo</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="160"/>
<source>Delay in seconds before taking screenshot</source>
<translation>Demora en segundos antes hacer la captura</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="163"/>
<source> sec</source>
<translation> seg</translation>
</message>
<message>
<source>Save current screenshot into graphical file</source>
<translation type="vanished">Guardar actual captura como</translation>
</message>
<message>
<source>Save Screen</source>
<translation type="vanished">Guardar captura</translation>
</message>
<message>
<source>Ctrl+S</source>
<translation type="vanished">Ctrl+S</translation>
</message>
<message>
<source>Copy current screenshot into clipboard</source>
<translation type="vanished">Copiar captura al portapapeles</translation>
</message>
<message>
<source>Copy Screen</source>
<translation type="vanished">Copiar captura</translation>
</message>
<message>
<source>Ctrl+C</source>
<translation type="vanished">Ctrl+C</translation>
</message>
<message>
<source>Options dialog</source>
<translation type="vanished">Opciones de configuración</translation>
</message>
<message>
<source>Ctrl+O</source>
<translation type="vanished">Ctrl+O</translation>
</message>
<message>
<source>Show help information</source>
<translation type="vanished">Ver información de ayuda</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="69"/>
<location filename="../src/ui/mainwindow.cpp" line="131"/>
<source>Help</source>
<translation>Ayuda</translation>
</message>
<message>
<source>F1</source>
<translation type="vanished">F1</translation>
</message>
<message>
<source>Exit from ScreenGrab</source>
<translation type="vanished">Salir de ScreenGrab</translation>
</message>
<message>
<source>Ctrl+Q</source>
<translation type="vanished">Ctrl+Q</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<location filename="../src/core/regionselect.cpp" line="147"/>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Use el arrastre del ratón para marcar el área y luego presione cualquier tecla.</translation>
</message>
<message>
<location filename="../src/core/regionselect.cpp" line="179"/>
<source>%1 x %2 pixels </source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>Upload</source>
<translation type="obsolete">Subir</translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<location filename="../src/ui/aboutwidget.ui" line="128"/>
<source>About Qt</source>
<translation>Acerca de Qt</translation>
</message>
<message>
<location filename="../src/ui/aboutwidget.ui" line="154"/>
<source>Close</source>
<translation>Cerrar</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<location filename="../src/ui/configwidget.ui" line="26"/>
<location filename="../src/ui/configwidget.ui" line="716"/>
<source>Options</source>
<translation>Opciones</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="217"/>
<source>Default saving image format</source>
<translation>Formato por defecto para salvar imagen </translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="296"/>
<source>Default delay before grabbing screen</source>
<translation>Tiempo predeterminando antes de grabar la captura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="418"/>
<source>Inserting current date time into saved filename</source>
<translation>Agregando fecha y tiempo actual al nombre de archivo</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="421"/>
<source>Insert current date and time in file name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="468"/>
<source>Autosave screenshot</source>
<translation>Autosalvar captura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="480"/>
<source>Save first screenshot</source>
<translation>Salvar primera captura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="337"/>
<source>Image quality</source>
<translation>Calidad de la imagen</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="346"/>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Calidad de imagen (1 - archivo pequeño, 100 - alta calidad)</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="489"/>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="502"/>
<source>Enable external viewer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="537"/>
<source>Show ScreenGrab in the system tray</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="622"/>
<source>Minimize to tray on click close button</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="625"/>
<source>Minimize to tray when closing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="664"/>
<source>Action</source>
<translation>Acción</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="674"/>
<source>Global shortcuts</source>
<translation>Atajos globales</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="681"/>
<source>Fill screen</source>
<translation>Pantalla completa</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="686"/>
<source>Active window</source>
<translation>Ventana activa</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="691"/>
<source>Area select</source>
<translation>Seleccione area</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="697"/>
<source>Local shortcuts</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="701"/>
<source>New screen</source>
<translation>Nueva captura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="706"/>
<source>Save screen</source>
<translation>Guardar captura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="711"/>
<source>Copy screen</source>
<translation>Copiar captura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="721"/>
<source>Help</source>
<translation>Ayuda</translation>
</message>
<message>
<source>Exit</source>
<translation type="vanished">Salir</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="744"/>
<source>Not defined</source>
<translation>No definido</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="767"/>
<source>Restore default settings</source>
<translation>Restaurar configuración por defecto</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="770"/>
<source>Defaults</source>
<translation>Predeterminado</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="796"/>
<source>Save settings</source>
<translation>Guardar configuración</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="799"/>
<source>Save</source>
<translation>Guardar</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="812"/>
<source>Discard changes</source>
<translation>Descartar cambios</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="815"/>
<source>Cancel</source>
<translation>Cancelar</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="80"/>
<source>Main</source>
<translation>Principal</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="90"/>
<source>System tray</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="129"/>
<source>Saving</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="143"/>
<source>Default save directory:</source>
<translation>Directorio de salva por defecto:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="152"/>
<source>Path to default selection dir for saving</source>
<translation>Camino elegido por defecto para salvar</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="165"/>
<source>Browse filesystem</source>
<translation>Elije otro dir y carpeta</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="168"/>
<source>Browse</source>
<translation>Cambiar</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="186"/>
<source>Default filename:</source>
<translation>Nombre por defecto:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="193"/>
<source>Default filename</source>
<translation>Nombre por defecto</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="204"/>
<source>Format</source>
<translation>Formato</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="233"/>
<source>Copy file name to the clipboard when saving</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="247"/>
<source>Do not copy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="252"/>
<source>Copy file name only</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="257"/>
<source>Copy full file path</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="281"/>
<source>Screenshot</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="289"/>
<source>Delay:</source>
<translation>Demorar:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="302"/>
<location filename="../src/ui/configwidget.ui" line="604"/>
<source> sec</source>
<translation> seg</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="328"/>
<source>No window decoration</source>
<translation>Sin decoración de ventana</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="85"/>
<source>Advanced</source>
<translation>Avanzado</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="430"/>
<source>Template: </source>
<translation>Plantilla: </translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="455"/>
<source>Example: </source>
<translation>Ejemplo: </translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="465"/>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Salvar captura automaticamente en el proceso de grabacion</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="546"/>
<source>Tray messages:</source>
<translation>Notificar mensajes</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="559"/>
<source>Tray messages display mode</source>
<translation>Mostrar notificación de mensajes</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="563"/>
<source>Never</source>
<translation>Nunca</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="568"/>
<source>Tray mode</source>
<translation>Notificar</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="573"/>
<source>Always</source>
<translation>Siempre</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="95"/>
<source>Shortcuts</source>
<translation>Atajos de teclado</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="492"/>
<source>Allow multiple instances of ScreenGrab</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="499"/>
<source>Open in external viewer on double click</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="669"/>
<source>Shortcut</source>
<translation>Atajos</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="726"/>
<source>Quit</source>
<translation type="unfinished">Salir</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="737"/>
<source>Selected shortcut:</source>
<translation>Atajo seleccionado:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="585"/>
<source>Time of display tray messages</source>
<translation>Tiempo que muestra la notificación</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="601"/>
<source>Time to display tray messages</source>
<translation>Tiempo que muestra la notificación</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="374"/>
<source>Zoom area around mouse in selection mode</source>
<translation>Ampliar el área cerca del ratón en el modo de selección</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,962 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="fr_FR">
<context>
<name>AboutDialog</name>
<message>
<location filename="../src/core/ui/about.cpp" line="34"/>
<source>using Qt </source>
<translation>en utilisant Qt</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="41"/>
<source>About</source>
<translation>À propos</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="42"/>
<source>Thanks</source>
<translation>Remerciements</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="43"/>
<source>Help us</source>
<translation>Aidez nous</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="100"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>est une application multi-plateforme pour créer des captures d&apos;écran de votre bureau.</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="102"/>
<source>It is a light and powerful application, written in Qt.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="105"/>
<source>Website</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="109"/>
<source>Licensed under the </source>
<translation>Sous licence </translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="113"/>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="120"/>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>Vous pouvez nous rejoindre et nous aider si vous appréciez cette application.</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="123"/>
<source>What you can do?</source>
<translation>Que pouvez vous faire ?</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="126"/>
<source>Translate ScreenGrab to other languages</source>
<translation>Traduire ScreenGrab dans d&apos;autres langues</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="127"/>
<source>Make suggestions for next releases</source>
<translation>Faire des suggestions pour les prochaines versions</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="128"/>
<source>Report bugs and issues</source>
<translation>Rapporter les bugs</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="131"/>
<source>Bug tracker</source>
<translation>Bug tracker</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="141"/>
<source>Translate:</source>
<translation>Traductions:</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="143"/>
<source> Brazilian Portuguese translation</source>
<translation>Brésilien - Portuguais</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="144"/>
<source>Marcio Moraes</source>
<translation>Marcio Moraes</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="146"/>
<source> Ukrainian translation</source>
<translation>Ukrainien</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="147"/>
<source>Gennadi Motsyo</source>
<translation>Gennadi Motsyo</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="149"/>
<source> Spanish translation</source>
<translation>Espagnol</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="150"/>
<source>Burjans L García D</source>
<translation>Burjans L García D</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="152"/>
<source> Italian translation</source>
<translation>Italien</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="156"/>
<source>Testing:</source>
<translation>Tests:</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="158"/>
<source>Dual monitor support and other in Linux</source>
<translation>Support du double écran et autres sous Linux</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="159"/>
<source>Dual monitor support in Linux</source>
<translation>Support du double écran sous Linux</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="160"/>
<source>win32-build [Windows XP and 7]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="161"/>
<source>old win32-build [Windows Vista]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="162"/>
<source>win32-build [Windows 7]</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="211"/>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>Le répertoire %1 n&apos;existe pas. Voulez vous le crééer ?</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="212"/>
<location filename="../src/core/ui/configwidget.cpp" line="313"/>
<source>Warning</source>
<translation>Attention</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="301"/>
<source>Select directory</source>
<translation>Choisissez un répertoire</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="312"/>
<source>Do you want to reset the settings to the defaults?</source>
<translation>Voulez vous restaurer les paramètres par défaut ?</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="370"/>
<source>Example: </source>
<translation>Exemple:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="426"/>
<source>This key is already used in your system! Please select another.</source>
<translation>Cette touche est déjà utilisé sur votre système! Veuillez en sélectionner une autre.</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="432"/>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>Cette touche est déjà utilisé dans ScreenGrab! Veuillez en sélectionner une autre.</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="450"/>
<source>This key is not supported on your system!</source>
<translation>Cette touche n&apos;est pas supportée par votre système!</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="485"/>
<source>Error</source>
<translation>Erreur</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<location filename="../src/core/core.cpp" line="63"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>est une application multi-plateforme pour créer des captures d&apos;écran de votre bureau.</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="67"/>
<source>Take a fullscreen screenshot</source>
<translation>Prendre une capture d&apos;écran de l&apos;écran entier</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="71"/>
<source>Take a screenshot of the active window</source>
<translation>Prendre une capture d&apos;écran de la fenêtre active</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="75"/>
<source>Take a screenshot of a selection of the screen</source>
<translation>Prendre une capture d&apos;écran d&apos;une zone sélectionnée</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="79"/>
<source>Run the application with a hidden main window</source>
<translation>Cacher la fenêtre principale</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="421"/>
<source>Saved</source>
<translation>Enregistrement</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="421"/>
<source>Saved to </source>
<translation>Enregistré vers </translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="443"/>
<source>Name of saved file is copied to the clipboard</source>
<translation>Le nom du fichier a é copié dans le presse-papiers</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="449"/>
<source>Path to saved file is copied to the clipboard</source>
<translation>Le chemin du fichier a é copié dans le presse-papiers</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="471"/>
<source>Copied</source>
<translation>Copié</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="471"/>
<source>Screenshot is copied to clipboard</source>
<translation>La capture d&apos;écran a é copié dans le presse-papiers</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="14"/>
<source>Upload to internet</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="22"/>
<source>Upload to</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="76"/>
<source>Direct link:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="98"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="189"/>
<source>Open this link in the default web-browser</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="101"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="192"/>
<source>Open</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="114"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="155"/>
<source>Copy this link to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="117"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="158"/>
<source>Copy</source>
<translation type="unfinished">Copier</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="128"/>
<source>Extended preformed html or bb codes:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="167"/>
<source>Link to delete image:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="300"/>
<source>Upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="313"/>
<source>Cancel</source>
<translation type="unfinished">Annuler</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="58"/>
<source>Size: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="58"/>
<source> pixel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="68"/>
<source>Uploaded </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="71"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="214"/>
<source>Ready to upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="109"/>
<source>Upload processing... Please wait</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="162"/>
<source>Receiving a response from the server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="179"/>
<source>Upload completed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="201"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="216"/>
<source>Close</source>
<translation type="unfinished">Fermer</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="208"/>
<source>Error uploading screenshot</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="209"/>
<source>Error</source>
<translation type="unfinished">Erreur</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="246"/>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="247"/>
<source>Are you sure you want to continue?</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="14"/>
<source>ScreenGrab</source>
<translation>ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="79"/>
<source>Type:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="89"/>
<source>Type of screenshot</source>
<translation>Type de capture</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="96"/>
<source>Full screen</source>
<translation>Plein écran</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="101"/>
<source>Window</source>
<translation>Fenêtre active</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="106"/>
<source>Screen area</source>
<translation>Sélection</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="111"/>
<source>Last selected area</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="141"/>
<source>Delay:</source>
<translation type="unfinished">Délai:</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="203"/>
<source>Zoom area around mouse</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="210"/>
<source>No window decoration</source>
<translation type="unfinished">Pas de décoration des fenêtres</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="154"/>
<source>Delay in seconds before taking screenshot</source>
<translation>Délai en secondes avant de faire la capture</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="160"/>
<source> sec</source>
<translation> sec</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="217"/>
<source>Include mouse pointer</source>
<translation>Inclure le pointeur de la souris</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="246"/>
<source>toolBar</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="64"/>
<source>New</source>
<translation>Nouveau</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="65"/>
<source>Save</source>
<translation>Enregistrer</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="66"/>
<source>Copy</source>
<translation>Copier</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="67"/>
<source>Options</source>
<translation>Options</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="68"/>
<location filename="../src/core/ui/mainwindow.cpp" line="92"/>
<source>Help</source>
<translation>Aide</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="69"/>
<source>About</source>
<translation>À propos</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="70"/>
<source>Quit</source>
<translation>Quitter</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="355"/>
<source>Screenshot </source>
<translation>Capture d&apos;écran </translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="359"/>
<source>Double click to open screenshot in external default image viewer</source>
<translation type="unfinished">Double cliquer pour visualiser la capture dans le lecteur externe</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="558"/>
<source>%1 Files</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="368"/>
<location filename="../src/core/ui/mainwindow.cpp" line="499"/>
<source>Hide</source>
<translation>Cacher</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="157"/>
<source>None</source>
<translation>Non</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="506"/>
<source>Show</source>
<translation>Montrer</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="581"/>
<source>Save As...</source>
<translation>Enregistrer sous...</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="41"/>
<source>Upload the screenshot to the default image host</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="48"/>
<source>Uploading</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<location filename="../src/core/regionselect.cpp" line="160"/>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Utilisez la souris pour dessiner une zone rectangulaire à capture ou n&apos;importe quelle touche, clic droit ou clic de la molette pour quitter.</translation>
</message>
<message>
<location filename="../src/core/regionselect.cpp" line="192"/>
<source>%1 x %2 pixels </source>
<translation>%1 x %2</translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="38"/>
<source>External edit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="49"/>
<source>Edit in...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="103"/>
<source>Upload</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="225"/>
<source>Direct link</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="228"/>
<source>HTML code</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="231"/>
<source>BB code</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="234"/>
<source>HTML code with thumb image</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="237"/>
<source>BB code with thumb image</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="240"/>
<source>URl to delete image</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="24"/>
<source>Common settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="32"/>
<source>Default image host</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="44"/>
<source>Always copy the link to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="65"/>
<source>Hosts settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="73"/>
<source>Settings for: </source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="20"/>
<source>Configuration for imgur.com upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="43"/>
<source>No settings available right now</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<location filename="../src/modules/uploader/imgur/uploader_imgur_widget.ui" line="20"/>
<source>Upload to Imgur</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<location filename="../src/core/ui/aboutwidget.ui" line="128"/>
<source>About Qt</source>
<translation>À propos de Qt</translation>
</message>
<message>
<location filename="../src/core/ui/aboutwidget.ui" line="154"/>
<source>Close</source>
<translation>Fermer</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<location filename="../src/core/ui/configwidget.ui" line="26"/>
<location filename="../src/core/ui/configwidget.ui" line="627"/>
<source>Options</source>
<translation>Options</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="77"/>
<source>Main</source>
<translation>Principal</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="82"/>
<source>Advanced</source>
<translation>Avancé</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="87"/>
<source>System tray</source>
<translation>Barre des tâches</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="92"/>
<source>Shortcuts</source>
<translation>Raccourcis</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="122"/>
<source>Path to default selection dir for saving</source>
<translation>Chemin vers le répertoire d&apos;enregistrement par défaut</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="135"/>
<source>Browse filesystem</source>
<translation>Parcourir le système de fichiers</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="138"/>
<source>Browse</source>
<translation>Parcourir</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="168"/>
<source>Default filename</source>
<translation>Nom de fichier par défaut</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="179"/>
<source>Format</source>
<translation>Format</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="192"/>
<source>Default saving image format</source>
<translation>Format d&apos;image par défaut</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="211"/>
<source>Copy file name to the clipboard when saving</source>
<translation>Copier le nom du fichier dans le presse-papiers lors de l&apos;enregistrement</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="225"/>
<source>Do not copy</source>
<translation>Ne pas copier</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="230"/>
<source>Copy file name only</source>
<translation>Copier le nom du fichier seulement</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="235"/>
<source>Copy full file path</source>
<translation>Copier le chemin complet</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="515"/>
<source> sec</source>
<translation> sec</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="245"/>
<source>Image quality</source>
<translation>Qualité d&apos;image</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="251"/>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Qualité d&apos;image (1 - basse qualité, 100 - haute qualité)</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="116"/>
<source>Default save directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="148"/>
<source>Default file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="161"/>
<source>Name:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="316"/>
<source>Inserting current date time into saved filename</source>
<translation>Ajouter la date au nom de fichier</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="319"/>
<source>Insert current date and time in file name</source>
<translation>Ajouter la date au nom du fichier</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="328"/>
<source>Template: </source>
<translation>Modèle: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="353"/>
<source>Example: </source>
<translation>Exemple: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="363"/>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Enregistrer automatiquement à la capture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="366"/>
<source>Autosave screenshot</source>
<translation>Enregistrer automatiquement les captures</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="378"/>
<source>Save first screenshot</source>
<translation>Enregistrer la première capture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="387"/>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>Autoriser plusieurs instances de ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="390"/>
<source>Allow multiple instances of ScreenGrab</source>
<translation>Autoriser plusieurs instances de ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="397"/>
<source>Open in external viewer on double click</source>
<translation>Ouvir dans le visualiseur externe au double clic</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="400"/>
<source>Enable external viewer</source>
<translation>Activer le visualiseur externe</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="407"/>
<source>Fit to edges only inside selected screen area</source>
<translation>Faire correspondre les bords de la sélection avec les bords de la zone rectangulaire sélectionné</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="410"/>
<source>Fit to edges inside selected area</source>
<translation>Faire correspondre les bords de la sélection avec les bords de la zone rectangulaire sélectionné</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="448"/>
<source>Show ScreenGrab in the system tray</source>
<translation>Placer ScreenGrab dans la barre des tâches</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="457"/>
<source>Tray messages:</source>
<translation>Notifications:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="470"/>
<source>Tray messages display mode</source>
<translation>Mode d&apos;affichage des notifications</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="474"/>
<source>Never</source>
<translation>Jamais</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="479"/>
<source>Tray mode</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="484"/>
<source>Always</source>
<translation>Toujours</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="496"/>
<source>Time of display tray messages</source>
<translation>Temps d&apos;affichage des notifications</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="512"/>
<source>Time to display tray messages</source>
<translation>Temps d&apos;affichage des notifications</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="533"/>
<source>Minimize to tray on click close button</source>
<translation>Minimiser lors d&apos;un clic sur le bouton de fermeture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="536"/>
<source>Minimize to tray when closing</source>
<translation>Minimiser lors d&apos;un clic sur le bouton de fermeture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="575"/>
<source>Action</source>
<translation>Action</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="580"/>
<source>Shortcut</source>
<translation>Raccourci</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="585"/>
<source>Global shortcuts</source>
<translation>Raccourcis globaux</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="592"/>
<source>Fill screen</source>
<translation>Plein écran</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="597"/>
<source>Active window</source>
<translation>Fenêtre active</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="602"/>
<source>Area select</source>
<translation>Sélection</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="608"/>
<source>Local shortcuts</source>
<translation>Raccourcis locaux</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="612"/>
<source>New screen</source>
<translation>Nouvelle capture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="617"/>
<source>Save screen</source>
<translation>Enregistrer la capture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="622"/>
<source>Copy screen</source>
<translation>Copier la capture</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="632"/>
<source>Help</source>
<translation>Aide</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="637"/>
<source>Quit</source>
<translation>Quitter</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="648"/>
<source>Selected shortcut:</source>
<translation>Raccourci sélectionné:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="655"/>
<source>Not defined</source>
<translation>Non défini</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,772 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="he">
<context>
<name>AboutDialog</name>
<message>
<source>using Qt </source>
<translation>בעזרת Qt </translation>
</message>
<message>
<source>About</source>
<translation>על אודות</translation>
</message>
<message>
<source>Thanks</source>
<translation>תודות</translation>
</message>
<message>
<source>Help us</source>
<translation>לסייע לנו</translation>
</message>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>הוא יישום ליצירת צילומי מסך של שולחן העבודה שלך.</translation>
</message>
<message>
<source>It is a light and powerful application, written in Qt.</source>
<translation>מדובר ביישום קטן ועצמתי, שנכתב ב־Qt.</translation>
</message>
<message>
<source>Website</source>
<translation>אתר</translation>
</message>
<message>
<source>Licensed under the </source>
<translation>מוגש בכפוף לרישיון </translation>
</message>
<message>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation>כל הזכויות שמורות &amp;copy; 2009-2013, ארטיום DOOMer גליצ׳קין</translation>
</message>
<message>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>ניתן להצטרף ולסייע לנו אם מתחשק לך. זו הזמנה לכל חובבי היישום.</translation>
</message>
<message>
<source>What you can do?</source>
<translation>במה ניתן לסייע?</translation>
</message>
<message>
<source>Translate ScreenGrab to other languages</source>
<translation>לתרגם את ScreenGrab לשפות נוספות</translation>
</message>
<message>
<source>Make suggestions for next releases</source>
<translation>להציע הצעות לגרסאות הבאות</translation>
</message>
<message>
<source>Report bugs and issues</source>
<translation>לדווח על תקלות</translation>
</message>
<message>
<source>Bug tracker</source>
<translation>עוקב תקלות</translation>
</message>
<message>
<source>Translate:</source>
<translation>תרגום:</translation>
</message>
<message>
<source> Brazilian Portuguese translation</source>
<translation> תרגום לפורטוגלית ברזילאית</translation>
</message>
<message>
<source>Marcio Moraes</source>
<translation>מרצ׳ו מוראס</translation>
</message>
<message>
<source> Ukrainian translation</source>
<translation> תרגום לאוקראינית</translation>
</message>
<message>
<source>Gennadi Motsyo</source>
<translation>גנאדי מוציו</translation>
</message>
<message>
<source> Spanish translation</source>
<translation> תרגום לספרדית</translation>
</message>
<message>
<source>Burjans L García D</source>
<translation>בורשאנס ל גרסיה ד</translation>
</message>
<message>
<source> Italian translation</source>
<translation> תרגום לאיטלקית</translation>
</message>
<message>
<source>Testing:</source>
<translation>בדיקה:</translation>
</message>
<message>
<source>Dual monitor support and other in Linux</source>
<translation>תמיכה בריבוי צדים ועוד בלינוקס</translation>
</message>
<message>
<source>Dual monitor support in Linux</source>
<translation>תמיכה בריבוי צגים בלינוקס</translation>
</message>
<message>
<source>win32-build [Windows XP and 7]</source>
<translation>win32-build [Windows XP ו־7]</translation>
</message>
<message>
<source>old win32-build [Windows Vista]</source>
<translation>win32-build ישנה [Windows Vista]</translation>
</message>
<message>
<source>win32-build [Windows 7]</source>
<translation></translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>התיקייה %1 אינה קיימת. ליצור אותה?</translation>
</message>
<message>
<source>Warning</source>
<translation>אזהרה</translation>
</message>
<message>
<source>Select directory</source>
<translation>נא לבחור תיקייה</translation>
</message>
<message>
<source>Do you want to reset the settings to the defaults?</source>
<translation>לאפס את ההגדרות לבררת המחדל?</translation>
</message>
<message>
<source>Example: </source>
<translation>דוגמה: </translation>
</message>
<message>
<source>This key is already used in your system! Please select another.</source>
<translation>המערכת שלך כבר משתמשת במפתח הזה! נא לבחור באחד אחר.</translation>
</message>
<message>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>התכנית ScreenGrab כבר משתמשת במפתח זה! נא לבחור באחד אחר.</translation>
</message>
<message>
<source>This key is not supported on your system!</source>
<translation>המערכת שלך אינה תומכת במפתח זה!</translation>
</message>
<message>
<source>Error</source>
<translation>שגיאה</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>הוא יישום ליצירת צילומי מסך של שולחן העבודה שלך.</translation>
</message>
<message>
<source>Take a fullscreen screenshot</source>
<translation>צילום המסך כולו</translation>
</message>
<message>
<source>Take a screenshot of the active window</source>
<translation>צילום החלון הפעיל</translation>
</message>
<message>
<source>Take a screenshot of a selection of the screen</source>
<translation>צילום חלק מסוים מהמסך</translation>
</message>
<message>
<source>Run the application with a hidden main window</source>
<translation>הפעלת היישום עם חלון ראשי מוסתר</translation>
</message>
<message>
<source>Saved</source>
<translation>נשמר</translation>
</message>
<message>
<source>Saved to </source>
<translation>נשמר אל </translation>
</message>
<message>
<source>Name of saved file is copied to the clipboard</source>
<translation>שם הקובץ שנשמר מועתק ללוח הגזירים</translation>
</message>
<message>
<source>Path to saved file is copied to the clipboard</source>
<translation>הנתיב לקובץ שנשמר מועתק ללוח הגזירים</translation>
</message>
<message>
<source>Copied</source>
<translation>הועתק</translation>
</message>
<message>
<source>Screenshot is copied to clipboard</source>
<translation>צילום המסך מועתק ללוח הגזירים</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<source>Upload to internet</source>
<translation>העלאה לאינטרנט</translation>
</message>
<message>
<source>Upload to</source>
<translation>העלאה אל</translation>
</message>
<message>
<source>Direct link:</source>
<translation>קישור ישיר:</translation>
</message>
<message>
<source>Open this link in the default web-browser</source>
<translation>פתיחת הקישור הזה בדפדפן בררת המחדל</translation>
</message>
<message>
<source>Open</source>
<translation>פתיחה</translation>
</message>
<message>
<source>Copy this link to the clipboard</source>
<translation>העתקת הקישור הזה אל לוח הגזירים</translation>
</message>
<message>
<source>Copy</source>
<translation>העתקה</translation>
</message>
<message>
<source>Extended preformed html or bb codes:</source>
<translation>קודים של bb או html מורחב:</translation>
</message>
<message>
<source>Link to delete image:</source>
<translation>קישור למחיקת תמונה:</translation>
</message>
<message>
<source>Upload</source>
<translation>העלאה</translation>
</message>
<message>
<source>Cancel</source>
<translation>ביטול</translation>
</message>
<message>
<source>Size: </source>
<translation>גודל: </translation>
</message>
<message>
<source> pixel</source>
<translation> פיקסלים</translation>
</message>
<message>
<source>Uploaded </source>
<translation>הועלה </translation>
</message>
<message>
<source>Ready to upload</source>
<translation>מוכן להעלאה</translation>
</message>
<message>
<source>Upload processing... Please wait</source>
<translation>ההעלאה עוברת עיבוד נא להמתין</translation>
</message>
<message>
<source>Receiving a response from the server</source>
<translation>מתקבלת תגובה מהשרת</translation>
</message>
<message>
<source>Upload completed</source>
<translation>ההעלאה הושלמה</translation>
</message>
<message>
<source>Close</source>
<translation>סגירה</translation>
</message>
<message>
<source>Error uploading screenshot</source>
<translation>העלאת צילום המסך נתקלה בשגיאה</translation>
</message>
<message>
<source>Error</source>
<translation>שגיאה</translation>
</message>
<message>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation>ניתן לפתוח את הקישור הזה בדפדפן בררת המחדל שלך, הוא עשוי למחוק את התמונה שלך מיידית, ללא אזהרות.</translation>
</message>
<message>
<source>Are you sure you want to continue?</source>
<translation>להמשיך?</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<source>ScreenGrab</source>
<translation></translation>
</message>
<message>
<source>Type:</source>
<translation>סוג:</translation>
</message>
<message>
<source>Type of screenshot</source>
<translation>סוג צילום המסך</translation>
</message>
<message>
<source>Full screen</source>
<translation>מסך מלא</translation>
</message>
<message>
<source>Window</source>
<translation>חלון</translation>
</message>
<message>
<source>Screen area</source>
<translation>אזור במסך</translation>
</message>
<message>
<source>Last selected area</source>
<translation>האזור האחרון שנבחר</translation>
</message>
<message>
<source>Delay:</source>
<translation>השהיה:</translation>
</message>
<message>
<source>Delay in seconds before taking screenshot</source>
<translation>השהיה בשניות בטרם צילום המסך</translation>
</message>
<message>
<source>None</source>
<translation>ללא</translation>
</message>
<message>
<source> sec</source>
<translation> שניות</translation>
</message>
<message>
<source>Zoom area around mouse</source>
<translation>התקרבות לאזור שמסביב לסמן</translation>
</message>
<message>
<source>No window decoration</source>
<translation>ללא עיטור חלונות</translation>
</message>
<message>
<source>Include mouse pointer</source>
<translation>כולל סמן העכבר</translation>
</message>
<message>
<source>toolBar</source>
<translation>סרגל כלים</translation>
</message>
<message>
<source>New</source>
<translation>חדש</translation>
</message>
<message>
<source>Save</source>
<translation>שמירה</translation>
</message>
<message>
<source>Copy</source>
<translation>העתקה</translation>
</message>
<message>
<source>Options</source>
<translation>אפשרויות</translation>
</message>
<message>
<source>Help</source>
<translation>עזרה</translation>
</message>
<message>
<source>About</source>
<translation>על אודות</translation>
</message>
<message>
<source>Quit</source>
<translation>יציאה</translation>
</message>
<message>
<source>Screenshot </source>
<translation>צילום מסך </translation>
</message>
<message>
<source>Double click to open screenshot in external default image viewer</source>
<translation>יש ללחוץ לחיצה כפולה כדי לפתוח צילום מסך במציג תמונות חיצוני כבררת מחדל</translation>
</message>
<message>
<source>Hide</source>
<translation>הסתרה</translation>
</message>
<message>
<source>Show</source>
<translation>הצגה</translation>
</message>
<message>
<source>%1 Files</source>
<translation>קובצי %1</translation>
</message>
<message>
<source>Save As...</source>
<translation>שמירה בשם</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<source>Upload the screenshot to the default image host</source>
<translation>העלאת צילום המסך למארח התמונות כבררת מחדל</translation>
</message>
<message>
<source>Uploading</source>
<translation>מתבצעת העלאה</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>נא להשתמש בעכבר שלך כדי לצייר ריבוע לצילום או
לצאת עם כל מקש שהוא או הכפתורים הימני או האמצעי בעכבר.</translation>
</message>
<message>
<source>%1 x %2 pixels </source>
<translation>%1 × %2 פיקסלים </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>External edit</source>
<translation>עריכה חיצונית</translation>
</message>
<message>
<source>Edit in...</source>
<translation>עריכה עם</translation>
</message>
<message>
<source>Upload</source>
<translation>העלאה</translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<source>Direct link</source>
<translation>קישור ישיר</translation>
</message>
<message>
<source>HTML code</source>
<translation>קוד HTML</translation>
</message>
<message>
<source>BB code</source>
<translation>קוד BB</translation>
</message>
<message>
<source>HTML code with thumb image</source>
<translation>קוד HTML עם תמונה מוקטנת</translation>
</message>
<message>
<source>BB code with thumb image</source>
<translation>קוד BB עם תמונה מוקטנת</translation>
</message>
<message>
<source>URl to delete image</source>
<translation>כתובת למחיקת תמונה</translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<source>Common settings</source>
<translation>הגדרות משותפות</translation>
</message>
<message>
<source>Default image host</source>
<translation>מארח תמונות כבררת מחדל</translation>
</message>
<message>
<source>Always copy the link to the clipboard</source>
<translation>תמיד להעתיק את הקישור ללוח הגזירים</translation>
</message>
<message>
<source>Hosts settings</source>
<translation>הגדרות מארחים</translation>
</message>
<message>
<source>Settings for: </source>
<translation>הגדרות עבור: </translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<source>Configuration for imgur.com upload</source>
<translation>הגדרות להעלאה אל imgur.com</translation>
</message>
<message>
<source>No settings available right now</source>
<translation>אין הגדרות זמינות כרגע</translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<source>Upload to Imgur</source>
<translation>העלאה ל־Imgur</translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<source>About Qt</source>
<translation>על אודות Qt</translation>
</message>
<message>
<source>Close</source>
<translation>סגירה</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<source>Options</source>
<translation>אפשרויות</translation>
</message>
<message>
<source>Main</source>
<translation>ראשי</translation>
</message>
<message>
<source>Advanced</source>
<translation>מתקדם</translation>
</message>
<message>
<source>System tray</source>
<translation>מגש מערכת</translation>
</message>
<message>
<source>Shortcuts</source>
<translation>קיצורי דרך</translation>
</message>
<message>
<source>Default save directory</source>
<translation>תיקיית שמירה כבררת מחדל</translation>
</message>
<message>
<source>Path to default selection dir for saving</source>
<translation>נתיב לתיקייה הנבחרת לשמירה כבררת מחדל</translation>
</message>
<message>
<source>Browse filesystem</source>
<translation>עיון במערכת הקבצים</translation>
</message>
<message>
<source>Browse</source>
<translation>עיון</translation>
</message>
<message>
<source>Default file</source>
<translation>קובץ בררת מחדל</translation>
</message>
<message>
<source>Name:</source>
<translation>שם:</translation>
</message>
<message>
<source>Default filename</source>
<translation>שם קובץ כבררת מחדל</translation>
</message>
<message>
<source>Format</source>
<translation>תבנית</translation>
</message>
<message>
<source>Default saving image format</source>
<translation>תבנית לשמירת קבצים כבררת מחדל</translation>
</message>
<message>
<source>Copy file name to the clipboard when saving</source>
<translation>להעתיק את שם הקובץ ללוח הגזירים בעת השמירה</translation>
</message>
<message>
<source>Do not copy</source>
<translation>לא להעתיק</translation>
</message>
<message>
<source>Copy file name only</source>
<translation>להעתיק את שם הקובץ בלבד</translation>
</message>
<message>
<source>Copy full file path</source>
<translation>להעתיק את הנתיב המלא לקובץ</translation>
</message>
<message>
<source>Image quality</source>
<translation>איכות תמונה</translation>
</message>
<message>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>איכות תמונה (1 - קובץ קטן, 100 - איכות גבוהה)</translation>
</message>
<message>
<source>Inserting current date time into saved filename</source>
<translation>הוספת התאריך והשעה הנוכחיים לשם של הקובץ שנשמר</translation>
</message>
<message>
<source>Insert current date and time in file name</source>
<translation>הוספת התאריך והשעה הנוכחית לשם הקובץ</translation>
</message>
<message>
<source>Template: </source>
<translation>תבנית: </translation>
</message>
<message>
<source>Example: </source>
<translation>דוגמה: </translation>
</message>
<message>
<source>Automatically saving screenshots in grabbing process</source>
<translation>שמירת צילומי מסך אוטומטית במהלך הלכידה</translation>
</message>
<message>
<source>Autosave screenshot</source>
<translation>שמירת צילומי מסך אוטומטית</translation>
</message>
<message>
<source>Save first screenshot</source>
<translation>שמירת צילום המסך הראשון</translation>
</message>
<message>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>לאפשר להריץ מספר עותקים של ScreenGrab</translation>
</message>
<message>
<source>Allow multiple instances of ScreenGrab</source>
<translation>לאפשר מספר עותקים של ScreenGrab</translation>
</message>
<message>
<source>Open in external viewer on double click</source>
<translation>פתיחה במציג חיצוני בלחיצה כפולה</translation>
</message>
<message>
<source>Enable external viewer</source>
<translation>הפעלת מציג חיצוני</translation>
</message>
<message>
<source>Fit to edges only inside selected screen area</source>
<translation>התאמה לקצוות רק בתוך אזור המסך הנבחר</translation>
</message>
<message>
<source>Fit to edges inside selected area</source>
<translation>התאמה לקצוות בתוך האזור הנבחר</translation>
</message>
<message>
<source>Show ScreenGrab in the system tray</source>
<translation>הצגת ScreenGrab במגש המערכת</translation>
</message>
<message>
<source>Tray messages:</source>
<translation>הודעות מגש:</translation>
</message>
<message>
<source>Tray messages display mode</source>
<translation>מצב תצוגת הודעות מגש</translation>
</message>
<message>
<source>Never</source>
<translation>לעולם לא</translation>
</message>
<message>
<source>Tray mode</source>
<translation>מצב מגש</translation>
</message>
<message>
<source>Always</source>
<translation>תמיד</translation>
</message>
<message>
<source>Time of display tray messages</source>
<translation>מועד הצגת הודעות מגש</translation>
</message>
<message>
<source>Time to display tray messages</source>
<translation>מועד להצגת הודעות מגש</translation>
</message>
<message>
<source> sec</source>
<translation> שניות</translation>
</message>
<message>
<source>Minimize to tray on click close button</source>
<translation>מזעור למגש עם לחיצה על כפתור הסגירה</translation>
</message>
<message>
<source>Minimize to tray when closing</source>
<translation>מזעור למגש בעת סגירה</translation>
</message>
<message>
<source>Action</source>
<translation>פעולה</translation>
</message>
<message>
<source>Shortcut</source>
<translation>קיצור דרך</translation>
</message>
<message>
<source>Global shortcuts</source>
<translation>קיצורי דרך גלובליים</translation>
</message>
<message>
<source>Fill screen</source>
<translation>מילוי המסך</translation>
</message>
<message>
<source>Active window</source>
<translation>חלון פעיל</translation>
</message>
<message>
<source>Area select</source>
<translation>בחירת אזור</translation>
</message>
<message>
<source>Local shortcuts</source>
<translation>קיצורי דרך מקומיים</translation>
</message>
<message>
<source>New screen</source>
<translation>מסך חדש</translation>
</message>
<message>
<source>Save screen</source>
<translation>שמירת המסך</translation>
</message>
<message>
<source>Copy screen</source>
<translation>העתקת המסך</translation>
</message>
<message>
<source>Help</source>
<translation>עזרה</translation>
</message>
<message>
<source>Quit</source>
<translation>יציאה</translation>
</message>
<message>
<source>Selected shortcut:</source>
<translation>קיצורי דרך נבחרים:</translation>
</message>
<message>
<source>Not defined</source>
<translation>לא מוגדר</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,3 @@
# Translations
Name[it]=Cattura schermata
Comment[it]=Applicazione per catturare schermate

View File

@ -0,0 +1,965 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="it">
<context>
<name>AboutDialog</name>
<message>
<location filename="../src/core/ui/about.cpp" line="34"/>
<source>using Qt </source>
<translation>usando le librerie QT </translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="41"/>
<source>About</source>
<translation>Informazioni</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="42"/>
<source>Thanks</source>
<translation>Grazie a</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="102"/>
<source>It is a light and powerful application, written in Qt.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="105"/>
<source>Website</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="109"/>
<source>Licensed under the </source>
<translation>Rilasciato sotto licenza </translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="43"/>
<source>Help us</source>
<translation>Contribuisci</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="113"/>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translatorcomment>copyright updated to 2015, ok?</translatorcomment>
<translation>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="123"/>
<source>What you can do?</source>
<translation>Cosa puoi fare?</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="100"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>è una applicazione per catturare velocemente schermate per tutte le piattaforme.</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="120"/>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>Se ti piace questa applicazione puoi aiutarci!</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="126"/>
<source>Translate ScreenGrab to other languages</source>
<translation>Puoi tradurre ScreenGrab in altre lingue</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="127"/>
<source>Make suggestions for next releases</source>
<translation>Fai proposte per le prossime versioni</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="128"/>
<source>Report bugs and issues</source>
<translation>Segnala problemi e bug</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="131"/>
<source>Bug tracker</source>
<translation>Segnala bug</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="141"/>
<source>Translate:</source>
<translation>Traduzioni:</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="143"/>
<source> Brazilian Portuguese translation</source>
<translation>Traduzioni in Portoghese Brasiliano</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="144"/>
<source>Marcio Moraes</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="146"/>
<source> Ukrainian translation</source>
<translation>Traduzioni in Ucraino</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="147"/>
<source>Gennadi Motsyo</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="149"/>
<source> Spanish translation</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="150"/>
<source>Burjans L García D</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="152"/>
<source> Italian translation</source>
<translation> Traduziona italiana</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="156"/>
<source>Testing:</source>
<translation>Test:</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="158"/>
<source>Dual monitor support and other in Linux</source>
<translation>Supporto per due monitor e altro in Linux</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="159"/>
<source>Dual monitor support in Linux</source>
<translation>Supporto dual monitor in Linux</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="160"/>
<source>win32-build [Windows XP and 7]</source>
<translation>win32-build [Windows XP and 7]</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="161"/>
<source>old win32-build [Windows Vista]</source>
<translation>win32-build vecchio [Windows Vista]</translation>
</message>
<message>
<location filename="../src/core/ui/about.cpp" line="162"/>
<source>win32-build [Windows 7]</source>
<translation>win32-build [Windows 7]</translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="301"/>
<source>Select directory</source>
<translation>Selezionare la cartella</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="212"/>
<location filename="../src/core/ui/configwidget.cpp" line="313"/>
<source>Warning</source>
<translation>Attenzione</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="211"/>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>La cartella %1 non esiste. Vuoi crearla?</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="312"/>
<source>Do you want to reset the settings to the defaults?</source>
<translation>Vuoi ripristinare la configurazione iniziale?</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="370"/>
<source>Example: </source>
<translation>Esempio: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="426"/>
<source>This key is already used in your system! Please select another.</source>
<translation>Questa scorciatoia è già in uso. Seleziona un altra per favore.</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="432"/>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>Questa scorciatoia è già usata in ScreenGrab. Seleziona un altra.</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="450"/>
<source>This key is not supported on your system!</source>
<translation>Questa chiave non è supportata dal tuo sistema!</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.cpp" line="485"/>
<source>Error</source>
<translation>Errore</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<location filename="../src/core/core.cpp" line="421"/>
<source>Saved</source>
<translation>Salvata</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="443"/>
<source>Name of saved file is copied to the clipboard</source>
<translation>Il nome del file salvato è stato copiato negli appunti</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="471"/>
<source>Copied</source>
<translation>Copiata</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="421"/>
<source>Saved to </source>
<translation>Salvata in </translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="63"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>è una applicazione per catturare velocemente schermate per tutte le piattaforme.</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="67"/>
<source>Take a fullscreen screenshot</source>
<translation>Cattura lo schermo intero</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="71"/>
<source>Take a screenshot of the active window</source>
<translation>Cattura la finestra attiva</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="75"/>
<source>Take a screenshot of a selection of the screen</source>
<translation>Cattura una selezione dello schermo</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="79"/>
<source>Run the application with a hidden main window</source>
<translation>Avvia l&apos;&apos;applicazione con la finestra principale nascosta</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="449"/>
<source>Path to saved file is copied to the clipboard</source>
<translation>Il percorso del file salvato è stato copiato negli appunti</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="471"/>
<source>Screenshot is copied to clipboard</source>
<translation>La schermata è stata copiata negli appunti</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="14"/>
<source>Upload to internet</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="22"/>
<source>Upload to</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="76"/>
<source>Direct link:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="98"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="189"/>
<source>Open this link in the default web-browser</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="101"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="192"/>
<source>Open</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="114"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="155"/>
<source>Copy this link to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="117"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="158"/>
<source>Copy</source>
<translation type="unfinished">Copia</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="128"/>
<source>Extended preformed html or bb codes:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="167"/>
<source>Link to delete image:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="300"/>
<source>Upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="313"/>
<source>Cancel</source>
<translation type="unfinished">Annulla</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="58"/>
<source>Size: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="58"/>
<source> pixel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="68"/>
<source>Uploaded </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="71"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="214"/>
<source>Ready to upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="109"/>
<source>Upload processing... Please wait</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="162"/>
<source>Receiving a response from the server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="179"/>
<source>Upload completed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="201"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="216"/>
<source>Close</source>
<translation type="unfinished">Chiudi</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="208"/>
<source>Error uploading screenshot</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="209"/>
<source>Error</source>
<translation type="unfinished">Errore</translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="246"/>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="247"/>
<source>Are you sure you want to continue?</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="14"/>
<source>ScreenGrab</source>
<translation>ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="79"/>
<source>Type:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="89"/>
<source>Type of screenshot</source>
<translation>Tipo di cattura</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="96"/>
<source>Full screen</source>
<translation>Schermo intero</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="101"/>
<source>Window</source>
<translation>Finestra</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="106"/>
<source>Screen area</source>
<translation>Area dello schermo</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="111"/>
<source>Last selected area</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="141"/>
<source>Delay:</source>
<translation type="unfinished">Ritardo:</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="203"/>
<source>Zoom area around mouse</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="210"/>
<source>No window decoration</source>
<translation type="unfinished">Escludi le decorazioni delle finestre</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="217"/>
<source>Include mouse pointer</source>
<translation>Cattura cursore</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="246"/>
<source>toolBar</source>
<translation>Barra degli strumenti</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="154"/>
<source>Delay in seconds before taking screenshot</source>
<translation>Ritardo in secondi prima di effettuare la cattura</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="160"/>
<source> sec</source>
<translation> sec</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="67"/>
<source>Options</source>
<translation>Impostazioni</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="68"/>
<location filename="../src/core/ui/mainwindow.cpp" line="92"/>
<source>Help</source>
<translation>Guida</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="70"/>
<source>Quit</source>
<translation>Esci</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="65"/>
<source>Save</source>
<translation>Salva</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="64"/>
<source>New</source>
<translation>Nuovo</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="66"/>
<source>Copy</source>
<translation>Copia</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="359"/>
<source>Double click to open screenshot in external default image viewer</source>
<translation type="unfinished">Doppio clic per aprire la cattura in un editor esterno</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="368"/>
<location filename="../src/core/ui/mainwindow.cpp" line="499"/>
<source>Hide</source>
<translation>Nascondi</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="558"/>
<source>%1 Files</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="69"/>
<source>About</source>
<translation>Informazioni su</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="355"/>
<source>Screenshot </source>
<translation>Schermata </translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.ui" line="157"/>
<source>None</source>
<translation>Nessuno</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="506"/>
<source>Show</source>
<translation>Mostra</translation>
</message>
<message>
<location filename="../src/core/ui/mainwindow.cpp" line="581"/>
<source>Save As...</source>
<translation>Salva con nome...</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="41"/>
<source>Upload the screenshot to the default image host</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="48"/>
<source>Uploading</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<location filename="../src/core/regionselect.cpp" line="160"/>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Usa il mouse per delineare un rettangolo da catturare o esci premendo
un tasto qualsiasi o usando il tasto destro o centrale del mouse.</translation>
</message>
<message>
<location filename="../src/core/regionselect.cpp" line="192"/>
<source>%1 x %2 pixels </source>
<translation>%1 x %2 pixel </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="38"/>
<source>External edit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/extedit/moduleextedit.cpp" line="49"/>
<source>Edit in...</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="103"/>
<source>Upload</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="225"/>
<source>Direct link</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="228"/>
<source>HTML code</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="231"/>
<source>BB code</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="234"/>
<source>HTML code with thumb image</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="237"/>
<source>BB code with thumb image</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="240"/>
<source>URl to delete image</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="24"/>
<source>Common settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="32"/>
<source>Default image host</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="44"/>
<source>Always copy the link to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="65"/>
<source>Hosts settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="73"/>
<source>Settings for: </source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="20"/>
<source>Configuration for imgur.com upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="43"/>
<source>No settings available right now</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<location filename="../src/modules/uploader/imgur/uploader_imgur_widget.ui" line="20"/>
<source>Upload to Imgur</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<location filename="../src/core/ui/aboutwidget.ui" line="128"/>
<source>About Qt</source>
<translation>Informazioni su QT</translation>
</message>
<message>
<location filename="../src/core/ui/aboutwidget.ui" line="154"/>
<source>Close</source>
<translation>Chiudi</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<location filename="../src/core/ui/configwidget.ui" line="26"/>
<location filename="../src/core/ui/configwidget.ui" line="627"/>
<source>Options</source>
<translation>Impostazioni</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="192"/>
<source>Default saving image format</source>
<translation>Formato standard di salvataggio immagine</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="316"/>
<source>Inserting current date time into saved filename</source>
<translation>Inserisci la data e l&apos;orario corrente nel nome file</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="319"/>
<source>Insert current date and time in file name</source>
<translation>Inserisci data e ora nel nome del file</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="366"/>
<source>Autosave screenshot</source>
<translation>Salva la cattura automaticamente</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="378"/>
<source>Save first screenshot</source>
<translation>Salva la prima cattura</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="245"/>
<source>Image quality</source>
<translation>Qualità imagine</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="251"/>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Qualità immagine (1 -bassa, 100 massima qualità)</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="387"/>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>Permetti istanze multiple di ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="400"/>
<source>Enable external viewer</source>
<translation>Abilita visualizzatore esterno</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="407"/>
<source>Fit to edges only inside selected screen area</source>
<translatorcomment>Looks like not present in GUI</translatorcomment>
<translation>Adatta ai bordi all&apos;interno della selezione</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="410"/>
<source>Fit to edges inside selected area</source>
<translation>Adatta a bordi all&apos;interno della selezione</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="448"/>
<source>Show ScreenGrab in the system tray</source>
<translation>Mostra ScreenGrab nel vassoio di sistema</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="533"/>
<source>Minimize to tray on click close button</source>
<translation>Minimizza nel vassoio di sistema cliccando il pulsante chiudi</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="536"/>
<source>Minimize to tray when closing</source>
<translation>Minimizza nel vassoio alla chiusura</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="575"/>
<source>Action</source>
<translation>Azione</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="585"/>
<source>Global shortcuts</source>
<translation>Scorciatoie globali</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="592"/>
<source>Fill screen</source>
<translation>Tutto schermo</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="597"/>
<source>Active window</source>
<translation>Finestra attiva</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="602"/>
<source>Area select</source>
<translation>Selezione area</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="608"/>
<source>Local shortcuts</source>
<translation>Scorciatoie locali</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="612"/>
<source>New screen</source>
<translation>Nuova cattura</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="617"/>
<source>Save screen</source>
<translation>Salva cattura</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="622"/>
<source>Copy screen</source>
<translation>Copia cattura</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="632"/>
<source>Help</source>
<translation>Guida</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="655"/>
<source>Not defined</source>
<translation>Non definito</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="77"/>
<source>Main</source>
<translation>Generale</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="87"/>
<source>System tray</source>
<translation>Vassoio</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="122"/>
<source>Path to default selection dir for saving</source>
<translation>Percorso per i salvataggi predefinito</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="135"/>
<source>Browse filesystem</source>
<translation>Sfoglia le cartelle</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="138"/>
<source>Browse</source>
<translation>Sfoglia</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="168"/>
<source>Default filename</source>
<translation>Nome file predefinito</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="179"/>
<source>Format</source>
<translation>Formato</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="211"/>
<source>Copy file name to the clipboard when saving</source>
<translation>Copia nome del file negli appunti quando salvi</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="225"/>
<source>Do not copy</source>
<translation>Non copiare</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="230"/>
<source>Copy file name only</source>
<translation>Copia solo il nome del file</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="235"/>
<source>Copy full file path</source>
<translation>Copia il percorso completo</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="515"/>
<source> sec</source>
<translation></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="82"/>
<source>Advanced</source>
<translation>Avanzate</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="116"/>
<source>Default save directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="148"/>
<source>Default file</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="161"/>
<source>Name:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="328"/>
<source>Template: </source>
<translation>Modello: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="353"/>
<source>Example: </source>
<translation>Esempio: </translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="363"/>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Salva la schermata automaticamente durante la cattura</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="457"/>
<source>Tray messages:</source>
<translation>Messaggi nell&apos;area di notifica:</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="470"/>
<source>Tray messages display mode</source>
<translation>Modalità di visualizzazione nell&apos;area di notifica</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="474"/>
<source>Never</source>
<translation>Mai</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="479"/>
<source>Tray mode</source>
<translation>Modalità area di notifica</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="484"/>
<source>Always</source>
<translation>Sempre</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="496"/>
<source>Time of display tray messages</source>
<translation>Tempo di esposizione dei messaggi</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="512"/>
<source>Time to display tray messages</source>
<translation>Tempo di esposizione dei messaggi nell&apos;area di notifica</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="92"/>
<source>Shortcuts</source>
<translation>Scorciatoie</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="390"/>
<source>Allow multiple instances of ScreenGrab</source>
<translation>Permetti istanze multiple di ScreenGrab</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="397"/>
<source>Open in external viewer on double click</source>
<translation>Apri la cattura in un visualizzatore esterno con doppio clic</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="580"/>
<source>Shortcut</source>
<translation>Scorciatoia</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="637"/>
<source>Quit</source>
<translation>Esci</translation>
</message>
<message>
<location filename="../src/core/ui/configwidget.ui" line="648"/>
<source>Selected shortcut:</source>
<translation>Seleziona scorciatoia:</translation>
</message>
</context>
</TS>

View File

@ -1,828 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="it_IT">
<context>
<name>AboutDialog</name>
<message>
<location filename="../src/ui/about.cpp" line="37"/>
<source>built on </source>
<translation>compilato in </translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="42"/>
<source>using Qt </source>
<translation>usando QT</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="52"/>
<source>About</source>
<translation>Informazioni su</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="53"/>
<source>Thanks</source>
<translation>Grazie a</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="122"/>
<source>Licensed under the </source>
<translation>Rilasciato sotto licensa </translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="115"/>
<location filename="../src/ui/about.cpp" line="144"/>
<source>E-Mail</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="54"/>
<source>Help us</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="118"/>
<source>Web site</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="126"/>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation type="unfinished">Copyright &amp;copy; 2009-2010, Artem &apos;DOOMer&apos; Galichkin {2009-2012,?} {2009-2013,?}</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="136"/>
<source>What you can do?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="110"/>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="112"/>
<source>It is a light and powerful application and has been written using the Qt framework, so that you are able to use in Windows and Linux.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="133"/>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="139"/>
<source>Translate ScreenGrab to other languages</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="140"/>
<source>Make suggestions for next releases</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="141"/>
<source>Report bugs and issues</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="148"/>
<source>Bug tracker</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="158"/>
<source>Translate:</source>
<translation>Traduzioni:</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="160"/>
<source> Brazilian Portuguese translation</source>
<translation>Traduzioni in Portoghese Brasiliano</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="161"/>
<source>Marcio Moraes</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="163"/>
<source> Ukrainian translation</source>
<translation>Traduzioni in Ucraino</translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="164"/>
<source>Gennadi Motsyo</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="166"/>
<source> Spanish translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="167"/>
<source>Burjans L García D</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="169"/>
<source> Italian translation</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="173"/>
<source>Testing:</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="175"/>
<source>Dual monitor support and other in Linux</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="176"/>
<source>Dual monitor support in Linux</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="177"/>
<source>win32-build [Windows XP and 7]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="178"/>
<source>old win32-build [Windows Vista]</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/about.cpp" line="179"/>
<source>win32-build [Windows 7]</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<location filename="../src/ui/configwidget.cpp" line="317"/>
<source>Select directory</source>
<translation>Selezionare la cartella</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="223"/>
<location filename="../src/ui/configwidget.cpp" line="330"/>
<source>Warning</source>
<translation>Attenzione</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="222"/>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="329"/>
<source>Do you want to reset the settings to the defaults?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="347"/>
<source>None</source>
<translation>Nessuno</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="393"/>
<source>Example: </source>
<translation>Esempio: </translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="449"/>
<source>This key is already used in your system! Please select another.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="455"/>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="473"/>
<source>This key is not supported on your system!</source>
<translation>Questa chiave non è supportata dal tuo sistema!</translation>
</message>
<message>
<location filename="../src/ui/configwidget.cpp" line="508"/>
<source>Error</source>
<translation>Errore</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<location filename="../src/core/core.cpp" line="171"/>
<source>New screen</source>
<translation>Nuova cattura</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="171"/>
<source>New screen is getted!</source>
<translation>Nuova cattura ottenuta!</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="303"/>
<source>Saved</source>
<translation>Salvata</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="327"/>
<source>Name of saved file is copied to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="345"/>
<source>Copied</source>
<translation>Copiata</translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="303"/>
<source>Saved to </source>
<translation>Salvata in </translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="333"/>
<source>Path to saved file is copied to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/core/core.cpp" line="345"/>
<source>Screenshot is copied to clipboard</source>
<translation>La schermata è stata copiata negli appunti</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<source>Copy</source>
<translation type="obsolete">Copia</translation>
</message>
<message>
<source>Cancel</source>
<translation type="obsolete">Annulla</translation>
</message>
<message>
<source>Close</source>
<translation type="obsolete">Chiudi</translation>
</message>
<message>
<source>Error</source>
<translation type="obsolete">Errore</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../src/ui/mainwindow.ui" line="20"/>
<source>ScreenGrab</source>
<translation>ScreenGrab</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="92"/>
<source>Type: </source>
<translation>Tipo:</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="105"/>
<source>Type of screenshot</source>
<translation>Tipo di cattura</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="112"/>
<source>Full screen</source>
<translation>Tutto schermo</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="117"/>
<source>Window</source>
<translation>Finestra</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="122"/>
<source>Screen area</source>
<translation>Area dello schermo</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="127"/>
<source>Previous selection</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="196"/>
<source>toolBar</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Getting new screenshot</source>
<translation type="vanished">Effettua una nuova cattura</translation>
</message>
<message>
<source>New Screen</source>
<translation type="vanished">Nuova Cattura</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="141"/>
<source>Delay</source>
<translation>Ritardo</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="160"/>
<source>Delay in seconds before taking screenshot</source>
<translation>Ritardo in secondi prima di effettuare la cattura</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.ui" line="163"/>
<source> sec</source>
<translation> sec</translation>
</message>
<message>
<source>Save current screenshot into graphical file</source>
<translation type="vanished">Salva la cattura corrente in un file</translation>
</message>
<message>
<source>Save Screen</source>
<translation type="vanished">Salva Cattura</translation>
</message>
<message>
<source>Copy current screenshot into clipboard</source>
<translation type="vanished">Copia la cattura corrente negli appunti</translation>
</message>
<message>
<source>Copy Screen</source>
<translation type="vanished">Copia Cattura</translation>
</message>
<message>
<source>Options dialog</source>
<translation type="vanished">Finestra delle impostazioni</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="68"/>
<source>Options</source>
<translation>Impostazioni</translation>
</message>
<message>
<source>Show help information</source>
<translation type="vanished">Mosta la guida in linea</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="69"/>
<location filename="../src/ui/mainwindow.cpp" line="131"/>
<source>Help</source>
<translation>Guida</translation>
</message>
<message>
<source>Exit from ScreenGrab</source>
<translation type="vanished">Esci da ScreenGrab</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="71"/>
<source>Quit</source>
<translation>Esci</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="66"/>
<source>Save</source>
<translation>Salva</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="65"/>
<source>New</source>
<translation>Nuovo</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="67"/>
<source>Copy</source>
<translation>Copia</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="334"/>
<location filename="../src/ui/mainwindow.cpp" line="435"/>
<location filename="../src/ui/mainwindow.cpp" line="464"/>
<source>Hide</source>
<translation>Nascondi</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="70"/>
<source>About</source>
<translation>Informazioni su</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="321"/>
<source>Screenshot </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="325"/>
<source>Double click for open screenshot in external default image viewer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="379"/>
<source>None</source>
<translation>Nessuno</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="442"/>
<source>Show</source>
<translation>Mostra</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="524"/>
<source>PNG Files</source>
<translation>File PNG</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="525"/>
<source>JPEG Files</source>
<translation>File JPEG</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="526"/>
<source>BMP Files</source>
<translation>File BMP</translation>
</message>
<message>
<location filename="../src/ui/mainwindow.cpp" line="546"/>
<source>Save As...</source>
<translation>Salva con nome...</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<location filename="../src/core/regionselect.cpp" line="147"/>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Usa il mouse per delineare un rettangolo da catturare o esci premendo
un tasto qualsiasi o usando il tasto destro o centrale del mouse.</translation>
</message>
<message>
<location filename="../src/core/regionselect.cpp" line="179"/>
<source>%1 x %2 pixels </source>
<translation>%1 x %2 pixel </translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<location filename="../src/ui/aboutwidget.ui" line="128"/>
<source>About Qt</source>
<translation>Informazioni su QT</translation>
</message>
<message>
<location filename="../src/ui/aboutwidget.ui" line="154"/>
<source>Close</source>
<translation>Chiudi</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<location filename="../src/ui/configwidget.ui" line="26"/>
<location filename="../src/ui/configwidget.ui" line="716"/>
<source>Options</source>
<translation>Impostazioni</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="217"/>
<source>Default saving image format</source>
<translation>Formato standard di salvataggio immagine</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="296"/>
<source>Default delay before grabbing screen</source>
<translation>Ritardo prima della cattura predefinito</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="418"/>
<source>Inserting current date time into saved filename</source>
<translation>Inserisci la data e l&apos;orario corrente nel nome file</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="421"/>
<source>Insert current date and time in file name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="468"/>
<source>Autosave screenshot</source>
<translation>Salva la cattura automaticamente</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="480"/>
<source>Save first screenshot</source>
<translation>Salva la prima cattura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="337"/>
<source>Image quality</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="346"/>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="489"/>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="502"/>
<source>Enable external viewer</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="537"/>
<source>Show ScreenGrab in the system tray</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="622"/>
<source>Minimize to tray on click close button</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="625"/>
<source>Minimize to tray when closing</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="664"/>
<source>Action</source>
<translation>Azione</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="674"/>
<source>Global shortcuts</source>
<translation>Scorciatoie globali</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="681"/>
<source>Fill screen</source>
<translation>Tutto schermo</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="686"/>
<source>Active window</source>
<translation>Finestra attiva</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="691"/>
<source>Area select</source>
<translation>Selezione area</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="697"/>
<source>Local shortcuts</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="701"/>
<source>New screen</source>
<translation>Nuova cattura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="706"/>
<source>Save screen</source>
<translation>Salva cattura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="711"/>
<source>Copy screen</source>
<translation>Copia cattura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="721"/>
<source>Help</source>
<translation>Guida</translation>
</message>
<message>
<source>Exit</source>
<translation type="obsolete">Esci</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="744"/>
<source>Not defined</source>
<translation>Non definito</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="767"/>
<source>Restore default settings</source>
<translation>Ripristina le impostazioni di fabbrica</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="770"/>
<source>Defaults</source>
<translation>Ripristina</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="796"/>
<source>Save settings</source>
<translation>Salva le impostazioni</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="799"/>
<source>Save</source>
<translation>Salva</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="812"/>
<source>Discard changes</source>
<translation>Annulla le modifiche</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="815"/>
<source>Cancel</source>
<translation>Annulla</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="80"/>
<source>Main</source>
<translation>Generale</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="90"/>
<source>System tray</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="129"/>
<source>Saving</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="143"/>
<source>Default save directory:</source>
<translation>Cartella dei salvataggi predefinita:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="152"/>
<source>Path to default selection dir for saving</source>
<translation>Percorso per i salvataggi predefinito</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="165"/>
<source>Browse filesystem</source>
<translation>Sfoglia le cartelle</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="168"/>
<source>Browse</source>
<translation>Sfoglia</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="186"/>
<source>Default filename:</source>
<translation>Nome file predefinito:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="193"/>
<source>Default filename</source>
<translation>Nome file predefinito</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="204"/>
<source>Format</source>
<translation>Formato</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="233"/>
<source>Copy file name to the clipboard when saving</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="247"/>
<source>Do not copy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="252"/>
<source>Copy file name only</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="257"/>
<source>Copy full file path</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="281"/>
<source>Screenshot</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="289"/>
<source>Delay:</source>
<translation>Ritardo:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="302"/>
<location filename="../src/ui/configwidget.ui" line="604"/>
<source> sec</source>
<translation></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="328"/>
<source>No window decoration</source>
<translation>Escludi le decorazioni delle finestre</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="85"/>
<source>Advanced</source>
<translation>Avanzate</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="430"/>
<source>Template: </source>
<translation>Modello: </translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="455"/>
<source>Example: </source>
<translation>Esempio: </translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="465"/>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Salva la schermata automaticamente durante la cattura</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="546"/>
<source>Tray messages:</source>
<translation>Messaggi nell&apos;area di notifica:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="559"/>
<source>Tray messages display mode</source>
<translation>Modalità di visualizzazione nell&apos;area di notifica</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="563"/>
<source>Never</source>
<translation>Mai</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="568"/>
<source>Tray mode</source>
<translation>Modalità area di notifica</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="573"/>
<source>Always</source>
<translation>Sempre</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="585"/>
<source>Time of display tray messages</source>
<translation>Tempo di esposizione dei messaggi</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="601"/>
<source>Time to display tray messages</source>
<translation>Tempo di esposizione dei messaggi nell&apos;area di notifica</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="95"/>
<source>Shortcuts</source>
<translation>Scorciatoie</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="492"/>
<source>Allow multiple instances of ScreenGrab</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="499"/>
<source>Open in external viewer on double click</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="669"/>
<source>Shortcut</source>
<translation>Scorciatoia</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="726"/>
<source>Quit</source>
<translation type="unfinished">Esci</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="737"/>
<source>Selected shortcut:</source>
<translation>Seleziona scorciatoia:</translation>
</message>
<message>
<location filename="../src/ui/configwidget.ui" line="374"/>
<source>Zoom area around mouse in selection mode</source>
<translation>Ingrandisci l&apos;area attorno al puntatore nella modalità selezione</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,772 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="lt">
<context>
<name>AboutDialog</name>
<message>
<source>using Qt </source>
<translation>naudoja Qt </translation>
</message>
<message>
<source>About</source>
<translation>Apie</translation>
</message>
<message>
<source>Thanks</source>
<translation>Padėkos</translation>
</message>
<message>
<source>Help us</source>
<translation>Padėkite mums</translation>
</message>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>yra daugiaplatformė programa, skirta greitoms jūsų darbalaukio ekrano kopijoms.</translation>
</message>
<message>
<source>It is a light and powerful application, written in Qt.</source>
<translation>Tai yra supaprastinta ir galinga programa, parašyta Qt programavimo kalba.</translation>
</message>
<message>
<source>Website</source>
<translation>Svetainė</translation>
</message>
<message>
<source>Licensed under the </source>
<translation>Licencijuota pagal </translation>
</message>
<message>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation>Autorių teisės &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</translation>
</message>
<message>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>Jeigu norite, galite prisijungti prie mūsų ir mums padėti. Šis kvietimas galioja, jeigu jums patinka ši programa.</translation>
</message>
<message>
<source>What you can do?</source>
<translation> galite daryti?</translation>
</message>
<message>
<source>Translate ScreenGrab to other languages</source>
<translation>Versti ScreenGrab į kitas kalbas</translation>
</message>
<message>
<source>Make suggestions for next releases</source>
<translation>Teikti pasiūlymus kitoms laidoms</translation>
</message>
<message>
<source>Report bugs and issues</source>
<translation>Pranešti apie klaidas ir problemas</translation>
</message>
<message>
<source>Bug tracker</source>
<translation>Klaidų sekiklis</translation>
</message>
<message>
<source>Translate:</source>
<translation>Versti:</translation>
</message>
<message>
<source> Brazilian Portuguese translation</source>
<translation> Brazilijos portugalų vertimas</translation>
</message>
<message>
<source>Marcio Moraes</source>
<translation></translation>
</message>
<message>
<source> Ukrainian translation</source>
<translation> Ukrainiečių vertimas</translation>
</message>
<message>
<source>Gennadi Motsyo</source>
<translation></translation>
</message>
<message>
<source> Spanish translation</source>
<translation> Ispanų vertimas</translation>
</message>
<message>
<source>Burjans L García D</source>
<translation></translation>
</message>
<message>
<source> Italian translation</source>
<translation> Italų vertimas</translation>
</message>
<message>
<source>Testing:</source>
<translation>Testavimas:</translation>
</message>
<message>
<source>Dual monitor support and other in Linux</source>
<translation>Dviejų monitorių palaikymas ir kita sistemoje Linux</translation>
</message>
<message>
<source>Dual monitor support in Linux</source>
<translation>Dviejų monitorių palaikymas sistemoje Linux</translation>
</message>
<message>
<source>win32-build [Windows XP and 7]</source>
<translation>win32-darinys [Windows XP ir 7]</translation>
</message>
<message>
<source>old win32-build [Windows Vista]</source>
<translation>senas win32-darinys [Windows Vista]</translation>
</message>
<message>
<source>win32-build [Windows 7]</source>
<translation>win32-darinys [Windows 7]</translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>Katalogo %1 nėra. Ar norite sukurti?</translation>
</message>
<message>
<source>Warning</source>
<translation>Įspėjimas</translation>
</message>
<message>
<source>Select directory</source>
<translation>Pasirinkite katalogą</translation>
</message>
<message>
<source>Do you want to reset the settings to the defaults?</source>
<translation>Ar norite atstatyti nustatymus į numatytuosius?</translation>
</message>
<message>
<source>Example: </source>
<translation>Pavyzdys: </translation>
</message>
<message>
<source>This key is already used in your system! Please select another.</source>
<translation>Ši klavišų kombinacija jau yra naudojama jūsų sistemoje! Pasirinkite kitą.</translation>
</message>
<message>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>Ši klavišų kombinacija jau yra naudojama programoje ScreenGrab! Pasirinkite kitą.</translation>
</message>
<message>
<source>This key is not supported on your system!</source>
<translation>Ši klavišų kombinacija jūsų sistemoje nėra palaikoma!</translation>
</message>
<message>
<source>Error</source>
<translation>Klaida</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>yra daugiaplatformė programa, skirta greitoms jūsų darbalaukio ekrano kopijoms.</translation>
</message>
<message>
<source>Take a fullscreen screenshot</source>
<translation>Padaryti viso ekrano kopiją</translation>
</message>
<message>
<source>Take a screenshot of the active window</source>
<translation>Padaryti aktyvaus lango ekrano kopiją</translation>
</message>
<message>
<source>Take a screenshot of a selection of the screen</source>
<translation>Padaryti ekrano žymėjimo ekrano kopiją</translation>
</message>
<message>
<source>Run the application with a hidden main window</source>
<translation>Paleisti programą su paslėptu pagrindiniu langu</translation>
</message>
<message>
<source>Saved</source>
<translation>Įrašyta</translation>
</message>
<message>
<source>Saved to </source>
<translation>Įrašyta į </translation>
</message>
<message>
<source>Name of saved file is copied to the clipboard</source>
<translation>Įrašyto failo pavadinimas yra nukopijuotas į iškarpinę</translation>
</message>
<message>
<source>Path to saved file is copied to the clipboard</source>
<translation>Kelias į įrašytą failą yra nukopijuotas į iškarpinę</translation>
</message>
<message>
<source>Copied</source>
<translation>Nukopijuota</translation>
</message>
<message>
<source>Screenshot is copied to clipboard</source>
<translation>Ekrano kopija yra nukopijuota į iškarpinę</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<source>Upload to internet</source>
<translation>Įkelti į internetą</translation>
</message>
<message>
<source>Upload to</source>
<translation>Įkelti į</translation>
</message>
<message>
<source>Direct link:</source>
<translation>Tiesioginė nuoroda:</translation>
</message>
<message>
<source>Open this link in the default web-browser</source>
<translation>Atverti š nuorodą numatytojoje saityno naršyklėje</translation>
</message>
<message>
<source>Open</source>
<translation>Atverti</translation>
</message>
<message>
<source>Copy this link to the clipboard</source>
<translation>Kopijuoti š nuorodą į iškarpinę</translation>
</message>
<message>
<source>Copy</source>
<translation>Kopijuoti</translation>
</message>
<message>
<source>Extended preformed html or bb codes:</source>
<translation>Išplėstiniai anksto suformuoti html ar bb kodai:</translation>
</message>
<message>
<source>Link to delete image:</source>
<translation>Nuoroda paveikslo ištrynimui:</translation>
</message>
<message>
<source>Upload</source>
<translation>Įkelti</translation>
</message>
<message>
<source>Cancel</source>
<translation>Atsisakyti</translation>
</message>
<message>
<source>Size: </source>
<translation>Dydis: </translation>
</message>
<message>
<source> pixel</source>
<translation> pikselių</translation>
</message>
<message>
<source>Uploaded </source>
<translation>Įkelta </translation>
</message>
<message>
<source>Ready to upload</source>
<translation>Pasiruošę įkelti</translation>
</message>
<message>
<source>Upload processing... Please wait</source>
<translation>Vykdomas įkėlimas... Palaukite</translation>
</message>
<message>
<source>Receiving a response from the server</source>
<translation>Gaunamas atsakymas serverio</translation>
</message>
<message>
<source>Upload completed</source>
<translation>Įkėlimas užbaigtas</translation>
</message>
<message>
<source>Close</source>
<translation>Užverti</translation>
</message>
<message>
<source>Error uploading screenshot</source>
<translation>Klaida, įkeliant ekrano kopiją</translation>
</message>
<message>
<source>Error</source>
<translation>Klaida</translation>
</message>
<message>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation>Atverti š nuorodą numatytojoje saityno naršyklėje, tai gali karto, be jokių įspėjimų ištrinti jūsų įkeltą paveikslą.</translation>
</message>
<message>
<source>Are you sure you want to continue?</source>
<translation>Ar tikrai norite tęsti?</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<source>ScreenGrab</source>
<translation></translation>
</message>
<message>
<source>Type:</source>
<translation>Tipas:</translation>
</message>
<message>
<source>Type of screenshot</source>
<translation>Ekrano kopijos tipas</translation>
</message>
<message>
<source>Full screen</source>
<translation>Visas ekranas</translation>
</message>
<message>
<source>Window</source>
<translation>Langas</translation>
</message>
<message>
<source>Screen area</source>
<translation>Ekrano sritis</translation>
</message>
<message>
<source>Last selected area</source>
<translation>Paskutinė žymėta sritis</translation>
</message>
<message>
<source>Delay:</source>
<translation>Delsa:</translation>
</message>
<message>
<source>Delay in seconds before taking screenshot</source>
<translation>Delsa, sekundėmis, prieš darant ekrano kopiją</translation>
</message>
<message>
<source>None</source>
<translation>Nėra</translation>
</message>
<message>
<source> sec</source>
<translation> sek.</translation>
</message>
<message>
<source>Zoom area around mouse</source>
<translation>Didinti srities aplink pelę dydį</translation>
</message>
<message>
<source>No window decoration</source>
<translation>Be langų dekoracijų</translation>
</message>
<message>
<source>Include mouse pointer</source>
<translation>Įtraukti pelės rodyklę</translation>
</message>
<message>
<source>toolBar</source>
<translation>Įrankių juosta</translation>
</message>
<message>
<source>New</source>
<translation>Nauja</translation>
</message>
<message>
<source>Save</source>
<translation>Įrašyti</translation>
</message>
<message>
<source>Copy</source>
<translation>Kopijuoti</translation>
</message>
<message>
<source>Options</source>
<translation>Parinktys</translation>
</message>
<message>
<source>Help</source>
<translation>Žinynas</translation>
</message>
<message>
<source>About</source>
<translation>Apie</translation>
</message>
<message>
<source>Quit</source>
<translation>Išeiti</translation>
</message>
<message>
<source>Screenshot </source>
<translation>Ekrano kopija </translation>
</message>
<message>
<source>Double click to open screenshot in external default image viewer</source>
<translation>Spustelėkite du kartus, norėdami atverti ekrano kopiją numatytojoje paveikslų žiūryklėje</translation>
</message>
<message>
<source>Hide</source>
<translation>Slėpti</translation>
</message>
<message>
<source>Show</source>
<translation>Rodyti</translation>
</message>
<message>
<source>%1 Files</source>
<translation>%1 failų</translation>
</message>
<message>
<source>Save As...</source>
<translation>Įrašyti kaip...</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<source>Upload the screenshot to the default image host</source>
<translation>Įkelti ekrano kopiją į numatytąją paveikslų prieglobą</translation>
</message>
<message>
<source>Uploading</source>
<translation>Įkeliama</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Naudokite pelę, norėdami nupiešti stačiakampį, kurio ekrano kopija bus daroma.
Paspauskite bet kurį klavišą arba dešinįjį ar vidurinį pelės mygtuką, norėdami išeiti.</translation>
</message>
<message>
<source>%1 x %2 pixels </source>
<translation>%1 x %2 pikselių </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>External edit</source>
<translation>Išorinis redagavimas</translation>
</message>
<message>
<source>Edit in...</source>
<translation>Redaguoti...</translation>
</message>
<message>
<source>Upload</source>
<translation>Įkelti</translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<source>Direct link</source>
<translation>Tiesioginė nuoroda</translation>
</message>
<message>
<source>HTML code</source>
<translation>HTML kodas</translation>
</message>
<message>
<source>BB code</source>
<translation>BB kodas</translation>
</message>
<message>
<source>HTML code with thumb image</source>
<translation>HTML kodas su miniatiūra</translation>
</message>
<message>
<source>BB code with thumb image</source>
<translation>BB kodas su miniatiūra</translation>
</message>
<message>
<source>URl to delete image</source>
<translation>URL skirtas ištrinti paveikslą</translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<source>Common settings</source>
<translation>Bendri nustatymai</translation>
</message>
<message>
<source>Default image host</source>
<translation>Numatytoji paveikslų priegloba</translation>
</message>
<message>
<source>Always copy the link to the clipboard</source>
<translation>Visada kopijuoti nuorodą į iškarpinę</translation>
</message>
<message>
<source>Hosts settings</source>
<translation>Serverių nustatymai</translation>
</message>
<message>
<source>Settings for: </source>
<translation>Nustatymai skirti: </translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<source>Configuration for imgur.com upload</source>
<translation>imgur.com įkelimo konfigūracija</translation>
</message>
<message>
<source>No settings available right now</source>
<translation>Šiuo metu neprieinami jokie nustatymai</translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<source>Upload to Imgur</source>
<translation>Įkelti į Imgur</translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<source>About Qt</source>
<translation>Apie Qt</translation>
</message>
<message>
<source>Close</source>
<translation>Užverti</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<source>Options</source>
<translation>Parinktys</translation>
</message>
<message>
<source>Main</source>
<translation>Pagrindinės</translation>
</message>
<message>
<source>Advanced</source>
<translation>Išplėstinės</translation>
</message>
<message>
<source>System tray</source>
<translation>Sistemos dėklas</translation>
</message>
<message>
<source>Shortcuts</source>
<translation>Spartieji klavišai</translation>
</message>
<message>
<source>Default save directory</source>
<translation>Numatytasis įrašymo katalogas</translation>
</message>
<message>
<source>Path to default selection dir for saving</source>
<translation>Kelias į numatytąjį pasirinktą katalogą, skirtą įrašymui</translation>
</message>
<message>
<source>Browse filesystem</source>
<translation>Naršyti failų sistemą</translation>
</message>
<message>
<source>Browse</source>
<translation>Naršyti</translation>
</message>
<message>
<source>Default file</source>
<translation>Numatytasis failas</translation>
</message>
<message>
<source>Name:</source>
<translation>Pavadinimas:</translation>
</message>
<message>
<source>Default filename</source>
<translation>Numatytasis failo pavadinimas</translation>
</message>
<message>
<source>Format</source>
<translation>Formatas</translation>
</message>
<message>
<source>Default saving image format</source>
<translation>Numatytasis įrašomų paveikslų formatas</translation>
</message>
<message>
<source>Copy file name to the clipboard when saving</source>
<translation>Įrašant, kopijuoti failų pavadinimą į iškarpinę</translation>
</message>
<message>
<source>Do not copy</source>
<translation>Nekopijuoti</translation>
</message>
<message>
<source>Copy file name only</source>
<translation>Kopijuoti tik failo pavadinimą</translation>
</message>
<message>
<source>Copy full file path</source>
<translation>Kopijuoti pilną failo kelią</translation>
</message>
<message>
<source>Image quality</source>
<translation>Paveikslo kokybė</translation>
</message>
<message>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Paveikslo kokybė (1 - mažas failas, 100 - aukšta kokybė)</translation>
</message>
<message>
<source>Inserting current date time into saved filename</source>
<translation>Dabartinės datos ir laiko įterpimas į įrašomo failo pavadinimą</translation>
</message>
<message>
<source>Insert current date and time in file name</source>
<translation>Įterpti į failo pavadinimą dabartinę datą ir laiką</translation>
</message>
<message>
<source>Template: </source>
<translation>Šablonas: </translation>
</message>
<message>
<source>Example: </source>
<translation>Pavyzdys: </translation>
</message>
<message>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Automatinis ekrano kopijų įrašymas fotografavimo eigoje</translation>
</message>
<message>
<source>Autosave screenshot</source>
<translation>Automatiškai įrašyti ekrano kopiją</translation>
</message>
<message>
<source>Save first screenshot</source>
<translation>Įrašyti pirmąją ekrano kopiją</translation>
</message>
<message>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>Leisti paleisti kelis programos ScreenGrab egzempliorius</translation>
</message>
<message>
<source>Allow multiple instances of ScreenGrab</source>
<translation>Leisti kelis programos ScreenGrab egzempliorius</translation>
</message>
<message>
<source>Open in external viewer on double click</source>
<translation>Du kartus spustelėjus, atverti išorinėje žiūryklėje</translation>
</message>
<message>
<source>Enable external viewer</source>
<translation>Įjungti išorinę žiūryklę</translation>
</message>
<message>
<source>Fit to edges only inside selected screen area</source>
<translation>Talpinti į kraštus tik pažymėtoje ekrano srityje</translation>
</message>
<message>
<source>Fit to edges inside selected area</source>
<translation>Talpinti į kraštus pažymėtoje ekrano srityje</translation>
</message>
<message>
<source>Show ScreenGrab in the system tray</source>
<translation>Rodyti ScreenGrab sistemos dėkle</translation>
</message>
<message>
<source>Tray messages:</source>
<translation>Dėklo pranešimai:</translation>
</message>
<message>
<source>Tray messages display mode</source>
<translation>Dėklo pranešimų rodymo veiksena</translation>
</message>
<message>
<source>Never</source>
<translation>Niekada</translation>
</message>
<message>
<source>Tray mode</source>
<translation>Dėklo veiksena</translation>
</message>
<message>
<source>Always</source>
<translation>Visada</translation>
</message>
<message>
<source>Time of display tray messages</source>
<translation>Dėklo pranešimų rodymo trukmė</translation>
</message>
<message>
<source>Time to display tray messages</source>
<translation>Dėklo pranešimų rodymo trukmė</translation>
</message>
<message>
<source> sec</source>
<translation> sek.</translation>
</message>
<message>
<source>Minimize to tray on click close button</source>
<translation>Spustelėjus užvėrimo mygtuką, suskleisti į dėklą</translation>
</message>
<message>
<source>Minimize to tray when closing</source>
<translation>Užvėrus, suskleisti į dėklą</translation>
</message>
<message>
<source>Action</source>
<translation>Veiksmas</translation>
</message>
<message>
<source>Shortcut</source>
<translation>Spartusis klavišas</translation>
</message>
<message>
<source>Global shortcuts</source>
<translation>Visuotiniai spartieji klavišai</translation>
</message>
<message>
<source>Fill screen</source>
<translation>Visas ekranas</translation>
</message>
<message>
<source>Active window</source>
<translation>Aktyvus langas</translation>
</message>
<message>
<source>Area select</source>
<translation>Pažymėta sritis</translation>
</message>
<message>
<source>Local shortcuts</source>
<translation>Vietiniai spartieji klavišai</translation>
</message>
<message>
<source>New screen</source>
<translation>Nauja ekrano kopija</translation>
</message>
<message>
<source>Save screen</source>
<translation>Įrašyti ekrano kopiją</translation>
</message>
<message>
<source>Copy screen</source>
<translation>Kopijuoti ekrano kopiją</translation>
</message>
<message>
<source>Help</source>
<translation>Žinynas</translation>
</message>
<message>
<source>Quit</source>
<translation>Išeiti</translation>
</message>
<message>
<source>Selected shortcut:</source>
<translation>Pasirinktas spartusis klavišas:</translation>
</message>
<message>
<source>Not defined</source>
<translation>Neapibrėžta</translation>
</message>
</context>
</TS>

View File

@ -0,0 +1,772 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="pl">
<context>
<name>AboutDialog</name>
<message>
<source>using Qt </source>
<translation>używa Qt </translation>
</message>
<message>
<source>About</source>
<translation>O programie</translation>
</message>
<message>
<source>Thanks</source>
<translation>Podziękowania</translation>
</message>
<message>
<source>Help us</source>
<translation>Pomóż nam</translation>
</message>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>jest wieloplatformową aplikacją pozwalającą na szybkie tworzenie zrzutów ekranu.</translation>
</message>
<message>
<source>It is a light and powerful application, written in Qt.</source>
<translation>Jest to lekka i funkcjonalna aplikacja napisana w Qt.</translation>
</message>
<message>
<source>Website</source>
<translation>Strona internetowa</translation>
</message>
<message>
<source>Licensed under the </source>
<translation>Na licencji </translation>
</message>
<message>
<source>Copyright &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</source>
<translation>Prawa autorskie &amp;copy; 2009-2013, Artem &apos;DOOMer&apos; Galichkin</translation>
</message>
<message>
<source>You can join us and help us if you want. This is an invitation if you like this application.</source>
<translation>Możesz dołączyć do nas i pomóc nam jeżeli chcesz i lubisz aplikację.</translation>
</message>
<message>
<source>What you can do?</source>
<translation>Co możesz zrobić?</translation>
</message>
<message>
<source>Translate ScreenGrab to other languages</source>
<translation>Przetłumacz ScreenGrab na inne języki</translation>
</message>
<message>
<source>Make suggestions for next releases</source>
<translation>Podziel się sugestiami na następne wydanie</translation>
</message>
<message>
<source>Report bugs and issues</source>
<translation>Zgłoś błędy i problemy</translation>
</message>
<message>
<source>Bug tracker</source>
<translation></translation>
</message>
<message>
<source>Translate:</source>
<translation>Tłumaczenie:</translation>
</message>
<message>
<source> Brazilian Portuguese translation</source>
<translation> Tłumaczenie na brazylijski portugalski</translation>
</message>
<message>
<source>Marcio Moraes</source>
<translation></translation>
</message>
<message>
<source> Ukrainian translation</source>
<translation> Tłumaczenie ukraińskie</translation>
</message>
<message>
<source>Gennadi Motsyo</source>
<translation></translation>
</message>
<message>
<source> Spanish translation</source>
<translation> Tłumaczenie hiszpańskie</translation>
</message>
<message>
<source>Burjans L García D</source>
<translation></translation>
</message>
<message>
<source> Italian translation</source>
<translation> Tłumaczenie włoskie</translation>
</message>
<message>
<source>Testing:</source>
<translation>Testowanie:</translation>
</message>
<message>
<source>Dual monitor support and other in Linux</source>
<translation>Wsparcie wielu monitorów i inne na Linuksie</translation>
</message>
<message>
<source>Dual monitor support in Linux</source>
<translation>Wsparcie dwóch monitorów na Linuksie</translation>
</message>
<message>
<source>win32-build [Windows XP and 7]</source>
<translation>win32-build [Windows XP i 7]</translation>
</message>
<message>
<source>old win32-build [Windows Vista]</source>
<translation>stary win32-build [Windows Vista]</translation>
</message>
<message>
<source>win32-build [Windows 7]</source>
<translation></translation>
</message>
</context>
<context>
<name>ConfigDialog</name>
<message>
<source>Directory %1 does not exist. Do you want to create it?</source>
<translation>Ścieżka %1 nie istnieje. Czy chcesz utworzyć?</translation>
</message>
<message>
<source>Warning</source>
<translation>Ostrzeżenie</translation>
</message>
<message>
<source>Select directory</source>
<translation>Wybierz położenie</translation>
</message>
<message>
<source>Do you want to reset the settings to the defaults?</source>
<translation>Czy na pewno chcesz przywrócić ustawienia do domyślnych?</translation>
</message>
<message>
<source>Example: </source>
<translation>Przykład: </translation>
</message>
<message>
<source>This key is already used in your system! Please select another.</source>
<translation>Ten klucz jest już używany w Twoim systemie! Wybierz inny.</translation>
</message>
<message>
<source>This key is already used in ScreenGrab! Please select another.</source>
<translation>Ten klucz jest już używany przez ScreenGrab! Wybierz inny.</translation>
</message>
<message>
<source>This key is not supported on your system!</source>
<translation>Ten klucz nie jest obsługiwany przez Twój system!</translation>
</message>
<message>
<source>Error</source>
<translation>Błąd</translation>
</message>
</context>
<context>
<name>Core</name>
<message>
<source>is a crossplatform application for fast creating screenshots of your desktop.</source>
<translation>jest wieloplatformową aplikacją do szybkiego tworzenia zrzutów ekranu pulpitu.</translation>
</message>
<message>
<source>Take a fullscreen screenshot</source>
<translation>Zrób zrzut pełnego ekranu</translation>
</message>
<message>
<source>Take a screenshot of the active window</source>
<translation>Zrób zrzut ekranu aktywnego okna</translation>
</message>
<message>
<source>Take a screenshot of a selection of the screen</source>
<translation>Zrób zrzut zaznaczonego obszaru ekranu</translation>
</message>
<message>
<source>Run the application with a hidden main window</source>
<translation>Uruchom aplikację z ukrytym głównym oknem</translation>
</message>
<message>
<source>Saved</source>
<translation>Zapisano</translation>
</message>
<message>
<source>Saved to </source>
<translation>Zapisano do </translation>
</message>
<message>
<source>Name of saved file is copied to the clipboard</source>
<translation>Nazwa zapisanego pliku została skopiowana do schowka</translation>
</message>
<message>
<source>Path to saved file is copied to the clipboard</source>
<translation>Ścieżka zapisanego pliku została skopiowana do schowka</translation>
</message>
<message>
<source>Copied</source>
<translation>Skopiowano</translation>
</message>
<message>
<source>Screenshot is copied to clipboard</source>
<translation>Zrzut ekranu został skopiowany do schowka</translation>
</message>
</context>
<context>
<name>DialogUploader</name>
<message>
<source>Upload to internet</source>
<translation>Wyślij do Internetu</translation>
</message>
<message>
<source>Upload to</source>
<translation>Wyślij do</translation>
</message>
<message>
<source>Direct link:</source>
<translation>Odnośnik bezpośredni:</translation>
</message>
<message>
<source>Open this link in the default web-browser</source>
<translation>Otwórz odnośnik w domyślnej przeglądarce internetowej</translation>
</message>
<message>
<source>Open</source>
<translation>Otwórz</translation>
</message>
<message>
<source>Copy this link to the clipboard</source>
<translation>Skopiuj ten odnośnik do schowka</translation>
</message>
<message>
<source>Copy</source>
<translation>Kopiuj</translation>
</message>
<message>
<source>Extended preformed html or bb codes:</source>
<translation></translation>
</message>
<message>
<source>Link to delete image:</source>
<translation>Odnośnik do usunięcia obrazu:</translation>
</message>
<message>
<source>Upload</source>
<translation>Wyślij</translation>
</message>
<message>
<source>Cancel</source>
<translation>Anuluj</translation>
</message>
<message>
<source>Size: </source>
<translation>Rozmiar: </translation>
</message>
<message>
<source> pixel</source>
<translation> pikseli</translation>
</message>
<message>
<source>Uploaded </source>
<translation>Wysłano </translation>
</message>
<message>
<source>Ready to upload</source>
<translation>Gotowy do wysłania</translation>
</message>
<message>
<source>Upload processing... Please wait</source>
<translation>Przetwarzanie wysyłania Proszę czekać</translation>
</message>
<message>
<source>Receiving a response from the server</source>
<translation>Otrzymywanie odpowiedzi z serwera</translation>
</message>
<message>
<source>Upload completed</source>
<translation>Zakończono wysyłanie</translation>
</message>
<message>
<source>Close</source>
<translation>Zamknij</translation>
</message>
<message>
<source>Error uploading screenshot</source>
<translation>Wystąpił błąd podczas wysyłania zrzutu ekranu</translation>
</message>
<message>
<source>Error</source>
<translation>Błąd</translation>
</message>
<message>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation>Otwórz ten link w domyślnej przeglądarce internetowej, może on usunąć wysłany obraz bez ostrzeżenia.</translation>
</message>
<message>
<source>Are you sure you want to continue?</source>
<translation>Czy na pewno chcesz kontynuować?</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<source>ScreenGrab</source>
<translation></translation>
</message>
<message>
<source>Type:</source>
<translation>Rodzaj:</translation>
</message>
<message>
<source>Type of screenshot</source>
<translation>Rodzaj zrzutu ekranu</translation>
</message>
<message>
<source>Full screen</source>
<translation>Pełny ekran</translation>
</message>
<message>
<source>Window</source>
<translation>Okno</translation>
</message>
<message>
<source>Screen area</source>
<translation>Fragment ekranu</translation>
</message>
<message>
<source>Last selected area</source>
<translation>Ostatnio zaznaczony obszar</translation>
</message>
<message>
<source>Delay:</source>
<translation>Opóźnienie:</translation>
</message>
<message>
<source>Delay in seconds before taking screenshot</source>
<translation>Opóźnienie w sekundach przed wykonaniem zrzutu ekranu</translation>
</message>
<message>
<source>None</source>
<translation>Brak</translation>
</message>
<message>
<source> sec</source>
<translation> s</translation>
</message>
<message>
<source>Zoom area around mouse</source>
<translation>Powiększ obszar przy kursorze</translation>
</message>
<message>
<source>No window decoration</source>
<translation>Bez dekoracji okna</translation>
</message>
<message>
<source>Include mouse pointer</source>
<translation>Uwzględnij wskaźnik myszy</translation>
</message>
<message>
<source>toolBar</source>
<translation></translation>
</message>
<message>
<source>New</source>
<translation>Nowy</translation>
</message>
<message>
<source>Save</source>
<translation>Zapisz</translation>
</message>
<message>
<source>Copy</source>
<translation>Kopiuj</translation>
</message>
<message>
<source>Options</source>
<translation>Opcje</translation>
</message>
<message>
<source>Help</source>
<translation>Pomoc</translation>
</message>
<message>
<source>About</source>
<translation>O programie</translation>
</message>
<message>
<source>Quit</source>
<translation>Wyjdź</translation>
</message>
<message>
<source>Screenshot </source>
<translation>Zrzut ekranu </translation>
</message>
<message>
<source>Double click to open screenshot in external default image viewer</source>
<translation>Naciśnij dwukrotnie aby otworzyć zrzut ekranu w domyślnej zewnętrznej przeglądarce zdjęć</translation>
</message>
<message>
<source>Hide</source>
<translation>Ukryj</translation>
</message>
<message>
<source>Show</source>
<translation>Pokaż</translation>
</message>
<message>
<source>%1 Files</source>
<translation>%1 plików</translation>
</message>
<message>
<source>Save As...</source>
<translation>Zapisz jako</translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<source>Upload the screenshot to the default image host</source>
<translation>Wyślij zrzut ekranu na domyślny hosting obrazów</translation>
</message>
<message>
<source>Uploading</source>
<translation>Wysyłanie</translation>
</message>
</context>
<context>
<name>QApplication</name>
<message>
<source>Use your mouse to draw a rectangle to screenshot or exit pressing
any key or using the right or middle mouse buttons.</source>
<translation>Użyj myszy aby oznaczyć prostokątny obszar zrzutu ekranu lub wyjdź
używając dowolnego klawisza lub prawego bądź środkowego przycisku myszy.</translation>
</message>
<message>
<source>%1 x %2 pixels </source>
<translation>%1 x %2 pikseli </translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<source>External edit</source>
<translation>Edytuj na zewnątrz</translation>
</message>
<message>
<source>Edit in...</source>
<translation>Edytuj w</translation>
</message>
<message>
<source>Upload</source>
<translation>Wyślij</translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<source>Direct link</source>
<translation>Odnośnik bezpośredni</translation>
</message>
<message>
<source>HTML code</source>
<translation>Kod HTML</translation>
</message>
<message>
<source>BB code</source>
<translation>BBcode</translation>
</message>
<message>
<source>HTML code with thumb image</source>
<translation>Kod HTML z miniaturą</translation>
</message>
<message>
<source>BB code with thumb image</source>
<translation>BBcode z miniaturą</translation>
</message>
<message>
<source>URl to delete image</source>
<translation>URL usuwania obrazu</translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<source>Common settings</source>
<translation>Ustawienia ogólne</translation>
</message>
<message>
<source>Default image host</source>
<translation>Domyślny hosting obrazów</translation>
</message>
<message>
<source>Always copy the link to the clipboard</source>
<translation>Zawsze kopiuj odnośnik do schowka</translation>
</message>
<message>
<source>Hosts settings</source>
<translation>Ustawienia hostów</translation>
</message>
<message>
<source>Settings for: </source>
<translation>Ustawienia dla: </translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<source>Configuration for imgur.com upload</source>
<translation>Konfiguracja wysyłania na imgur.com</translation>
</message>
<message>
<source>No settings available right now</source>
<translation>Ustawienia nie obecnie dostępne</translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<source>Upload to Imgur</source>
<translation>Wyślij na Imgur</translation>
</message>
</context>
<context>
<name>aboutWidget</name>
<message>
<source>About Qt</source>
<translation>O Qt</translation>
</message>
<message>
<source>Close</source>
<translation>Zamknij</translation>
</message>
</context>
<context>
<name>configwidget</name>
<message>
<source>Options</source>
<translation>Opcje</translation>
</message>
<message>
<source>Main</source>
<translation>Główne</translation>
</message>
<message>
<source>Advanced</source>
<translation>Zaawansowane</translation>
</message>
<message>
<source>System tray</source>
<translation>Zasobnik systemowy</translation>
</message>
<message>
<source>Shortcuts</source>
<translation>Skróty</translation>
</message>
<message>
<source>Default save directory</source>
<translation>Domyślny katalog zapisu</translation>
</message>
<message>
<source>Path to default selection dir for saving</source>
<translation>Ścieżka domyślnego zapytania o miejsce zapisu</translation>
</message>
<message>
<source>Browse filesystem</source>
<translation>Przeglądaj system plików</translation>
</message>
<message>
<source>Browse</source>
<translation>Przeglądaj</translation>
</message>
<message>
<source>Default file</source>
<translation>Domyślny plik</translation>
</message>
<message>
<source>Name:</source>
<translation>Nazwa:</translation>
</message>
<message>
<source>Default filename</source>
<translation>Domyślna nazwa pliku</translation>
</message>
<message>
<source>Format</source>
<translation></translation>
</message>
<message>
<source>Default saving image format</source>
<translation>Domyślny format zapisywania obrazów</translation>
</message>
<message>
<source>Copy file name to the clipboard when saving</source>
<translation>Kopiuj nazwę pliku do schowka po zapisaniu</translation>
</message>
<message>
<source>Do not copy</source>
<translation>Nie kopiuj</translation>
</message>
<message>
<source>Copy file name only</source>
<translation>Kopiuj tylko nazwę pliku</translation>
</message>
<message>
<source>Copy full file path</source>
<translation>Kopiuj pełną ścieżkę do pliku</translation>
</message>
<message>
<source>Image quality</source>
<translation>Jakość obrazów</translation>
</message>
<message>
<source>Image quality (1 - small file, 100 - high quality)</source>
<translation>Jakość obrazu (1 mały plik, 100 wysoka jakość)</translation>
</message>
<message>
<source>Inserting current date time into saved filename</source>
<translation>Wstawianie obecnej daty do nazwy zapisywanego pliku</translation>
</message>
<message>
<source>Insert current date and time in file name</source>
<translation>Wstawiaj datę i godzinę w nazwę plików</translation>
</message>
<message>
<source>Template: </source>
<translation>Szablon: </translation>
</message>
<message>
<source>Example: </source>
<translation>Przykład: </translation>
</message>
<message>
<source>Automatically saving screenshots in grabbing process</source>
<translation>Automatyczny zapis zrzutów ekranu w procesie przechwytywania</translation>
</message>
<message>
<source>Autosave screenshot</source>
<translation>Automatycznie zapisuj zrzut ekranu</translation>
</message>
<message>
<source>Save first screenshot</source>
<translation></translation>
</message>
<message>
<source>Allow run multiplies copy of ScreenGrab</source>
<translation>Pozwól na uruchamianie wielu kopii ScreenGrab</translation>
</message>
<message>
<source>Allow multiple instances of ScreenGrab</source>
<translation>Pozwól na wiele instancji ScreenGrab</translation>
</message>
<message>
<source>Open in external viewer on double click</source>
<translation>Otwieraj zewnętrzny podgląd dwukrotnym kliknięciem</translation>
</message>
<message>
<source>Enable external viewer</source>
<translation>Włącz zewnętrzną przeglądarkę</translation>
</message>
<message>
<source>Fit to edges only inside selected screen area</source>
<translation></translation>
</message>
<message>
<source>Fit to edges inside selected area</source>
<translation></translation>
</message>
<message>
<source>Show ScreenGrab in the system tray</source>
<translation>Pokazuj ScreenGrab w zasobniku systemowym</translation>
</message>
<message>
<source>Tray messages:</source>
<translation>Wiadomości w zasobniku:</translation>
</message>
<message>
<source>Tray messages display mode</source>
<translation>Tryb wyświetlania wiadomości w zasobniku</translation>
</message>
<message>
<source>Never</source>
<translation>Nigdy</translation>
</message>
<message>
<source>Tray mode</source>
<translation>Tryb zasobnika</translation>
</message>
<message>
<source>Always</source>
<translation>Zawsze</translation>
</message>
<message>
<source>Time of display tray messages</source>
<translation>Czas wyświetlania wiadomości w zasobniku</translation>
</message>
<message>
<source>Time to display tray messages</source>
<translation>Czas wyświetlania wiadomości w zasobniku</translation>
</message>
<message>
<source> sec</source>
<translation> s</translation>
</message>
<message>
<source>Minimize to tray on click close button</source>
<translation>Minimalizuj do zasobnika po zamknięciu okna</translation>
</message>
<message>
<source>Minimize to tray when closing</source>
<translation>Minimalizuj do zasobnika przy zamykaniu</translation>
</message>
<message>
<source>Action</source>
<translation>Działanie</translation>
</message>
<message>
<source>Shortcut</source>
<translation>Skrót</translation>
</message>
<message>
<source>Global shortcuts</source>
<translation>Globalne skróty</translation>
</message>
<message>
<source>Fill screen</source>
<translation>Wypełnij ekran</translation>
</message>
<message>
<source>Active window</source>
<translation>Aktywne okno</translation>
</message>
<message>
<source>Area select</source>
<translation>Wybór obszaru</translation>
</message>
<message>
<source>Local shortcuts</source>
<translation>Lokalne skróty</translation>
</message>
<message>
<source>New screen</source>
<translation></translation>
</message>
<message>
<source>Save screen</source>
<translation></translation>
</message>
<message>
<source>Copy screen</source>
<translation></translation>
</message>
<message>
<source>Help</source>
<translation>Pomoc</translation>
</message>
<message>
<source>Quit</source>
<translation>Wyjdź</translation>
</message>
<message>
<source>Selected shortcut:</source>
<translation>Wybrany skrót:</translation>
</message>
<message>
<source>Not defined</source>
<translation>Nie zdefiniowano</translation>
</message>
</context>
</TS>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,257 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1">
<context>
<name>DialogUploader</name>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="14"/>
<source>Upload to internet</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="22"/>
<source>Upload to</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="76"/>
<source>Direct link:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="98"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="189"/>
<source>Open this link in the default web-browser</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="101"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="192"/>
<source>Open</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="114"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="155"/>
<source>Copy this link to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="117"/>
<location filename="../src/modules/uploader/dialoguploader.ui" line="158"/>
<source>Copy</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="128"/>
<source>Extended preformed html or bb codes:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="167"/>
<source>Link to delete image:</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="300"/>
<source>Upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.ui" line="313"/>
<source>Cancel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="66"/>
<source>Size: </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="66"/>
<source> pixel</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="76"/>
<source>Uploaded </source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="79"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="238"/>
<source>Ready to upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="119"/>
<source>Upload processing... Please wait</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="183"/>
<source>Receiving a response from the server</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="201"/>
<source>Upload completed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="225"/>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="240"/>
<source>Close</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="232"/>
<source>Error uploading screenshot</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="233"/>
<source>Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="274"/>
<source>Open this link in your default web-browser, it may directly delete your uploaded image, without any warnings.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/dialoguploader.cpp" line="275"/>
<source>Are you sure you want to continue?</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>ModuleUploader</name>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="47"/>
<source>Uploading</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<location filename="../src/modules/uploader/moduleuploader.cpp" line="101"/>
<source>Upload</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader</name>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="228"/>
<source>Direct link</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="231"/>
<source>HTML code</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="234"/>
<source>BB code</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="237"/>
<source>HTML code with thumb image</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="240"/>
<source>BB code with thumb image</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploader.cpp" line="243"/>
<source>URl to delete image</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget</name>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="24"/>
<source>Common settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="32"/>
<source>Default image host</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="44"/>
<source>Always copy the link to the clipboard</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="65"/>
<source>Hosts settings</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/uploaderconfigwidget.ui" line="73"/>
<source>Settings for: </source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_ImgUr</name>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="20"/>
<source>Configuration for imgur.com upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/imgur/uploaderconfigwidget_imgur.ui" line="43"/>
<source>Now is nothing yet</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>UploaderConfigWidget_MediaCrush</name>
<message>
<location filename="../src/modules/uploader/mediacrush/uploaderconfigwidget_mediacrush.ui" line="14"/>
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/mediacrush/uploaderconfigwidget_mediacrush.ui" line="20"/>
<source>Configuration for mediacru.sh upload</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/mediacrush/uploaderconfigwidget_mediacrush.ui" line="43"/>
<source>Now is nothing yet</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader_ImgUr_Widget</name>
<message>
<location filename="../src/modules/uploader/imgur/uploader_imgur_widget.ui" line="20"/>
<source>Upload to ImgUr.com</source>
<translation type="unfinished"></translation>
</message>
</context>
<context>
<name>Uploader_MediaCrush_Widget</name>
<message>
<location filename="../src/modules/uploader/mediacrush/uploader_mediacrush_widget.ui" line="14"/>
<source>Form</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../src/modules/uploader/mediacrush/uploader_mediacrush_widget.ui" line="20"/>
<source>Upload to MediaCrush</source>
<translation type="unfinished"></translation>
</message>
</context>
</TS>