From e49008698214e4451df44bfa380d8c8a8cdfcb55 Mon Sep 17 00:00:00 2001 From: Simon Quigley Date: Sat, 30 Mar 2019 16:59:20 -0500 Subject: [PATCH] Lubuntuify the package. --- AUTHORS | 9 - CHANGELOG | 270 ---- CMakeLists.txt | 58 - COPYING | 280 ----- README.md | 41 - data/lximage-qt-screenshot.desktop.in | 9 - data/lximage-qt.desktop.in | 11 - data/lximage-qt.png | Bin 2866 -> 0 bytes debian/changelog | 6 + debian/control | 24 +- debian/lximage-qt.install | 3 +- debian/source/local-options | 2 - src/CMakeLists.txt | 102 -- src/application.cpp | 189 --- src/application.h | 76 -- src/graphicsscene.cpp | 48 - src/graphicsscene.h | 47 - src/imageview.cpp | 505 -------- src/imageview.h | 134 -- src/img/draw-arrow.svg | 75 -- src/img/draw-circle.svg | 72 -- src/img/draw-none.svg | 75 -- src/img/draw-number.svg | 84 -- src/img/draw-rectangle.svg | 73 -- src/loadimagejob.cpp | 141 --- src/loadimagejob.h | 60 - src/lximage-qt.cpp | 30 - src/lximage-qt.h | 28 - src/mainwindow.cpp | 1101 ----------------- src/mainwindow.h | 183 --- src/mainwindow.ui | 624 ---------- src/modelfilter.cpp | 40 - src/modelfilter.h | 37 - src/mrumenu.cpp | 114 -- src/mrumenu.h | 76 -- src/org.lxde.LxImage.Application.xml | 15 - src/preferencesdialog.cpp | 143 --- src/preferencesdialog.h | 49 - src/preferencesdialog.ui | 140 --- src/resource.qrc | 9 - src/saveimagejob.cpp | 83 -- src/saveimagejob.h | 61 - src/screenshotdialog.cpp | 191 --- src/screenshotdialog.h | 51 - src/screenshotdialog.ui | 161 --- src/screenshotselectarea.cpp | 51 - src/screenshotselectarea.h | 50 - src/screenshotselectareagraphicsview.cpp | 58 - src/screenshotselectareagraphicsview.h | 52 - src/settings.cpp | 88 -- src/settings.h | 168 --- src/translations/CMakeLists.txt | 3 - .../lximage-qt-screenshot_ca.desktop | 4 - .../lximage-qt-screenshot_cs.desktop | 3 - .../lximage-qt-screenshot_da.desktop | 3 - .../lximage-qt-screenshot_de.desktop | 6 - .../lximage-qt-screenshot_el.desktop | 4 - .../lximage-qt-screenshot_es.desktop | 3 - .../lximage-qt-screenshot_fr.desktop | 4 - .../lximage-qt-screenshot_hu.desktop | 6 - .../lximage-qt-screenshot_it.desktop | 4 - .../lximage-qt-screenshot_lt.desktop | 4 - .../lximage-qt-screenshot_pl.desktop | 6 - .../lximage-qt-screenshot_pt.desktop | 4 - .../lximage-qt-screenshot_pt_br.desktop | 4 - .../lximage-qt-screenshot_ru.desktop | 4 - .../lximage-qt-screenshot_tr.desktop | 4 - src/translations/lximage-qt.ts | 631 ---------- src/translations/lximage-qt_ar.ts | 637 ---------- src/translations/lximage-qt_ca.desktop | 4 - src/translations/lximage-qt_ca.ts | 637 ---------- src/translations/lximage-qt_cs.ts | 637 ---------- src/translations/lximage-qt_cy.ts | 631 ---------- src/translations/lximage-qt_da.desktop | 3 - src/translations/lximage-qt_da.ts | 637 ---------- src/translations/lximage-qt_de.desktop | 5 - src/translations/lximage-qt_de.ts | 640 ---------- src/translations/lximage-qt_el.desktop | 4 - src/translations/lximage-qt_el.ts | 637 ---------- src/translations/lximage-qt_en_GB.ts | 631 ---------- src/translations/lximage-qt_es.desktop | 3 - src/translations/lximage-qt_es.ts | 637 ---------- src/translations/lximage-qt_fr.desktop | 4 - src/translations/lximage-qt_fr.ts | 637 ---------- src/translations/lximage-qt_gl.ts | 637 ---------- src/translations/lximage-qt_he.ts | 637 ---------- src/translations/lximage-qt_hr.ts | 631 ---------- src/translations/lximage-qt_hu.desktop | 6 - src/translations/lximage-qt_hu.ts | 631 ---------- src/translations/lximage-qt_id.ts | 641 ---------- src/translations/lximage-qt_is.ts | 631 ---------- src/translations/lximage-qt_it.desktop | 3 - src/translations/lximage-qt_it.ts | 638 ---------- src/translations/lximage-qt_ja.ts | 631 ---------- src/translations/lximage-qt_lt.desktop | 4 - src/translations/lximage-qt_lt.ts | 637 ---------- src/translations/lximage-qt_nb_NO.ts | 637 ---------- src/translations/lximage-qt_nl.ts | 640 ---------- src/translations/lximage-qt_pa.ts | 631 ---------- src/translations/lximage-qt_pl.desktop | 5 - src/translations/lximage-qt_pl.ts | 637 ---------- src/translations/lximage-qt_pt.desktop | 4 - src/translations/lximage-qt_pt.ts | 637 ---------- src/translations/lximage-qt_pt_BR.ts | 638 ---------- src/translations/lximage-qt_ru.desktop | 4 - src/translations/lximage-qt_ru.ts | 637 ---------- src/translations/lximage-qt_sv.ts | 631 ---------- src/translations/lximage-qt_tr.desktop | 4 - src/translations/lximage-qt_tr.ts | 637 ---------- src/translations/lximage-qt_uk.ts | 631 ---------- src/translations/lximage-qt_zh_CN.ts | 637 ---------- src/translations/lximage-qt_zh_TW.ts | 637 ---------- src/upload/imageshackprovider.cpp | 57 - src/upload/imageshackprovider.h | 44 - src/upload/imageshackupload.cpp | 56 - src/upload/imageshackupload.h | 46 - src/upload/imgbbprovider.cpp | 64 - src/upload/imgbbprovider.h | 38 - src/upload/imgbbupload.cpp | 50 - src/upload/imgbbupload.h | 40 - src/upload/imgurprovider.cpp | 43 - src/upload/imgurprovider.h | 42 - src/upload/imgurupload.cpp | 53 - src/upload/imgurupload.h | 44 - src/upload/provider.cpp | 25 - src/upload/provider.h | 55 - src/upload/upload.cpp | 58 - src/upload/upload.h | 97 -- src/upload/uploaddialog.cpp | 154 --- src/upload/uploaddialog.h | 75 -- src/upload/uploaddialog.ui | 93 -- 131 files changed, 18 insertions(+), 27568 deletions(-) delete mode 100644 AUTHORS delete mode 100644 CHANGELOG delete mode 100644 CMakeLists.txt delete mode 100644 COPYING delete mode 100644 README.md delete mode 100644 data/lximage-qt-screenshot.desktop.in delete mode 100644 data/lximage-qt.desktop.in delete mode 100644 data/lximage-qt.png delete mode 100644 debian/source/local-options delete mode 100644 src/CMakeLists.txt delete mode 100644 src/application.cpp delete mode 100644 src/application.h delete mode 100644 src/graphicsscene.cpp delete mode 100644 src/graphicsscene.h delete mode 100644 src/imageview.cpp delete mode 100644 src/imageview.h delete mode 100644 src/img/draw-arrow.svg delete mode 100644 src/img/draw-circle.svg delete mode 100644 src/img/draw-none.svg delete mode 100644 src/img/draw-number.svg delete mode 100644 src/img/draw-rectangle.svg delete mode 100644 src/loadimagejob.cpp delete mode 100644 src/loadimagejob.h delete mode 100644 src/lximage-qt.cpp delete mode 100644 src/lximage-qt.h delete mode 100644 src/mainwindow.cpp delete mode 100644 src/mainwindow.h delete mode 100644 src/mainwindow.ui delete mode 100644 src/modelfilter.cpp delete mode 100644 src/modelfilter.h delete mode 100644 src/mrumenu.cpp delete mode 100644 src/mrumenu.h delete mode 100644 src/org.lxde.LxImage.Application.xml delete mode 100644 src/preferencesdialog.cpp delete mode 100644 src/preferencesdialog.h delete mode 100644 src/preferencesdialog.ui delete mode 100644 src/resource.qrc delete mode 100644 src/saveimagejob.cpp delete mode 100644 src/saveimagejob.h delete mode 100644 src/screenshotdialog.cpp delete mode 100644 src/screenshotdialog.h delete mode 100644 src/screenshotdialog.ui delete mode 100644 src/screenshotselectarea.cpp delete mode 100644 src/screenshotselectarea.h delete mode 100644 src/screenshotselectareagraphicsview.cpp delete mode 100644 src/screenshotselectareagraphicsview.h delete mode 100644 src/settings.cpp delete mode 100644 src/settings.h delete mode 100644 src/translations/CMakeLists.txt delete mode 100644 src/translations/lximage-qt-screenshot_ca.desktop delete mode 100644 src/translations/lximage-qt-screenshot_cs.desktop delete mode 100644 src/translations/lximage-qt-screenshot_da.desktop delete mode 100644 src/translations/lximage-qt-screenshot_de.desktop delete mode 100644 src/translations/lximage-qt-screenshot_el.desktop delete mode 100644 src/translations/lximage-qt-screenshot_es.desktop delete mode 100644 src/translations/lximage-qt-screenshot_fr.desktop delete mode 100644 src/translations/lximage-qt-screenshot_hu.desktop delete mode 100644 src/translations/lximage-qt-screenshot_it.desktop delete mode 100644 src/translations/lximage-qt-screenshot_lt.desktop delete mode 100644 src/translations/lximage-qt-screenshot_pl.desktop delete mode 100644 src/translations/lximage-qt-screenshot_pt.desktop delete mode 100644 src/translations/lximage-qt-screenshot_pt_br.desktop delete mode 100644 src/translations/lximage-qt-screenshot_ru.desktop delete mode 100644 src/translations/lximage-qt-screenshot_tr.desktop delete mode 100644 src/translations/lximage-qt.ts delete mode 100644 src/translations/lximage-qt_ar.ts delete mode 100644 src/translations/lximage-qt_ca.desktop delete mode 100644 src/translations/lximage-qt_ca.ts delete mode 100644 src/translations/lximage-qt_cs.ts delete mode 100644 src/translations/lximage-qt_cy.ts delete mode 100644 src/translations/lximage-qt_da.desktop delete mode 100644 src/translations/lximage-qt_da.ts delete mode 100644 src/translations/lximage-qt_de.desktop delete mode 100644 src/translations/lximage-qt_de.ts delete mode 100644 src/translations/lximage-qt_el.desktop delete mode 100644 src/translations/lximage-qt_el.ts delete mode 100644 src/translations/lximage-qt_en_GB.ts delete mode 100644 src/translations/lximage-qt_es.desktop delete mode 100644 src/translations/lximage-qt_es.ts delete mode 100644 src/translations/lximage-qt_fr.desktop delete mode 100644 src/translations/lximage-qt_fr.ts delete mode 100644 src/translations/lximage-qt_gl.ts delete mode 100644 src/translations/lximage-qt_he.ts delete mode 100644 src/translations/lximage-qt_hr.ts delete mode 100644 src/translations/lximage-qt_hu.desktop delete mode 100644 src/translations/lximage-qt_hu.ts delete mode 100644 src/translations/lximage-qt_id.ts delete mode 100644 src/translations/lximage-qt_is.ts delete mode 100644 src/translations/lximage-qt_it.desktop delete mode 100644 src/translations/lximage-qt_it.ts delete mode 100644 src/translations/lximage-qt_ja.ts delete mode 100644 src/translations/lximage-qt_lt.desktop delete mode 100644 src/translations/lximage-qt_lt.ts delete mode 100644 src/translations/lximage-qt_nb_NO.ts delete mode 100644 src/translations/lximage-qt_nl.ts delete mode 100644 src/translations/lximage-qt_pa.ts delete mode 100644 src/translations/lximage-qt_pl.desktop delete mode 100644 src/translations/lximage-qt_pl.ts delete mode 100644 src/translations/lximage-qt_pt.desktop delete mode 100644 src/translations/lximage-qt_pt.ts delete mode 100644 src/translations/lximage-qt_pt_BR.ts delete mode 100644 src/translations/lximage-qt_ru.desktop delete mode 100644 src/translations/lximage-qt_ru.ts delete mode 100644 src/translations/lximage-qt_sv.ts delete mode 100644 src/translations/lximage-qt_tr.desktop delete mode 100644 src/translations/lximage-qt_tr.ts delete mode 100644 src/translations/lximage-qt_uk.ts delete mode 100644 src/translations/lximage-qt_zh_CN.ts delete mode 100644 src/translations/lximage-qt_zh_TW.ts delete mode 100644 src/upload/imageshackprovider.cpp delete mode 100644 src/upload/imageshackprovider.h delete mode 100644 src/upload/imageshackupload.cpp delete mode 100644 src/upload/imageshackupload.h delete mode 100644 src/upload/imgbbprovider.cpp delete mode 100644 src/upload/imgbbprovider.h delete mode 100644 src/upload/imgbbupload.cpp delete mode 100644 src/upload/imgbbupload.h delete mode 100644 src/upload/imgurprovider.cpp delete mode 100644 src/upload/imgurprovider.h delete mode 100644 src/upload/imgurupload.cpp delete mode 100644 src/upload/imgurupload.h delete mode 100644 src/upload/provider.cpp delete mode 100644 src/upload/provider.h delete mode 100644 src/upload/upload.cpp delete mode 100644 src/upload/upload.h delete mode 100644 src/upload/uploaddialog.cpp delete mode 100644 src/upload/uploaddialog.h delete mode 100644 src/upload/uploaddialog.ui diff --git a/AUTHORS b/AUTHORS deleted file mode 100644 index db919a9..0000000 --- a/AUTHORS +++ /dev/null @@ -1,9 +0,0 @@ -Upstream Authors: - LXQt team: https://lxqt.org - Hong Jen Yee (PCMan) - -Copyright: - Copyright (c) 2013-2018 LXQt team - -License: GPL-2+ and LGPL-2.1+ -The full text of the licenses can be found in the 'COPYING' file. diff --git a/CHANGELOG b/CHANGELOG deleted file mode 100644 index 7b7fdd2..0000000 --- a/CHANGELOG +++ /dev/null @@ -1,270 +0,0 @@ -lximage-qt-0.14.1 / 2019-02-25 -============================== - - * Bumped version to 0.14.1 - * Only translations was changed. - -lximage-qt-0.14.0 / 2019-01-15 -============================== - - * Bumped version to 0.14.0 - the big bump was needed - to prevent packaging conflicts with the merged back - translations - * Set the required version of libfm-qt to 0.14.0. - * New Features: - - Render image EXIF data (by Rndevfx) - - Added confirmation dialog when using "Save as" with a - filename without extension. - - Add ImgBB upload provider - - Add ability to annotate images - - Add copy button to upload dialog - - Implement MRU list - * Fixed implementations: - - Several codestyle improvements like null pointers as nullptr, - const references, indent fixes - - Settings: add const to getters - - Fixed a FTBFS due to libfm header inclusion - - Update copyright block in source files - - Fixed thumbnail selection (with deletion) - - Don't use automatic string conversions - * Translation updates - * Improved cmake scripting - - Set cmake_minimum_required to 3.1.0 - - Removed locale compile definitons - - Use XFIXES_LDFLAGS instead of XFIXES_LIBRARIES - * Moved translations from lxqt-l10n back to lximage-qt - - Removed obsolete translation fuctionality - - Added translation promo in README.md - -lximage-qt-0.7.0 / 2018-05-21 -============================= - - * Bumped minor version to 7 - * Spanish translation update - * Just made it compilable again - * Removed not needed release.sh - * CMake: Prevent in-source builds - * fix some http->https - * Fix some mentions of LXDE - * Drop Qt foreach - * cmake: Handle CMP0071 - * Add Spanish desktop entries - -lximage-qt-0.6.0 / 2017-10-21 -================== - - * Release 0.6.0: Update changelog - * Add ImageShack upload provider. - * Fix warnings issued by GCC and Clang. - * Ensure file is closed when upload finishes. - * Make image URL read-only. - * Update copyright in initial file comment for new additions. - * Make QNetworkAccessManager static and fix initialization order in UploadDialog. - * Add support for uploading files (fixes #98). - * Bump versions - * Don't export github templates - * Don't use hardcoded install dir - * Update CMakeLists.txt - * Fix regression in thumbnail view - * Add Lithuanian .desktop files - * liblxqt don't fit here - * Copied issue-template - * Drops Qt5Core_VERSION_STRING - * set Qt::AA_UseHighDpiPixmaps to true - * MainWindow: Fix crash for quick image changes - * Use GNUInstallDirs - * jobs: Do proper error handling - * Adapt to changes in libfm-qt(the c++11 port) - * Use the new lxqt-build-tools new FindExif CMake module - * Simpler code for ScreenshotSelectAreaGraphicsView class. - * Change Screenshot select area green color by actual hightlight color. Use lximage-qt private variables style. - * Adapt to C++11 and RAM improvements. - * Screenshot captures an area of the screen. - * Use const iterators - * Bump year - * File and folder DND Fixes https://github.com/lxde/lximage-qt/issues/69. - -lximage-qt-0.5.1 / 2016-12-21 -================== - - * Release 0.5.1: Update changelog - * Bump patch version and (#82) - * Create lximage-qt-screenshot_it.desktop (#83) - * Add *da.desktop files - * Desktop entry files: Fix typo in French translation - * [MRG] Display first image when loading a directory (v2) (#75) - * Desktop entry files: Add French translation - * Use lxqt-build-tools - * Use the new lxqt-build-tools package - * Fixed A Cast (#71) - * Remove cpack (#70) - -lximage-qt-0.5.0 / 2016-09-24 -================== - - * Release 0.5.0: Add changelog - * Bump version to 0.5.0 (#67) - * Remove Core and Qt from Categories in desktop file (#64) - * Extend README.md - * Fix broken compatibility introduced by libfm-qt API changes. This closes lxde/lximage-qt#63. - * Add Catalan translations - * Quieten compiler warning - * Code cleanup - * Use LXQtCompilerSettings cmake module - * Treat SVG files separately as SVG images - * build: Update translations based on *.ui - * Fix typo in Portuguese translation for desktop file - * Fix typo in German translation for desktop file (#55) - * build: Use external translations (#54) - * ts-files removal (#53) - * Hide cursor smartly in fullscreen mode - * build: Use liblxqt's TranslateDesktop module - * Adds support for GIF animation. - * Implement an EOG-like behavior on starting By clicking on an image for the first time, the user wants to see it clearly with lximage-qt. So, the following behavior is implemented here: - * Add --version command line option - * Fix missing Russian translation in desktop file - * Fix memory leak if taking screenshot with cursor - * Polish translation updated - * Another update - * Improved Russian translation - thanks to uazure - * Fix typo - * Add Russian translation - * Italian translation update - * CMake: Adapt to libfm-qt Targets - * Turn on C++11 support. This closes bug lxde/lximage-qt #36. - * Exec should have an argument - * all GPL files are (or any later) - * Add release script - * Update translations - * Set the color table properly for scaled images - * Add Greek (el) translation Remove needless country variant from language code - * Corrected language code (de_DE -> de) of german translation, marked translations as done. - * replace tabs with spaces - * remove trailing spaces - * replace glib with Qt for command-line parsing - * Don't save file in private mode - * Prevents the slideshow timeout to be set to 0 in the UI - * Correctly include CMake modules in intree/superbuild mode - * Remove lximage-qt from the Utilities category - * Update README - * Update .gitignore - * Hungarian translations added - * save and restore window size and maximized state - -lximage-qt-0.4.0 / 2015-02-18 -================== - - * Release v0.4.0 - * src/CMakeLists.txt: do not completely overwrite CMAKE_CXX_FLAGS - * Create lximage-qt_it.desktop - * Create lximage-qt_it.ts - * CMakeLists cleanups - * Portuguese update - * Added german translation, re-generated all other .ts files. - * Added keyboard shortcut to print. - * Adds .desktop translation support - * Portuguese language update - * Remove debian directory (Close #9) - * Fix typo Zoomo -> Zoom - * Use proper naming conventions for translations - * Clean up CMakeLists, dropping support for Qt 5 - -lximage-qt-0.3.0 / 2014-10-15 -================== - - * Release v0.3.0 - * Rename preferencedialog.ui to preferencesdialog.ui - * Ignore build dir. - * debian: enable qt5 by default - * Fix lxde/lxde-qt #269 - Screenshots are not saved aedequately unless file extension is chosen manually. - * Support Qt5 and libfm-qt5. - * Make sure all enums are handled in switch - -lximage-qt-0.2.0 / 2014-05-09 -================== - - * Release 0.2.0 - * Update desktop files - * Update README/COPYING/AUTHORS - * Add some missing link_directories() - * Commit from LXDE Pootle server by user yinghua_wang.: 70 of 70 strings translated (0 fuzzy). - * Add CPack rules for creating tarball - * Avoid creating a scaled image cache if current scale factor is 1.0 (original size). - * Rewrite the scaled image caching code in LxImage::ImageView to improve its readability and correctness. - * Add LxImage::Job class as a base class for multi-threading jobs. - * Avoid copying subimages to speed up scaling images. - * Limit the size of pixmap cache. - * Limit the size of pixmap cache. - * Create a cache for the high-quality scaled image of the currently viewport and use it to override the default paintEvent() of QGraphicsView as needed. This improves the image quality a lot when we scale down large photos. - * Cancel autoZoomFit when calling zoomOriginal(), zoomIn(), and zoomOut(). - * Add copy and paste buttons to the toolbar. - * Automatically zoom to fit current window size by default. - * Make the preferences dialog non-modal and apply the settings to all existing windows. - * Add "Delete file" and "File properties" actions to the file menu. - * Add a very basic thumbnails pane based on Fm::FolderView of libfm-qt. - * Implement the preferences dialog. * Enable keyboard shortcuts in fullscreen mode. - * Implement very basic slide show functionality. - * Jump to the previous or the next image by using mouse wheel. - * Avoid scaling up an image while zoomFit() if it's smaller than the current view. - * Support grabbing mouse cursor when taking a screenshot. - * Add very basic printing support. - * Commit from LXDE Pootle server by user adrianoh2.: 70 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user Fitoschido.: 70 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user hirkmt.: 70 of 70 strings translated (0 fuzzy). - * Remove xsettings support and add an option in the preference dialog to set a fallback icon theme instead. - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * Improve cmake integration for translations. The *.ts files are only updated when UPDATE_TRANSLATIONS cmake option is turned on. - * Commit from LXDE Pootle server by user zvacet.: 65 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user zvacet.: 50 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user wwycheuk.: 65 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user mbouzada.: 70 of 70 strings translated (0 fuzzy). - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * Commit from LXDE Pootle server by user Fitoschido.: 68 of 70 strings translated (0 fuzzy). - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * Corrected caml cased string toolBar. - * Commit from LXDE Pootle server by user smarquespt.: 70 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user brother.: 24 of 24 strings translated (0 fuzzy). - * Correct misspelled 'Zoom'. - * Commit from LXDE Pootle server by user andika.: 70 of 70 strings translated (0 fuzzy). - * New files added from LXDE Pootle server based on templates - * Commit from LXDE Pootle server by user strebski.: 70 of 70 strings translated (0 fuzzy). - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * Commit from LXDE Pootle server by user LStranger.: 70 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user brother.: 70 of 70 strings translated (0 fuzzy). - * Commit from LXDE Pootle server by user LStranger.: 2 of 70 strings translated (0 fuzzy). - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * New files added from LXDE Pootle server based on templates - * Add zh_TW translation and a template ts file. - * Add a desktop entry file for the built-in screenshot tool. - * Add --screenshot command line argument to launch the built-in screenshot utility. - * Improve the screenshot tool. Implement pasting from clipboard. - * Add ability to taking screenshots to lximage-qt. - * debian : Add missing libx11 build-depend - * Add missing files. - * Add Xdg::DesktopSettings for detecting desktop-specific settings. Get icon theme name via XSettings or config files when available. - * Supporting saving files. (needs some more polishing, though). - * Add a basic debian directory to enable daily builds. - * Add a context menu. - * Use libexif to read EXIF orientation tags then apply them to images loaded. - * Refactor - move image loading code to LxImage::LoadImageJob class. - * Remove unused data member. - * Add a preferences dialog (not working yet). Little adjustment for menu positions and add placeholders for features not implemented. - * Fix filename encoding handling so non-English filenames can be passed correctly from command line arguments. - * Canonicalize filenames passed through command line arguments. Add an icon borrowed from GPicView. Rearrange menus and implement "fullscreen" and "copy to clipboard". - * Implement basic single instance support and command line argument parsing. - * Properly cancel pending tasks and make going back/forward more smooth. Enhance window title display. - * Little fix to avoid loading a cancelled image. - * Supports rotation of images. - * Use the latest libfm-qt APIs to filter out non-image files. Implement jumping to first and last file in the folder. - * Fix incorrect reference couting of GCancellable objects to avoid crashes. Add some shortcut keys to improve usability. - * Use glib/gio GInputStream + GIOSchedulerJob to load the images with multi-threading. Refactor, simplify class methods of LxImage::MainWindow. - * Use libfm to load folders containing the specified image. Add dependency on libexif for future implementation of EXIF related stuff. Add LxImage::Applcation class to handle application initiation. - * Initial import into git diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index d1885ae..0000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,58 +0,0 @@ -cmake_minimum_required(VERSION 3.1.0 FATAL_ERROR) -# CMP0000: Call the cmake_minimum_required() command at the beginning of the top-level -# CMakeLists.txt file even before calling the project() command. -# The cmake_minimum_required(VERSION) command implicitly invokes the cmake_policy(VERSION) -# command to specify that the current project code is written for the given range of CMake -# versions. -project(lximage-qt) - -include(GNUInstallDirs) - -set(MAJOR_VERSION 0) -set(MINOR_VERSION 14) -set(PATCH_VERSION 1) -set(LXIMAGE_VERSION ${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}) - -set(LXQTBT_MINIMUM_VERSION "0.6.0") -set(LIBFMQT_MINIMUM_VERSION "0.14.1") -set(QT_MINIMUM_VERSION "5.7.1") - - -set(CMAKE_AUTOMOC ON) -set(CMAKE_AUTORCC ON) -set(CMAKE_AUTOUIC ON) -set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_POSITION_INDEPENDENT_CODE ON) - -find_package(Qt5Widgets ${QT_MINIMUM_VERSION} REQUIRED) -find_package(Qt5Network ${QT_MINIMUM_VERSION} REQUIRED) -find_package(Qt5DBus ${QT_MINIMUM_VERSION} REQUIRED) -find_package(Qt5PrintSupport ${QT_MINIMUM_VERSION} REQUIRED) -find_package(Qt5X11Extras ${QT_MINIMUM_VERSION} REQUIRED) -find_package(Qt5LinguistTools ${QT_MINIMUM_VERSION} REQUIRED) -find_package(Qt5Svg ${QT_MINIMUM_VERSION} REQUIRED) -find_package(fm-qt ${LIBFMQT_MINIMUM_VERSION} REQUIRED) -find_package(lxqt-build-tools ${LXQTBT_MINIMUM_VERSION} REQUIRED) -find_package(Exif REQUIRED) -message(STATUS "Building with Qt ${Qt5Core_VERSION}") - -include(LXQtPreventInSourceBuilds) -include(LXQtCompilerSettings NO_POLICY_SCOPE) - -# TODO: make the X11 stuff optional. -# for screenshot support -find_package(X11 REQUIRED) - -find_package(PkgConfig REQUIRED) -# Xfixes is needed to capture the mouse cursor image -pkg_check_modules(XFIXES REQUIRED xfixes) - -# add src subdirectory -add_subdirectory(src) - -# install an icon for the application -install( - FILES data/lximage-qt.png - DESTINATION "${CMAKE_INSTALL_DATADIR}/icons/hicolor/48x48/apps" -) - diff --git a/COPYING b/COPYING deleted file mode 100644 index d8cf7d4..0000000 --- a/COPYING +++ /dev/null @@ -1,280 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS diff --git a/README.md b/README.md deleted file mode 100644 index b8256c6..0000000 --- a/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# LXImage-Qt - -## Overview - -LXImage-Qt is the Qt port of LXImage, a simple and fast image viewer. - -In addition it features a tool to take screenshots. - -It is maintained by the LXQt project but can be used independently from this -desktop environment. - -## Installation - -### Compiling source code - -Runtime dependencies are qtx11extras and [libfm-qt](https://github.com/lxqt/libfm-qt) -(LXImage-Qt used to depend on [PCManFM-Qt](https://github.com/lxqt/pcmanfm-qt) -but the relevant code belongs to what was outsourced in libfm-qt). -Additional build dependencies are CMake and optionally Git to pull latest VCS -checkouts. The localization files were outsourced to repository -[lxqt-l10n](https://github.com/lxqt/lxqt-l10n) so the corresponding dependencies -are needed, too. Please refer to this repository's `README.md` for further information. - -Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` -has to be set to `/usr` on most operating systems. - -To build run `make`, to install `make install` which accepts variable `DESTDIR` -as usual. - -### Binary packages - -Official binary packages are available in Arch Linux, Debian (as of Debian stretch), -Fedora and openSUSE (Leap 42.1 and Tumbleweed). Just use the distributions' -package manager to search for string 'lximage'. - - -### Translation (Weblate) - - -Translation status - diff --git a/data/lximage-qt-screenshot.desktop.in b/data/lximage-qt-screenshot.desktop.in deleted file mode 100644 index bb3f781..0000000 --- a/data/lximage-qt-screenshot.desktop.in +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Screenshot -GenericName=Screenshot -Comment=Take a screenshot -Exec=lximage-qt --screenshot -Icon=camera-photo -Categories=Graphics;Core;Qt; -StartupNotify=true diff --git a/data/lximage-qt.desktop.in b/data/lximage-qt.desktop.in deleted file mode 100644 index f659a6e..0000000 --- a/data/lximage-qt.desktop.in +++ /dev/null @@ -1,11 +0,0 @@ -[Desktop Entry] -Type=Application -Name=LXImage -GenericName=Image Viewer -Comment=The LXQt image viewer -Icon=lximage-qt -Exec=lximage-qt %F -StartupNotify=true -Terminal=false -Categories=Graphics;Viewer;RasterGraphics;2DGraphics;Photography; -MimeType=image/bmp;image/gif;image/jpeg;image/jpg;image/png;image/tiff;image/x-bmp;image/x-pcx;image/x-tga;image/x-portable-pixmap;image/x-portable-bitmap;image/x-targa;image/x-portable-greymap;application/pcx;image/svg+xml;image/svg-xml; diff --git a/data/lximage-qt.png b/data/lximage-qt.png deleted file mode 100644 index 8185fefdd8e09f535c921bf9f651551d7b9a5ef0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2866 zcmV-23(fS2P)L1PIWGC4x0##|9xGqyY)RDrkfzN~|Q~fykaDewVwtyQ;eC*1h+f zkHxw5>h_}@Jmbu#ZdKiTUf=V7{^yhc+wFGyAIh@)a+YNcegvdmuVqP+yxZ>&ep8yw z=BFZZ_N}+xVsmrzMeBAf+1c6Q?YG~iD2kq&zO9 zX3i&jmY@mwwfa(iXdQpDkb;q5Luk)>c{T6OxV?C^PI;^g)a_!z8qkO773!jI- zzgSUMr_<@Mv9XR>YzUtdFUwPXHSe%wz*^(;;pM0KQRI*T)>%Y^W(~I5P;)<6Lz<~z z{~t?;2-Z4aYJhbZW7rugL4~b0IQv|5eWZ+XB`72g&Tk5-d$#c+;9MN!AU+sl@G2BJ zWI3c3G=SG=i~xmy%!EMdU{c1(J9VLvGV`)AV2#9i1cF!k84SisZ=mF5>~q{L$XbK5 ziw0PSh~ZRQ@L`&Of+|eP7?q&0$YcH~Qo(HD!J4UY!pWABSWtmRO|VWLfnNd=SV?0` z8I*~i0{8s$@gmC+5F?1lkwGF*PaXxOM`2cViXPQG3gb+pu~J3A3AT!YARvl0&}j(w z`-+tq@t0PG#6eK#4wS4|*2@SnWK#p?N<5l-I zF_5NnYpsoiZ5LqG2rzrD`dUa6VK@p^Au7XzF)OVmisHne8sYP^h%rKV#NfvwumT!% zjyL+`JO>z#a=P7Jg7=7l$z+0cC&|Vc!~QNWojuE1r-3T?plDSCAw;ADo&Fuw=P{Nq z7!W5az2a=NRs&cYk)f!H$l4ec4T0U=5ov0;fA=mQT)Rd#$>N@nIBKO zhTh%pqhfHi2CJ(Zbk^5c+gPVwtIg7L(Sb8#DhSsQ9cj%RXqO`J;q{wrY@K9nwG}&6 zOvzbUNEzsM_qlcBL&|*2V3=|1(_8p)kKjvC#TdmILm~kqigVy3U=5T3b`OO0rm{bV zaW04vHcqT_;k7UErJsGPg4t-#^wTicA$4=ej|ONg#sB!Hzo(W2@<~C`Y_WQBn^R}6 zuzC7CjYf@wVaA=0Z_wZ0VR$fR(tkiP9#9^FB@Le7J*okh)M?g~^(N$A$cmV1d1)z1 z#R-VDjQc(Az5j3g^Yw3Y{>Q(KFM zu2SSNJl4q)&8T|RpEzxdi0{uWdD zXm%bD5z<t976 zDt+e47s>lO1UyCzk4WarJdNigl2o~$!mzPvEE^Q{R?>(^zLB7$}5@y%b)_ha*&{^(dGM(WD|r))P}E?LsShcG9aQ~xWl+uNZmAHTz@DtS>5f<`{C^OIX_ zCvJ4a5Jyf_#P|hJQPhK1B@`p}KK(A)cuXjZCH{2CYt$Pnv^O?cJN+v0COwDNks?+~ z?-@@DN*^eF+!cc^D)XEqfYHDti$w5=qDnRzl8uH8_I6m`zCgZ^AxkyT+aFPu$3L+P ziorwhh?bxpp~Pqa0%aM~YFuV82f`*ge*I*>J$U8y|4(yVrU3 z&C3f0R5>I;v6F{Tr9nU-D56z}HB_7>ra|?Jk3x z&J74Yvdqhuuaf1HV@z|1O`@?#t1AF8hIXrkSj$!j@fV&2sUM7JZJddW7OBP&S!i{* z4;redgW@TR0)q0(zy5VjbsP^y(b4ipfBH>5eQJ|aC)Z~S_=O{4B#LIHc35mP70aYT zp9Q;&H8Z&OhmM@qK7Bq_UAjgw)%E98?mpPzez$k@TIKfLE)RD0mfpSc@=LT^O+LDD zi%~X@P?9*VTs%inmV9*ccEsmORy!?TIk(Nj-afbPc9-TmcV>$dYaMQUa+m(#U~ZT( zTz=&&)*8Nd^VZUS)M_?(^}^{Ro9Ph)9`5#+Ux?7#8;~S!NqK;xDCrMJOeXn~@&Nn& zA>Icb_V$_IIah1+_UWuNmz0NiSF}Gkz&U$lGaZh`OeO`5#xmVF!VQjazhmP6lW!2@ z2~UgfpS`FbO>TaK#E77IF~5Mf)o)8O{TIPGi!~Lg(s>&|;w;YDS&~fO8)Fb7k$hFx zlhZcmTrBdcD5q@-xN5#>gAf};1Y_s^o=ge^aMtLjyZeKePj7Exjp5RTGwkjy5H5kO z6Kfb_xOo0Fqfs_%s-+2?_6nW$3Sta?fk(AlO{_6oIJeEio&6=RojkFIwXt9a!_n-$ zbCweus|axZ%&8^Hu(HyimPS%nmY%)-5NGwa{Mldp Fri, 08 Mar 2019 10:59:35 -0600 + lximage-qt (0.14.1-1) unstable; urgency=medium * Cherry-picking upstream release 0.14.1. diff --git a/debian/control b/debian/control index fe12beb..4f5e8ff 100644 --- a/debian/control +++ b/debian/control @@ -1,8 +1,7 @@ Source: lximage-qt -Maintainer: LXQt Packaging Team -Uploaders: Alf Gaida , - ChangZhuo Chen (陳昌倬) , - Andrew Lee (李健秋) +Maintainer: Lubuntu Developers +XSBC-Original-Maintainer: LXQt Packaging Team +Uploaders: Simon Quigley Section: x11 Priority: optional Build-Depends: debhelper-compat (= 12), @@ -13,18 +12,18 @@ Build-Depends: debhelper-compat (= 12), libqt5x11extras5-dev, libx11-dev, libxfixes-dev, - lxqt-build-tools (>= 0.6.0~), + lxqt-build-tools (>= 0.6.0~) Standards-Version: 4.3.0 -Vcs-Browser: https://salsa.debian.org/lxqt-team/lximage-qt -Vcs-Git: https://salsa.debian.org/lxqt-team/lximage-qt.git +Vcs-Browser: https://phab.lubuntu.me/source/lxqt-panel/ +Vcs-Git: https://phab.lubuntu.me/source/lxqt-panel.git +XS-Debian-Vcs-Browser: https://salsa.debian.org/lxqt-team/lximage-qt +XS-Debian-Vcs-Git: https://salsa.debian.org/lxqt-team/lximage-qt.git Homepage: https://github.com/lxqt/lximage-qt Package: lximage-qt Architecture: any -Depends: ${misc:Depends}, - ${shlibs:Depends} -Recommends: lximage-qt-l10n, - qt5-image-formats-plugins +Depends: ${misc:Depends}, ${shlibs:Depends} +Recommends: lximage-qt-l10n, qt5-image-formats-plugins Description: Image viewer for LXQt A simple image viewer for LXQt. Additional file formats can be processed if one install qt5-image-formats-plugins. @@ -35,8 +34,7 @@ Package: lximage-qt-l10n Architecture: all Multi-Arch: foreign Section: localization -Depends: ${misc:Depends}, - qttranslations5-l10n +Depends: qttranslations5-l10n, ${misc:Depends} Breaks: lximage-qt (<< 0.5.0) Replaces: lximage-qt (<< 0.5.0) Description: Language-package for lximage-qt diff --git a/debian/lximage-qt.install b/debian/lximage-qt.install index c2e285b..cd74973 100644 --- a/debian/lximage-qt.install +++ b/debian/lximage-qt.install @@ -1,4 +1,3 @@ +usr/bin/lximage-qt usr/share/applications usr/share/icons/hicolor - -usr/bin/lximage-qt diff --git a/debian/source/local-options b/debian/source/local-options deleted file mode 100644 index 9cdfca9..0000000 --- a/debian/source/local-options +++ /dev/null @@ -1,2 +0,0 @@ -unapply-patches -abort-on-upstream-changes diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt deleted file mode 100644 index d586546..0000000 --- a/src/CMakeLists.txt +++ /dev/null @@ -1,102 +0,0 @@ -include_directories( - ${X11_INCLUDE_DIR} - ${XFIXES_INCLUDE_DIRS} -) - -# For some unknown reasons these are required for build on FreeBSD -link_directories( - ${QT_LIBRARY_DIR} - ${GLIB_LIBRARY_DIRS} -) - -set(lximage-qt_SRCS - lximage-qt.cpp - mainwindow.cpp - preferencesdialog.cpp - application.cpp - imageview.cpp - modelfilter.cpp - loadimagejob.cpp - saveimagejob.cpp - screenshotdialog.cpp - screenshotselectarea.cpp - screenshotselectareagraphicsview.cpp - settings.cpp - graphicsscene.cpp - mrumenu.cpp - - upload/imageshackprovider.cpp - upload/imageshackupload.cpp - upload/imgbbprovider.cpp - upload/imgbbupload.cpp - upload/imgurprovider.cpp - upload/imgurupload.cpp - upload/provider.cpp - upload/upload.cpp - upload/uploaddialog.cpp - - resource.qrc -) - -qt5_add_dbus_adaptor(lximage-qt_DBUS_SRCS - org.lxde.LxImage.Application.xml - application.h - LxImage::Application - applicationadaptor - ApplicationAdaptor -) -set_property(SOURCE ${lximage-qt_DBUS_SRCS} PROPERTY SKIP_AUTOGEN ON) -list(APPEND lximage-qt_SRCS "${lximage-qt_DBUS_SRCS}") - -set(lximage-qt_UIS - mainwindow.ui - preferencesdialog.ui - screenshotdialog.ui - - upload/uploaddialog.ui -) - -# add translation for lximage-qt -include(LXQtTranslateTs) -lxqt_translate_ts(QM_FILES - UPDATE_TRANSLATIONS ${UPDATE_TRANSLATIONS} - SOURCES - ${lximage-qt_SRCS} - ${lximage-qt_UIS} - INSTALL_DIR - "${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/translations" -) - -# prevent the generated files from being deleted during make clean -set_directory_properties(PROPERTIES CLEAN_NO_CUSTOM true) - -# process desktop entry files -include(LXQtTranslateDesktop) - -file(GLOB desktop_files_in ../data/*.desktop.in) -lxqt_translate_desktop(desktop_files SOURCES ${desktop_files_in}) -install(FILES ${desktop_files} DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications") - -add_executable(lximage-qt - ${lximage-qt_SRCS} - ${lximage-qt_UIS} - ${desktop_files} - ${QM_FILES} -) - -add_definitions( - -DLXIMAGE_DATA_DIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}/lximage-qt" - -DLXIMAGE_VERSION="${LXIMAGE_VERSION}" -) - -set(QT_LIBRARIES Qt5::Widgets Qt5::Network Qt5::Core Qt5::DBus Qt5::PrintSupport Qt5::X11Extras Qt5::Svg) - -target_link_libraries(lximage-qt - fm-qt - ${QT_LIBRARIES} - ${EXIF_LIBRARIES} - ${X11_LIBRARIES} - ${XFIXES_LDFLAGS} -) - -install(TARGETS lximage-qt RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}") diff --git a/src/application.cpp b/src/application.cpp deleted file mode 100644 index ee09988..0000000 --- a/src/application.cpp +++ /dev/null @@ -1,189 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "application.h" -#include -#include -#include -#include -#include "applicationadaptor.h" -#include "screenshotdialog.h" -#include "preferencesdialog.h" -#include "mainwindow.h" - -using namespace LxImage; - -static const char* serviceName = "org.lxde.LxImage"; -static const char* ifaceName = "org.lxde.LxImage.Application"; - -Application::Application(int& argc, char** argv): - QApplication(argc, argv), - libFm(), - windowCount_(0) { - setApplicationVersion(LXIMAGE_VERSION); -} - -bool Application::init(int argc, char** argv) { - Q_UNUSED(argc) - Q_UNUSED(argv) - - setAttribute(Qt::AA_UseHighDpiPixmaps, true); - - // install the translations built-into Qt itself - qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath)); - installTranslator(&qtTranslator); - - // install libfm-qt translator - installTranslator(libFm.translator()); - - // install our own tranlations - translator.load("lximage-qt_" + QLocale::system().name(), LXIMAGE_DATA_DIR "/translations"); - installTranslator(&translator); - - // initialize dbus - QDBusConnection dbus = QDBusConnection::sessionBus(); - if(dbus.registerService(serviceName)) { - settings_.load(); // load settings - // we successfully registered the service - isPrimaryInstance = true; - setQuitOnLastWindowClosed(false); // do not quit even when there're no windows - - new ApplicationAdaptor(this); - dbus.registerObject("/Application", this); - - connect(this, &Application::aboutToQuit, this, &Application::onAboutToQuit); - - if(settings_.useFallbackIconTheme()) - QIcon::setThemeName(settings_.fallbackIconTheme()); - } - else { - // an service of the same name is already registered. - // we're not the first instance - isPrimaryInstance = false; - } - - QPixmapCache::setCacheLimit(1024); // avoid pixmap caching. - - return parseCommandLineArgs(); -} - -bool Application::parseCommandLineArgs() { - QCommandLineParser parser; - parser.addHelpOption(); - parser.addVersionOption(); - - QCommandLineOption screenshotOption( - QStringList() << "s" << "screenshot", - tr("Take a screenshot") - ); - parser.addOption(screenshotOption); - - const QString files = tr("[FILE1, FILE2,...]"); - parser.addPositionalArgument("files", files, files); - - parser.process(*this); - - const QStringList args = parser.positionalArguments(); - const bool screenshotTool = parser.isSet(screenshotOption); - - QStringList paths; - for(const QString& arg : args) { - QFileInfo info(arg); - paths.push_back(info.absoluteFilePath()); - } - - bool keepRunning = false; - if(isPrimaryInstance) { - settings_.load(); - keepRunning = true; - if(screenshotTool) { - screenshot(); - } - else { - newWindow(paths); - } - } - else { - // we're not the primary instance. - // call the primary instance via dbus to do operations - QDBusConnection dbus = QDBusConnection::sessionBus(); - QDBusInterface iface(serviceName, "/Application", ifaceName, dbus, this); - if(screenshotTool) - iface.call("screenshot"); - else - iface.call("newWindow", paths); - } - return keepRunning; -} - -MainWindow* Application::createWindow() { - LxImage::MainWindow* window; - window = new LxImage::MainWindow(); - return window; -} - -void Application::newWindow(QStringList files) { - LxImage::MainWindow* window; - if(files.empty()) { - window = createWindow(); - - window->resize(settings_.windowWidth(), settings_.windowHeight()); - if(settings_.windowMaximized()) - window->setWindowState(window->windowState() | Qt::WindowMaximized); - - window->show(); - } - else { - for(const QString& fileName : qAsConst(files)) { - window = createWindow(); - window->openImageFile(fileName); - - window->resize(settings_.windowWidth(), settings_.windowHeight()); - if(settings_.windowMaximized()) - window->setWindowState(window->windowState() | Qt::WindowMaximized); - - /* when there's an image, we show the window AFTER resizing - and centering it appropriately at MainWindow::updateUI() */ - //window->show(); - } - } -} - -void Application::applySettings() { - const auto windows = topLevelWidgets(); - for(QWidget* window : windows) { - if(window->inherits("LxImage::MainWindow")) - static_cast(window)->applySettings(); - } -} - -void Application::screenshot() { - ScreenshotDialog* dlg = new ScreenshotDialog(); - dlg->show(); -} - -void Application::editPreferences() { - PreferencesDialog* dlg = new PreferencesDialog(); - dlg->show(); -} - -void Application::onAboutToQuit() { - settings_.save(); -} diff --git a/src/application.h b/src/application.h deleted file mode 100644 index cfb4770..0000000 --- a/src/application.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_APPLICATION_H -#define LXIMAGE_APPLICATION_H - -#include -#include -#include "mainwindow.h" -#include "settings.h" - -namespace LxImage { - -class Application : public QApplication { - Q_OBJECT - -public: - Application(int& argc, char** argv); - bool init(int argc, char** argv); - bool parseCommandLineArgs(); - - void newWindow(QStringList files = QStringList()); - MainWindow* createWindow(); - - void addWindow() { // call this when you create a new toplevel window - ++windowCount_; - } - - void removeWindow() { // call this when you destroy a toplevel window - --windowCount_; - if(0 == windowCount_) - quit(); - } - - Settings& settings() { - return settings_; - } - - void applySettings(); - -public Q_SLOTS: - void editPreferences(); - void screenshot(); - -protected Q_SLOTS: - void onAboutToQuit(); - -private: - Fm::LibFmQt libFm; - bool isPrimaryInstance; - QTranslator translator; - QTranslator qtTranslator; - Settings settings_; - int windowCount_; -}; - -} - -#endif // LXIMAGE_APPLICATION_H diff --git a/src/graphicsscene.cpp b/src/graphicsscene.cpp deleted file mode 100644 index ba6f0a8..0000000 --- a/src/graphicsscene.cpp +++ /dev/null @@ -1,48 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "graphicsscene.h" -#include -#include - -namespace LxImage { - -GraphicsScene::GraphicsScene(QObject *parent): - QGraphicsScene (parent) { -} - -void GraphicsScene::dragEnterEvent(QGraphicsSceneDragDropEvent *event) { - if(event->mimeData()->hasUrls()) - event->acceptProposedAction(); -} - -void GraphicsScene::dragMoveEvent(QGraphicsSceneDragDropEvent *event) { - if(event->mimeData()->hasUrls()) - event->acceptProposedAction(); -} - -void GraphicsScene::dropEvent(QGraphicsSceneDragDropEvent* event) { - QList urlList = event->mimeData()->urls(); - if(!urlList.isEmpty()) - Q_EMIT fileDropped(urlList.first().toLocalFile()); - event->acceptProposedAction(); -} - -} diff --git a/src/graphicsscene.h b/src/graphicsscene.h deleted file mode 100644 index 79049f6..0000000 --- a/src/graphicsscene.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_GRAPHICSSCENE_H -#define LXIMAGE_GRAPHICSSCENE_H - -#include -#include - -namespace LxImage { - -class GraphicsScene : public QGraphicsScene -{ - Q_OBJECT - -public: - GraphicsScene(QObject *parent = 0); - -protected: - virtual void dragEnterEvent(QGraphicsSceneDragDropEvent *event); - virtual void dragMoveEvent(QGraphicsSceneDragDropEvent *event); - virtual void dropEvent(QGraphicsSceneDragDropEvent* event); - -Q_SIGNALS: - void fileDropped(const QString file); -}; - -} - -#endif // LXIMAGE_GRAPHICSSCENE_H diff --git a/src/imageview.cpp b/src/imageview.cpp deleted file mode 100644 index 1db30d6..0000000 --- a/src/imageview.cpp +++ /dev/null @@ -1,505 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "imageview.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#define CURSOR_HIDE_DELY 3000 - -namespace LxImage { - -ImageView::ImageView(QWidget* parent): - QGraphicsView(parent), - scene_(new GraphicsScene(this)), - imageItem_(new QGraphicsRectItem()), - gifMovie_(nullptr), - cacheTimer_(nullptr), - cursorTimer_(nullptr), - scaleFactor_(1.0), - autoZoomFit_(false), - isSVG(false), - currentTool(ToolNone) { - - setViewportMargins(0, 0, 0, 0); - setContentsMargins(0, 0, 0, 0); - setLineWidth(0); - - setScene(scene_); - connect(scene_, &GraphicsScene::fileDropped, this, &ImageView::onFileDropped); - imageItem_->hide(); - imageItem_->setPen(QPen(Qt::NoPen)); // remove the border - scene_->addItem(imageItem_); -} - -ImageView::~ImageView() { - scene_->clear(); // deletes all items - if(gifMovie_) - delete gifMovie_; - if(cacheTimer_) { - cacheTimer_->stop(); - delete cacheTimer_; - } - if(cursorTimer_) { - cursorTimer_->stop(); - delete cursorTimer_; - } -} - -void ImageView::onFileDropped(const QString file) { - Q_EMIT fileDropped(file); -} - -void ImageView::wheelEvent(QWheelEvent* event) { - int delta = event->delta(); - // Ctrl key is pressed - if(event->modifiers() & Qt::ControlModifier) { - if(delta > 0) { // forward - zoomIn(); - } - else { // backward - zoomOut(); - } - } - else { - // The default handler QGraphicsView::wheelEvent(event) tries to - // scroll the view, which is not what we need. - // Skip the default handler and use its parent QWidget's handler here. - QWidget::wheelEvent(event); - } -} - -void ImageView::mouseDoubleClickEvent(QMouseEvent* event) { - // The default behaviour of QGraphicsView::mouseDoubleClickEvent() is - // not needed for us. We call its parent class instead so the event can be - // filtered by event filter installed on the view. - // QGraphicsView::mouseDoubleClickEvent(event); - QAbstractScrollArea::mouseDoubleClickEvent(event); -} - -void ImageView::mousePressEvent(QMouseEvent * event) { - if (currentTool == ToolNone) { - QGraphicsView::mousePressEvent(event); - if(cursorTimer_) cursorTimer_->stop(); - } else { - startPoint = mapToScene(event->pos()).toPoint(); - } -} - -void ImageView::mouseReleaseEvent(QMouseEvent* event) { - if (currentTool == ToolNone) { - QGraphicsView::mouseReleaseEvent(event); - if(cursorTimer_) cursorTimer_->start(CURSOR_HIDE_DELY); - } else if (!image_.isNull()) { - QPoint endPoint = mapToScene(event->pos()).toPoint(); - - QPainter painter(&image_); - painter.setRenderHint(QPainter::Antialiasing, true); - painter.setPen(QPen(Qt::red, 5)); - - switch (currentTool) { - case ToolArrow: - drawArrow(painter, startPoint, endPoint, M_PI / 8, 25); - break; - case ToolRectangle: - painter.drawRect(QRect(startPoint, endPoint)); - break; - case ToolCircle: - painter.drawEllipse(QRect(startPoint, endPoint)); - break; - case ToolNumber: - { - // Set the font - QFont font; - font.setPixelSize(32); - painter.setFont(font); - - // Calculate the dimensions of the text - QString text = QString("%1").arg(nextNumber++); - QRectF textRect = painter.boundingRect(image_.rect(), 0, text); - textRect.moveTo(endPoint); - - // Calculate the dimensions of the circle - qreal radius = qSqrt(textRect.width() * textRect.width() + - textRect.height() * textRect.height()) / 2; - QRectF circleRect(textRect.left() + (textRect.width() / 2 - radius), - textRect.top() + (textRect.height() / 2 - radius), - radius * 2, radius * 2); - - // Draw the path - QPainterPath path; - path.addEllipse(circleRect); - painter.fillPath(path, Qt::red); - painter.drawPath(path); - - // Draw the text - painter.setPen(Qt::white); - painter.drawText(textRect, Qt::AlignCenter, text); - - break; - } - default: - break; - } - painter.end(); - generateCache(); - } -} - -void ImageView::mouseMoveEvent(QMouseEvent* event) { - QGraphicsView::mouseMoveEvent(event); - if(cursorTimer_ && (viewport()->cursor().shape() == Qt::BlankCursor - || viewport()->cursor().shape() == Qt::OpenHandCursor)) { - cursorTimer_->start(CURSOR_HIDE_DELY); // restart timer - viewport()->setCursor(Qt::OpenHandCursor); - } -} - -void ImageView::focusInEvent(QFocusEvent* event) { - QGraphicsView::focusInEvent(event); - if(cursorTimer_ && (viewport()->cursor().shape() == Qt::BlankCursor - || viewport()->cursor().shape() == Qt::OpenHandCursor)) { - cursorTimer_->start(CURSOR_HIDE_DELY); // restart timer - viewport()->setCursor(Qt::OpenHandCursor); - } -} - -void ImageView::resizeEvent(QResizeEvent* event) { - QGraphicsView::resizeEvent(event); - if(autoZoomFit_) - zoomFit(); -} - -void ImageView::zoomFit() { - if(!image_.isNull()) { - // if the image is smaller than our view, use its original size - // instead of scaling it up. - if(image_.width() <= width() && image_.height() <= height()) { - zoomOriginal(); - return; - } - } - fitInView(scene_->sceneRect(), Qt::KeepAspectRatio); - scaleFactor_ = transform().m11(); - queueGenerateCache(); -} - -void ImageView::zoomIn() { - autoZoomFit_ = false; - if(!image_.isNull()) { - resetTransform(); - scaleFactor_ *= 1.1; - scale(scaleFactor_, scaleFactor_); - queueGenerateCache(); - } -} - -void ImageView::zoomOut() { - autoZoomFit_ = false; - if(!image_.isNull()) { - resetTransform(); - scaleFactor_ /= 1.1; - scale(scaleFactor_, scaleFactor_); - queueGenerateCache(); - } -} - -void ImageView::zoomOriginal() { - resetTransform(); - scaleFactor_ = 1.0; - autoZoomFit_ = false; - queueGenerateCache(); -} - -void ImageView::setImage(const QImage& image, bool show) { - if(show && (gifMovie_ || isSVG)) { // a gif animation or SVG file was shown before - scene_->clear(); - isSVG = false; - if(gifMovie_) { // should be deleted explicitly - delete gifMovie_; - gifMovie_ = nullptr; - } - // recreate the rect item - imageItem_ = new QGraphicsRectItem(); - imageItem_->hide(); - imageItem_->setPen(QPen(Qt::NoPen)); - scene_->addItem(imageItem_); - } - - image_ = image; - if(image.isNull()) { - imageItem_->hide(); - imageItem_->setBrush(QBrush()); - scene_->setSceneRect(0, 0, 0, 0); - } - else { - if(show) { - imageItem_->setRect(0, 0, image_.width(), image_.height()); - imageItem_->setBrush(image_); - imageItem_->show(); - } - scene_->setSceneRect(0, 0, image_.width(), image_.height()); - } - - if(autoZoomFit_) - zoomFit(); - queueGenerateCache(); - - // clear the numbering - nextNumber = 1; -} - -void ImageView::setGifAnimation(const QString& fileName) { - /* the built-in gif reader gives the first frame, which won't - be shown but is used for tracking position and dimensions */ - image_ = QImage(fileName); - if(image_.isNull()) { - if(imageItem_) { - imageItem_->hide(); - imageItem_->setBrush(QBrush()); - } - scene_->setSceneRect(0, 0, 0, 0); - } - else { - scene_->clear(); - imageItem_ = nullptr; // it's deleted by clear(); - if(gifMovie_) { - delete gifMovie_; - gifMovie_ = nullptr; - } - QPixmap pix(image_.size()); - pix.fill(Qt::transparent); - QGraphicsItem *gifItem = new QGraphicsPixmapItem(pix); - QLabel *gifLabel = new QLabel(); - gifMovie_ = new QMovie(fileName); - QGraphicsProxyWidget* gifWidget = new QGraphicsProxyWidget(gifItem); - gifLabel->setAttribute(Qt::WA_NoSystemBackground); - gifLabel->setMovie(gifMovie_); - gifWidget->setWidget(gifLabel); - gifMovie_->start(); - scene_->addItem(gifItem); - scene_->setSceneRect(gifItem->boundingRect()); - } - - if(autoZoomFit_) - zoomFit(); - queueGenerateCache(); // deletes the cache timer in this case -} - -void ImageView::setSVG(const QString& fileName) { - image_ = QImage(fileName); // for tracking position and dimensions - if(image_.isNull()) { - if(imageItem_) { - imageItem_->hide(); - imageItem_->setBrush(QBrush()); - } - scene_->setSceneRect(0, 0, 0, 0); - } - else { - scene_->clear(); - imageItem_ = nullptr; - isSVG = true; - QGraphicsSvgItem *svgItem = new QGraphicsSvgItem(fileName); - scene_->addItem(svgItem); - scene_->setSceneRect(svgItem->boundingRect()); - } - - if(autoZoomFit_) - zoomFit(); - queueGenerateCache(); // deletes the cache timer in this case -} - -void ImageView::setScaleFactor(double factor) { - if(factor != scaleFactor_) { - scaleFactor_ = factor; - resetTransform(); - scale(factor, factor); - queueGenerateCache(); - } -} - -void ImageView::paintEvent(QPaintEvent* event) { - // if the image is scaled and we have a high quality cached image - if(imageItem_ && scaleFactor_ != 1.0 && !cachedPixmap_.isNull()) { - // rectangle of the whole image in viewport coordinate - QRect viewportImageRect = sceneToViewport(imageItem_->rect()); - // the visible part of the image. - QRect desiredCachedRect = viewportToScene(viewportImageRect.intersected(viewport()->rect())); - // check if the cached area is what we need and if the cache is out of date - if(cachedSceneRect_ == desiredCachedRect) { - // rect of the image area that needs repaint, in viewport coordinate - QRect repaintImageRect = viewportImageRect.intersected(event->rect()); - // see if the part asking for repaint is contained by our cache. - if(cachedRect_.contains(repaintImageRect)) { - QPainter painter(viewport()); - painter.fillRect(event->rect(), backgroundBrush()); - painter.drawPixmap(repaintImageRect, cachedPixmap_); - return; - } - } - } - if(!image_.isNull()) { // we don't have a cache yet or it's out of date already, generate one - queueGenerateCache(); - } - QGraphicsView::paintEvent(event); -} - -void ImageView::queueGenerateCache() { - if(!cachedPixmap_.isNull()) // clear the old pixmap if there's any - cachedPixmap_ = QPixmap(); - - // we don't need to cache the scaled image if its the same as the original image (scale:1.0) - // no cache for gif animations or SVG images either - if(scaleFactor_ == 1.0 || gifMovie_ || isSVG) { - if(cacheTimer_) { - cacheTimer_->stop(); - delete cacheTimer_; - cacheTimer_ = nullptr; - } - return; - } - - if(!cacheTimer_) { - cacheTimer_ = new QTimer(); - cacheTimer_->setSingleShot(true); - connect(cacheTimer_, &QTimer::timeout, this, &ImageView::generateCache); - } - if(cacheTimer_) - cacheTimer_->start(200); // restart the timer -} - -// really generate the cache -void ImageView::generateCache() { - // disable the one-shot timer - cacheTimer_->deleteLater(); - cacheTimer_ = nullptr; - - if(!imageItem_ || image_.isNull()) return; - - // generate a cache for "the visible part" of the scaled image - // rectangle of the whole image in viewport coordinate - QRect viewportImageRect = sceneToViewport(imageItem_->rect()); - // rect of the image area that's visible in the viewport (in viewport coordinate) - cachedRect_ = viewportImageRect.intersected(viewport()->rect()); - - // convert to the coordinate of the original image - cachedSceneRect_ = viewportToScene(cachedRect_); - // create a sub image of the visible without real data copy - // Reference: https://stackoverflow.com/questions/12681554/dividing-qimage-to-smaller-pieces - QRect subRect = image_.rect().intersected(cachedSceneRect_); - const uchar* bits = image_.constBits(); - unsigned int offset = subRect.x() * image_.depth() / 8 + subRect.y() * image_.bytesPerLine(); - QImage subImage = QImage(bits + offset, subRect.width(), subRect.height(), image_.bytesPerLine(), image_.format()); - - // If the original image has a color table, also use it for the subImage - QVector colorTable = image_.colorTable(); - if (!colorTable.empty()) - subImage.setColorTable(colorTable); - - // QImage scaled = subImage.scaled(subRect.width() * scaleFactor_, subRect.height() * scaleFactor_, Qt::KeepAspectRatio, Qt::SmoothTransformation); - QImage scaled = subImage.scaled(cachedRect_.width(), cachedRect_.height(), Qt::KeepAspectRatio, Qt::SmoothTransformation); - - // convert the cached scaled image to pixmap - cachedPixmap_ = QPixmap::fromImage(scaled); - viewport()->update(); -} - -// convert viewport coordinate to the original image (not scaled). -QRect ImageView::viewportToScene(const QRect& rect) { - // QPolygon poly = mapToScene(imageItem_->rect()); - QPoint topLeft = mapToScene(rect.topLeft()).toPoint(); - QPoint bottomRight = mapToScene(rect.bottomRight()).toPoint(); - return QRect(topLeft, bottomRight); -} - -QRect ImageView::sceneToViewport(const QRectF& rect) { - QPoint topLeft = mapFromScene(rect.topLeft()); - QPoint bottomRight = mapFromScene(rect.bottomRight()); - return QRect(topLeft, bottomRight); -} - -void ImageView::blankCursor() { - viewport()->setCursor(Qt::BlankCursor); -} - -void ImageView::hideCursor(bool enable) { - if(enable) { - delete cursorTimer_; - cursorTimer_ = new QTimer(this); - cursorTimer_->setSingleShot(true); - connect(cursorTimer_, &QTimer::timeout, this, &ImageView::blankCursor); - if(viewport()->cursor().shape() == Qt::OpenHandCursor) - cursorTimer_->start(CURSOR_HIDE_DELY); - } - else if (cursorTimer_) { - cursorTimer_->stop(); - delete cursorTimer_; - cursorTimer_ = nullptr; - if(viewport()->cursor().shape() == Qt::BlankCursor) - viewport()->setCursor(Qt::OpenHandCursor); - } -} - -void ImageView::activateTool(Tool tool) { - currentTool = tool; - viewport()->setCursor(tool == ToolNone ? - Qt::OpenHandCursor : - Qt::CrossCursor); -} - -void ImageView::drawArrow(QPainter &painter, - const QPoint &start, - const QPoint &end, - qreal tipAngle, - int tipLen) const -{ - // Draw the line - painter.drawLine(start, end); - - // Calculate the angle of the line - QPoint delta = end - start; - qreal angle = qAtan2(-delta.y(), delta.x()) - M_PI / 2; - - // Calculate the points of the lines that converge at the tip - QPoint tip1( - static_cast(qSin(angle + tipAngle) * tipLen), - static_cast(qCos(angle + tipAngle) * tipLen) - ); - QPoint tip2( - static_cast(qSin(angle - tipAngle) * tipLen), - static_cast(qCos(angle - tipAngle) * tipLen) - ); - - // Draw the two lines - painter.drawLine(end, end + tip1); - painter.drawLine(end, end + tip2); -} - -} // namespace LxImage diff --git a/src/imageview.h b/src/imageview.h deleted file mode 100644 index 11a42c1..0000000 --- a/src/imageview.h +++ /dev/null @@ -1,134 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_IMAGEVIEW_H -#define LXIMAGE_IMAGEVIEW_H - -#include "graphicsscene.h" -#include -#include -#include -#include -#include -#include -#include - -class QTimer; - -namespace LxImage { - -class ImageView : public QGraphicsView { - Q_OBJECT - -public: - ImageView(QWidget* parent = 0); - virtual ~ImageView(); - - void setImage(const QImage& image, bool show = true); - void setGifAnimation(const QString& fileName); - void setSVG(const QString& fileName); - - QImage image() { - return image_; - } - - void setScaleFactor(double scale); - - double scaleFactor() { - return scaleFactor_; - } - - void zoomIn(); - void zoomOut(); - void zoomFit(); - void zoomOriginal(); - - bool autoZoomFit() { - return autoZoomFit_; - } - - // if set to true, zoomFit() is done automatically when the size of the window is changed. - void setAutoZoomFit(bool value) { - autoZoomFit_ = value; - } - - // if set to true, hides the cursor after 3s of inactivity - void hideCursor(bool enable); - - // Annotation tools - enum Tool { - ToolNone, - ToolArrow, - ToolRectangle, - ToolCircle, - ToolNumber - }; - void activateTool(Tool tool); - -Q_SIGNALS: - void fileDropped(const QString file); - -protected: - virtual void wheelEvent(QWheelEvent* event); - virtual void mouseDoubleClickEvent(QMouseEvent* event); - virtual void mousePressEvent(QMouseEvent* event); - virtual void mouseReleaseEvent(QMouseEvent* event); - virtual void mouseMoveEvent(QMouseEvent* event); - virtual void focusInEvent(QFocusEvent* event); - virtual void resizeEvent(QResizeEvent* event); - virtual void paintEvent(QPaintEvent* event); - -private: - void queueGenerateCache(); - QRect viewportToScene(const QRect& rect); - QRect sceneToViewport(const QRectF& rect); - - void drawArrow(QPainter &painter, - const QPoint &start, - const QPoint &end, - qreal tipAngle, - int tipLen) const; - -private Q_SLOTS: - void onFileDropped(const QString file); - void generateCache(); - void blankCursor(); - -private: - GraphicsScene* scene_; // the topmost container of all graphic items - QGraphicsRectItem* imageItem_; // the rect item used to draw the image - QImage image_; // image to show - QMovie *gifMovie_; // gif animation to show (should be deleted explicitly) - QPixmap cachedPixmap_; // caching of current viewport content (high quality scaled image) - QRect cachedRect_; // rectangle containing the cached region (in viewport coordinate) - QRect cachedSceneRect_; // rectangle containing the cached region (in scene/original image coordinate) - QTimer* cacheTimer_; - QTimer *cursorTimer_; // for hiding cursor in fullscreen mode - double scaleFactor_; - bool autoZoomFit_; - bool isSVG; // is the image an SVG file? - Tool currentTool; // currently selected tool - QPoint startPoint; // starting point for the tool - int nextNumber; -}; - -} - -#endif // LXIMAGE_IMAGEVIEW_H diff --git a/src/img/draw-arrow.svg b/src/img/draw-arrow.svg deleted file mode 100644 index 2b1b68e..0000000 --- a/src/img/draw-arrow.svg +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - - diff --git a/src/img/draw-circle.svg b/src/img/draw-circle.svg deleted file mode 100644 index bbac10e..0000000 --- a/src/img/draw-circle.svg +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - diff --git a/src/img/draw-none.svg b/src/img/draw-none.svg deleted file mode 100644 index 90e8866..0000000 --- a/src/img/draw-none.svg +++ /dev/null @@ -1,75 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - - diff --git a/src/img/draw-number.svg b/src/img/draw-number.svg deleted file mode 100644 index 0b3ae45..0000000 --- a/src/img/draw-number.svg +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - 3 - - diff --git a/src/img/draw-rectangle.svg b/src/img/draw-rectangle.svg deleted file mode 100644 index 64720a6..0000000 --- a/src/img/draw-rectangle.svg +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - diff --git a/src/loadimagejob.cpp b/src/loadimagejob.cpp deleted file mode 100644 index 51d39bf..0000000 --- a/src/loadimagejob.cpp +++ /dev/null @@ -1,141 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "loadimagejob.h" -#include "mainwindow.h" -#include -#include -#include -#include - -using namespace LxImage; - -LoadImageJob::LoadImageJob(const Fm::FilePath & filePath): - path_{filePath} { -} - -LoadImageJob::~LoadImageJob() { -} - -void readExifEntry(ExifEntry* ee, void* user_data) { - QMap& exifData = *reinterpret_cast*>(user_data); - char c[100]; - auto ifd = exif_entry_get_ifd(ee); - QString key = exif_tag_get_title_in_ifd(ee->tag, ifd); - QString value = exif_entry_get_value(ee, c, 100); - exifData.insert(key, value); -} - -void readExifContent(ExifContent* ec, void* user_data) { - exif_content_foreach_entry(ec, readExifEntry, user_data); -} - -// This is called from the worker thread, not main thread -void LoadImageJob::exec() { - GFileInputStream* fileStream = nullptr; - Fm::GErrorPtr error; - ErrorAction act = ErrorAction::RETRY; - QByteArray imageBuffer; - while (act == ErrorAction::RETRY && !isCancelled()) - { - error.reset(); - if (nullptr == (fileStream = g_file_read(path_.gfile().get(), cancellable().get(), &error))) - { - act = emitError(error); - continue; - } - - // the file stream is successfully opened - imageBuffer.truncate(0); - GInputStream* inputStream = G_INPUT_STREAM(fileStream); - while(!error && !isCancelled()) { - char buffer[4096]; - error.reset(); - gssize readSize = g_input_stream_read(inputStream, - buffer, 4096, - cancellable().get(), &error); - if(readSize == -1 || readSize == 0) // error or EOF - break; - // append the bytes read to the image buffer - imageBuffer.append(buffer, readSize); - } - g_input_stream_close(inputStream, nullptr, nullptr); - - if (!error) - break; // everything read or cancel requested - - act = emitError(error); - } - - // FIXME: maybe it's a better idea to implement a GInputStream based QIODevice. - if(!error && !isCancelled()) { // load the image from buffer if there are no errors - image_ = QImage::fromData(imageBuffer); - - if(!image_.isNull()) { // if the image is loaded correctly - // check if this file is a jpeg file - // FIXME: can we use FmFileInfo instead if it's available? - const Fm::CStrPtr basename = path_.baseName(); - const Fm::CStrPtr mime_type{g_content_type_guess(basename.get(), nullptr, 0, nullptr)}; - if(mime_type && strcmp(mime_type.get(), "image/jpeg") == 0) { // this is a jpeg file - // use libexif to extract additional info embedded in jpeg files - std::unique_ptr exif_loader{exif_loader_new(), &exif_loader_unref}; - // write image data to exif loader - exif_loader_write(exif_loader.get(), reinterpret_cast(const_cast(imageBuffer.constData())), static_cast(imageBuffer.size())); - std::unique_ptr exif_data{exif_loader_get_data(exif_loader.get()), &exif_data_unref}; - exif_loader.reset(); - if (exif_data) { - /* reference for EXIF orientation tag: - * https://www.impulseadventure.com/photo/exif-orientation.html */ - ExifEntry* orient_ent = exif_data_get_entry(exif_data.get(), EXIF_TAG_ORIENTATION); - if(orient_ent) { /* orientation flag found in EXIF */ - gushort orient; - ExifByteOrder bo = exif_data_get_byte_order(exif_data.get()); - /* bo == EXIF_BYTE_ORDER_INTEL ; */ - orient = exif_get_short (orient_ent->data, bo); - qreal rotate_degrees = 0.0; - switch(orient) { - case 1: /* no rotation */ - break; - case 8: - rotate_degrees = 270.0; - break; - case 3: - rotate_degrees = 180.0; - break; - case 6: - rotate_degrees = 90.0; - break; - } - // rotate the image according to EXIF orientation tag - if(rotate_degrees != 0.0) { - QTransform transform; - transform.rotate(rotate_degrees); - image_ = image_.transformed(transform, Qt::SmoothTransformation); - } - } - - // handle other EXIF tags as well - exif_data_foreach_content(exif_data.get(), readExifContent, &exifData_); - } - } - } - } -} - diff --git a/src/loadimagejob.h b/src/loadimagejob.h deleted file mode 100644 index 30774af..0000000 --- a/src/loadimagejob.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_LOADIMAGEJOB_H -#define LXIMAGE_LOADIMAGEJOB_H - -#include -#include -#include -#include - -namespace LxImage { - -class LoadImageJob : public Fm::Job { - -public: - LoadImageJob(const Fm::FilePath & filePath); - - QImage image() const { - return image_; - } - - const Fm::FilePath & filePath() const { - return path_; - } - - QMap getExifData() { - return exifData_; - } - -private: - ~LoadImageJob(); // prevent direct deletion - - virtual void exec() override; - QMap exifData_; - - const Fm::FilePath path_; - QImage image_; -}; - -} - -#endif // LXIMAGE_LOADIMAGEJOB_H diff --git a/src/lximage-qt.cpp b/src/lximage-qt.cpp deleted file mode 100644 index 969616e..0000000 --- a/src/lximage-qt.cpp +++ /dev/null @@ -1,30 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include "application.h" - -int main(int argc, char** argv) { - LxImage::Application app(argc, argv); - if(!app.init(argc, argv)) - return 0; - return app.exec(); -} diff --git a/src/lximage-qt.h b/src/lximage-qt.h deleted file mode 100644 index ea063f0..0000000 --- a/src/lximage-qt.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef lximage_qt_H -#define lximage_qt_H - -namespace LxImage { - -}; - -#endif // lximage_qt_H diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp deleted file mode 100644 index 7ad768e..0000000 --- a/src/mainwindow.cpp +++ /dev/null @@ -1,1101 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "mainwindow.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "application.h" -#include -#include -#include -#include - -#include "mrumenu.h" -#include "upload/uploaddialog.h" - -using namespace LxImage; - -MainWindow::MainWindow(): - QMainWindow(), - contextMenu_(new QMenu(this)), - slideShowTimer_(nullptr), - image_(), - // currentFileInfo_(nullptr), - imageModified_(false), - folder_(nullptr), - folderModel_(new Fm::FolderModel()), - proxyModel_(new Fm::ProxyFolderModel()), - modelFilter_(new ModelFilter()), - thumbnailsDock_(nullptr), - thumbnailsView_(nullptr), - loadJob_(nullptr), - saveJob_(nullptr) { - - setAttribute(Qt::WA_DeleteOnClose); // FIXME: check if current image is saved before close - - Application* app = static_cast(qApp); - app->addWindow(); - - Settings& settings = app->settings(); - - ui.setupUi(this); - connect(ui.actionScreenshot, &QAction::triggered, app, &Application::screenshot); - connect(ui.actionPreferences, &QAction::triggered, app , &Application::editPreferences); - - proxyModel_->addFilter(modelFilter_); - proxyModel_->sort(Fm::FolderModel::ColumnFileName, Qt::AscendingOrder); - proxyModel_->setSourceModel(folderModel_); - - // build context menu - ui.view->setContextMenuPolicy(Qt::CustomContextMenu); - connect(ui.view, &QWidget::customContextMenuRequested, this, &MainWindow::onContextMenu); - - connect(ui.view, &ImageView::fileDropped, this, &MainWindow::onFileDropped); - - // install an event filter on the image view - ui.view->installEventFilter(this); - ui.view->setBackgroundBrush(QBrush(settings.bgColor())); - - if(settings.showThumbnails()) - setShowThumbnails(true); - - contextMenu_->addAction(ui.actionPrevious); - contextMenu_->addAction(ui.actionNext); - contextMenu_->addSeparator(); - contextMenu_->addAction(ui.actionZoomOut); - contextMenu_->addAction(ui.actionZoomIn); - contextMenu_->addAction(ui.actionOriginalSize); - contextMenu_->addAction(ui.actionZoomFit); - contextMenu_->addSeparator(); - contextMenu_->addAction(ui.actionSlideShow); - contextMenu_->addAction(ui.actionFullScreen); - contextMenu_->addSeparator(); - contextMenu_->addAction(ui.actionRotateClockwise); - contextMenu_->addAction(ui.actionRotateCounterclockwise); - contextMenu_->addAction(ui.actionFlipHorizontal); - contextMenu_->addAction(ui.actionFlipVertical); - contextMenu_->addAction(ui.actionFlipVertical); - - // Open images when MRU items are clicked - connect(ui.menuRecently_Opened_Files, &MruMenu::itemClicked, this, &MainWindow::onFileDropped); - - // Create an action group for the annotation tools - QActionGroup *annotationGroup = new QActionGroup(this); - annotationGroup->addAction(ui.actionDrawNone); - annotationGroup->addAction(ui.actionDrawArrow); - annotationGroup->addAction(ui.actionDrawRectangle); - annotationGroup->addAction(ui.actionDrawCircle); - annotationGroup->addAction(ui.actionDrawNumber); - ui.actionDrawNone->setChecked(true); - - // create keyboard shortcuts - QShortcut* shortcut = new QShortcut(Qt::Key_Left, this); - connect(shortcut, &QShortcut::activated, this, &MainWindow::on_actionPrevious_triggered); - shortcut = new QShortcut(Qt::Key_Backspace, this); - connect(shortcut, &QShortcut::activated, this, &MainWindow::on_actionPrevious_triggered); - shortcut = new QShortcut(Qt::Key_Right, this); - connect(shortcut, &QShortcut::activated, this, &MainWindow::on_actionNext_triggered); - shortcut = new QShortcut(Qt::Key_Space, this); - connect(shortcut, &QShortcut::activated, this, &MainWindow::on_actionNext_triggered); - shortcut = new QShortcut(Qt::Key_Escape, this); - connect(shortcut, &QShortcut::activated, this, &MainWindow::onKeyboardEscape); -} - -MainWindow::~MainWindow() { - delete slideShowTimer_; - delete thumbnailsView_; - delete thumbnailsDock_; - - if(loadJob_) { - loadJob_->cancel(); - // we don't need to do delete here. It will be done automatically - } - //if(currentFileInfo_) - // fm_file_info_unref(currentFileInfo_); - delete folderModel_; - delete proxyModel_; - delete modelFilter_; - - Application* app = static_cast(qApp); - app->removeWindow(); -} - -void MainWindow::on_actionAbout_triggered() { - QMessageBox::about(this, tr("About"), - tr("LXImage-Qt - a simple and fast image viewer\n\n" - "Copyright (C) 2013\n" - "LXQt Project: https://lxqt.org/\n\n" - "Authors:\n" - "Hong Jen Yee (PCMan) ")); -} - -void MainWindow::on_actionOriginalSize_triggered() { - ui.view->setAutoZoomFit(false); - ui.view->zoomOriginal(); -} - -void MainWindow::on_actionZoomFit_triggered() { - ui.view->setAutoZoomFit(true); - ui.view->zoomFit(); -} - -void MainWindow::on_actionZoomIn_triggered() { - ui.view->setAutoZoomFit(false); - ui.view->zoomIn(); -} - -void MainWindow::on_actionZoomOut_triggered() { - ui.view->setAutoZoomFit(false); - ui.view->zoomOut(); -} - -void MainWindow::on_actionDrawNone_triggered() { - ui.view->activateTool(ImageView::ToolNone); -} - -void MainWindow::on_actionDrawArrow_triggered() { - ui.view->activateTool(ImageView::ToolArrow); -} - -void MainWindow::on_actionDrawRectangle_triggered() { - ui.view->activateTool(ImageView::ToolRectangle); -} - -void MainWindow::on_actionDrawCircle_triggered() { - ui.view->activateTool(ImageView::ToolCircle); -} - -void MainWindow::on_actionDrawNumber_triggered() { - ui.view->activateTool(ImageView::ToolNumber); -} - - -void MainWindow::onFolderLoaded() { - // if currently we're showing a file, get its index in the folder now - // since the folder is fully loaded. - if(currentFile_ && !currentIndex_.isValid()) { - currentIndex_ = indexFromPath(currentFile_); - if(thumbnailsView_) { // showing thumbnails - // select current file in the thumbnails view - thumbnailsView_->childView()->setCurrentIndex(currentIndex_); - thumbnailsView_->childView()->scrollTo(currentIndex_, QAbstractItemView::EnsureVisible); - } - } - // this is used to open the first image of a folder - else if (!currentFile_) - on_actionFirst_triggered(); -} - -void MainWindow::openImageFile(const QString& fileName) { - const Fm::FilePath path = Fm::FilePath::fromPathStr(qPrintable(fileName)); - // the same file! do not load it again - if(currentFile_ && currentFile_ == path) - return; - - if (QFileInfo(fileName).isDir()) { - if(path == folderPath_) - return; - - QList formats = QImageReader::supportedImageFormats(); - QStringList formatsFilters; - for (const QByteArray& format: formats) - formatsFilters << QString("*.") + format; - QDir dir(fileName); - dir.setNameFilters(formatsFilters); - dir.setFilter(QDir::Files | QDir::NoDotAndDotDot); - if(dir.entryList().isEmpty()) - return; - - currentFile_ = Fm::FilePath{}; - loadFolder(path); - } else { - // load the image file asynchronously - loadImage(path); - loadFolder(path.parent()); - } -} - -// paste the specified image into the current view, -// reset the window, remove loaded folders, and -// invalidate current file name. -void MainWindow::pasteImage(QImage newImage) { - // cancel loading of current image - if(loadJob_) { - loadJob_->cancel(); // the job object will be freed automatically later - loadJob_ = nullptr; - } - setModified(true); - - currentIndex_ = QModelIndex(); // invaludate current index since we don't have a folder model now - currentFile_ = Fm::FilePath{}; - - image_ = newImage; - ui.view->setImage(image_); - ui.view->zoomOriginal(); - - updateUI(); -} - -// popup a file dialog and retrieve the selected image file name -QString MainWindow::openFileName() { - QString filterStr; - QList formats = QImageReader::supportedImageFormats(); - QList::iterator it = formats.begin(); - for(;;) { - filterStr += "*."; - filterStr += (*it).toLower(); - ++it; - if(it != formats.end()) - filterStr += ' '; - else - break; - } - - QString fileName = QFileDialog::getOpenFileName( - this, tr("Open File"), QString(), - tr("Image files (%1)").arg(filterStr)); - return fileName; -} - -QString MainWindow::openDirectory() { - QString directory = QFileDialog::getExistingDirectory(this, - tr("Open directory"), QString()); - return directory; -} - -// popup a file dialog and retrieve the selected image file name -QString MainWindow::saveFileName(const QString& defaultName) { - QString filterStr; - QList formats = QImageWriter::supportedImageFormats(); - QList::iterator it = formats.begin(); - for(;;) { - filterStr += "*."; - filterStr += (*it).toLower(); - ++it; - if(it != formats.end()) - filterStr += ' '; - else - break; - } - // FIXME: should we generate better filter strings? one format per item? - - QString fileName; - QFileDialog diag(this, tr("Save File"), defaultName, - tr("Image files (%1)").arg(filterStr)); - diag.setAcceptMode(QFileDialog::AcceptMode::AcceptSave); - diag.setFileMode(QFileDialog::FileMode::AnyFile); - diag.setDefaultSuffix("png"); - - if (diag.exec()) { - fileName = diag.selectedFiles().at(0); - } - - return fileName; -} - -void MainWindow::on_actionOpenFile_triggered() { - QString fileName = openFileName(); - if(!fileName.isEmpty()) { - openImageFile(fileName); - } -} - -void MainWindow::on_actionOpenDirectory_triggered() { - QString directory = openDirectory(); - if(!directory.isEmpty()) { - openImageFile(directory); - } -} - -void MainWindow::on_actionReload_triggered() { - if (currentFile_) { - loadImage(currentFile_); - } -} - -void MainWindow::on_actionNewWindow_triggered() { - Application* app = static_cast(qApp); - MainWindow* window = new MainWindow(); - window->resize(app->settings().windowWidth(), app->settings().windowHeight()); - - if(app->settings().windowMaximized()) - window->setWindowState(window->windowState() | Qt::WindowMaximized); - - window->show(); -} - -void MainWindow::on_actionSave_triggered() { - if(saveJob_) // if we're currently saving another file - return; - - if(!image_.isNull()) { - if(currentFile_) - saveImage(currentFile_); - else - on_actionSaveAs_triggered(); - } -} - -void MainWindow::on_actionSaveAs_triggered() { - if(saveJob_) // if we're currently saving another file - return; - QString baseName; - if(currentFile_) - baseName = QString::fromUtf8(currentFile_.displayName().get()); - - QString fileName = saveFileName(baseName); - if(!fileName.isEmpty()) { - const Fm::FilePath path = Fm::FilePath::fromPathStr(qPrintable(fileName)); - // save the image file asynchronously - saveImage(path); - - if(!currentFile_) { // if we haven't load any file yet - currentFile_ = path; - loadFolder(path.parent()); - } - } -} - -void MainWindow::on_actionDelete_triggered() { - // delete the current file - if(currentFile_) - Fm::FileOperation::deleteFiles({currentFile_}); -} - -void MainWindow::on_actionFileProperties_triggered() { - if(currentIndex_.isValid()) { - const auto file = proxyModel_->fileInfoFromIndex(currentIndex_); - // it's better to use an async job to query the file info since it's - // possible that loading of the folder is not finished and the file info is - // not available yet, but it's overkill for a rarely used function. - if(file) - Fm::FilePropsDialog::showForFile(std::move(file)); - } -} - -void MainWindow::on_actionClose_triggered() { - deleteLater(); -} - -void MainWindow::on_actionNext_triggered() { - if(proxyModel_->rowCount() <= 1) - return; - if(currentIndex_.isValid()) { - QModelIndex index; - if(currentIndex_.row() < proxyModel_->rowCount() - 1) - index = proxyModel_->index(currentIndex_.row() + 1, 0); - else - index = proxyModel_->index(0, 0); - const auto info = proxyModel_->fileInfoFromIndex(index); - if(info) - loadImage(info->path(), index); - } -} - -void MainWindow::on_actionPrevious_triggered() { - if(proxyModel_->rowCount() <= 1) - return; - if(currentIndex_.isValid()) { - QModelIndex index; - if(currentIndex_.row() > 0) - index = proxyModel_->index(currentIndex_.row() - 1, 0); - else - index = proxyModel_->index(proxyModel_->rowCount() - 1, 0); - const auto info = proxyModel_->fileInfoFromIndex(index); - if(info) - loadImage(info->path(), index); - } -} - -void MainWindow::on_actionFirst_triggered() { - QModelIndex index = proxyModel_->index(0, 0); - if(index.isValid()) { - const auto info = proxyModel_->fileInfoFromIndex(index); - if(info) - loadImage(info->path(), index); - } -} - -void MainWindow::on_actionLast_triggered() { - QModelIndex index = proxyModel_->index(proxyModel_->rowCount() - 1, 0); - if(index.isValid()) { - const auto info = proxyModel_->fileInfoFromIndex(index); - if(info) - loadImage(info->path(), index); - } -} - -void MainWindow::loadFolder(const Fm::FilePath & newFolderPath) { - if(folder_) { // an folder is already loaded - if(newFolderPath == folderPath_) // same folder, ignore - return; - disconnect(folder_.get(), nullptr, this, nullptr); // disconnect from all signals - } - - folderPath_ = newFolderPath; - folder_ = Fm::Folder::fromPath(folderPath_); - connect(folder_.get(), &Fm::Folder::finishLoading, this, &MainWindow::onFolderLoaded); - - folderModel_->setFolder(folder_); - currentIndex_ = QModelIndex(); // set current index to invalid -} - -// the image is loaded (the method is only called if the loading is not cancelled) -void MainWindow::onImageLoaded() { - // Note: As the signal finished() is emitted from different thread, - // we can get it even after canceling the job (and setting the loadJob_ - // to nullptr). This simple check should be enough. - if (sender() == loadJob_) - { - // Add to the MRU menu - ui.menuRecently_Opened_Files->addItem(loadJob_->filePath().localPath().get()); - - image_ = loadJob_->image(); - exifData_ = loadJob_->getExifData(); - - loadJob_ = nullptr; // the job object will be freed later automatically - - ui.view->setAutoZoomFit(true); - ui.view->setImage(image_); - - // currentIndex_ should be corrected after loading - currentIndex_ = indexFromPath(currentFile_); - - updateUI(); - - /* we resized and moved the window without showing - it in updateUI(), so we need to show it here */ - show(); - } -} - -void MainWindow::onImageSaved() { - if(!saveJob_->failed()) { - setModified(false); - } - saveJob_ = nullptr; -} - -// filter events of other objects, mainly the image view. -bool MainWindow::eventFilter(QObject* watched, QEvent* event) { - if(watched == ui.view) { // we got an event for the image view - switch(event->type()) { - case QEvent::Wheel: { // mouse wheel event - QWheelEvent* wheelEvent = static_cast(event); - if(wheelEvent->modifiers() == 0) { - int delta = wheelEvent->delta(); - if(delta < 0) - on_actionNext_triggered(); // next image - else - on_actionPrevious_triggered(); // previous image - } - break; - } - case QEvent::MouseButtonDblClick: { - QMouseEvent* mouseEvent = static_cast(event); - if(mouseEvent->button() == Qt::LeftButton) - ui.actionFullScreen->trigger(); - break; - } - default:; - } - } - else if(thumbnailsView_ && watched == thumbnailsView_->childView()) { - // scroll the thumbnail view with mouse wheel - switch(event->type()) { - case QEvent::Wheel: { // mouse wheel event - QWheelEvent* wheelEvent = static_cast(event); - if(wheelEvent->modifiers() == 0) { - int delta = wheelEvent->delta(); - QScrollBar* hscroll = thumbnailsView_->childView()->horizontalScrollBar(); - if(hscroll) - hscroll->setValue(hscroll->value() - delta); - return true; - } - break; - } - default:; - } - } - return QObject::eventFilter(watched, event); -} - -QModelIndex MainWindow::indexFromPath(const Fm::FilePath & filePath) { - // if the folder is already loaded, figure out our index - // otherwise, it will be done again in onFolderLoaded() when the folder is fully loaded. - if(folder_ && folder_->isLoaded()) { - QModelIndex index; - int count = proxyModel_->rowCount(); - for(int row = 0; row < count; ++row) { - index = proxyModel_->index(row, 0); - const auto info = proxyModel_->fileInfoFromIndex(index); - if(info && filePath == info->path()) { - return index; - } - } - } - return QModelIndex(); -} - - -void MainWindow::updateUI() { - if(currentIndex_.isValid()) { - if(thumbnailsView_) { // showing thumbnails - // select current file in the thumbnails view - thumbnailsView_->childView()->setCurrentIndex(currentIndex_); - thumbnailsView_->childView()->scrollTo(currentIndex_, QAbstractItemView::EnsureVisible); - } - - if(exifDataDock_) { - setShowExifData(true); - } - } - - QString title; - if(currentFile_) { - const Fm::CStrPtr dispName = currentFile_.displayName(); - if(loadJob_) { // if loading is in progress - title = tr("[*]%1 (Loading...) - Image Viewer") - .arg(QString::fromUtf8(dispName.get())); - } - else { - if(image_.isNull()) { - title = tr("[*]%1 (Failed to Load) - Image Viewer") - .arg(QString::fromUtf8(dispName.get())); - } - else { - title = tr("[*]%1 (%2x%3) - Image Viewer") - .arg(QString::fromUtf8(dispName.get())) - .arg(image_.width()) - .arg(image_.height()); - /* Here we try to implement the following behavior as far as possible: - (1) A minimum size of 400x400 is assumed; - (2) The window is scaled to fit the image; - (3) But for too big images, the window is scaled down; - (4) The window is centered on the screen. */ - if (!isVisible()) { - /* To have a correct position, we should move the window BEFORE - it's shown but we also need to know the dimensions of its view. - Therefore, we use show() without really showing the window. */ - setAttribute(Qt::WA_DontShowOnScreen); - show(); - int scrollThickness = style()->pixelMetric(QStyle::PM_ScrollBarExtent); - QSize newSize = size() + image_.size() - ui.view->size() + QSize(scrollThickness, scrollThickness); - QRect ag = QApplication::desktop()->availableGeometry(); - // since the window isn't decorated yet, we have to assume a max thickness for its frame - QSize maxFrame = QSize(50, 100); - if (newSize.width() > ag.width() - maxFrame.width() || newSize.height() > ag.height() - maxFrame.height()) - newSize.scale (ag.width() - maxFrame.width(), ag.height() - maxFrame.height(), Qt::KeepAspectRatio); - // a minimum size of 400x400 is good - if (newSize.width() < 400) newSize.rwidth() = 400; - if (newSize.height() < 400 ) newSize.rheight() = 400; - move (ag.x() + (ag.width() - newSize.width())/2, - ag.y() + (ag.height() - newSize.height())/2); - resize(newSize); - hide(); // hide it to show it again later, at onImageLoaded() - setAttribute(Qt::WA_DontShowOnScreen, false); - } - } - } - // TODO: update status bar, show current index in the folder - } - else { - title = tr("[*]Image Viewer"); - } - setWindowTitle(title); - setWindowModified(imageModified_); -} - -// Load the specified image file asynchronously in a worker thread. -// When the loading is finished, onImageLoaded() will be called. -void MainWindow::loadImage(const Fm::FilePath & filePath, QModelIndex index) { - // cancel loading of current image - if(loadJob_) { - loadJob_->cancel(); // the job object will be freed automatically later - loadJob_ = nullptr; - } - if(imageModified_) { - // TODO: ask the user to save the modified image? - // this should be made optional - setModified(false); - } - - currentIndex_ = index; - currentFile_ = filePath; - // clear current image, but do not update the view now to prevent flickers - image_ = QImage(); - - const Fm::CStrPtr basename = currentFile_.baseName(); - char* mime_type = g_content_type_guess(basename.get(), nullptr, 0, nullptr); - QString mimeType; - if (mime_type) { - mimeType = QString(mime_type); - g_free(mime_type); - } - if(mimeType == "image/gif" - || mimeType == "image/svg+xml" || mimeType == "image/svg+xml-compressed") { - const Fm::CStrPtr file_name = currentFile_.toString(); - ui.view->setAutoZoomFit(true); // like in onImageLoaded() - if(mimeType == "image/gif") - ui.view->setGifAnimation(QString{file_name.get()}); - else - ui.view->setSVG(QString{file_name.get()}); - image_ = ui.view->image(); - updateUI(); - show(); - } - else { - // start a new gio job to load the specified image - loadJob_ = new LoadImageJob(currentFile_); - connect(loadJob_, &Fm::Job::finished, this, &MainWindow::onImageLoaded); - connect(loadJob_, &Fm::Job::error, this - , [] (const Fm::GErrorPtr & err, Fm::Job::ErrorSeverity /*severity*/, Fm::Job::ErrorAction & /*response*/) - { - // TODO: show a info bar? - qWarning().noquote() << "lximage-qt:" << err.message(); - } - , Qt::BlockingQueuedConnection); - loadJob_->runAsync(); - - updateUI(); - } -} - -void MainWindow::saveImage(const Fm::FilePath & filePath) { - if(saveJob_) // do not launch a new job if the current one is still in progress - return; - // start a new gio job to save current image to the specified path - saveJob_ = new SaveImageJob(ui.view->image(), filePath); - connect(saveJob_, &Fm::Job::finished, this, &MainWindow::onImageSaved); - connect(saveJob_, &Fm::Job::error, this - , [] (const Fm::GErrorPtr & err, Fm::Job::ErrorSeverity /*severity*/, Fm::Job::ErrorAction & /*response*/) - { - // TODO: show a info bar? - qWarning().noquote() << "lximage-qt:" << err.message(); - } - , Qt::BlockingQueuedConnection); - saveJob_->runAsync(); - // FIXME: add a cancel button to the UI? update status bar? -} - -QGraphicsItem* MainWindow::getGraphicsItem() { - if(!ui.view->items().isEmpty()) - return ui.view->items().at(0); - return nullptr; -} - -void MainWindow::on_actionRotateClockwise_triggered() { - QGraphicsItem *graphItem = getGraphicsItem(); - bool isGifOrSvg (graphItem->isWidget() // we have gif animation - || dynamic_cast(graphItem)); // an SVG image; - if(!image_.isNull()) { - QTransform transform; - transform.rotate(90.0); - image_ = image_.transformed(transform, Qt::SmoothTransformation); - /* when this is GIF or SVG, we need to rotate its corresponding QImage - without showing it to have the right measure for auto-zooming */ - ui.view->setImage(image_, isGifOrSvg ? false : true); - setModified(true); - } - - if(isGifOrSvg) { - QTransform transform; - transform.translate(graphItem->sceneBoundingRect().height(), 0); - transform.rotate(90); - // we need to apply transformations in the reverse order - QTransform prevTrans = graphItem->transform(); - graphItem->setTransform(transform, false); - graphItem->setTransform(prevTrans, true); - } -} - -void MainWindow::on_actionRotateCounterclockwise_triggered() { - QGraphicsItem *graphItem = getGraphicsItem(); - bool isGifOrSvg (graphItem->isWidget() - || dynamic_cast(graphItem)); - if(!image_.isNull()) { - QTransform transform; - transform.rotate(-90.0); - image_ = image_.transformed(transform, Qt::SmoothTransformation); - ui.view->setImage(image_, isGifOrSvg ? false : true); - setModified(true); - } - - if(isGifOrSvg) { - QTransform transform; - transform.translate(0, graphItem->sceneBoundingRect().width()); - transform.rotate(-90); - QTransform prevTrans = graphItem->transform(); - graphItem->setTransform(transform, false); - graphItem->setTransform(prevTrans, true); - } -} - -void MainWindow::on_actionCopy_triggered() { - QClipboard *clipboard = QApplication::clipboard(); - QImage copiedImage = image_; - // FIXME: should we copy the currently scaled result instead of the original image? - /* - double factor = ui.view->scaleFactor(); - if(factor == 1.0) - copiedImage = image_; - else - copiedImage = image_.scaled(); - */ - clipboard->setImage(copiedImage); -} - -void MainWindow::on_actionPaste_triggered() { - QClipboard *clipboard = QApplication::clipboard(); - QImage image = clipboard->image(); - if(!image.isNull()) { - pasteImage(image); - } -} - -void MainWindow::on_actionUpload_triggered() -{ - if (currentFile_.isValid()) { - UploadDialog(this, currentFile_.localPath().get()).exec(); - } -} - -void MainWindow::on_actionFlipVertical_triggered() { - bool hasQGraphicsItem(false); - if(QGraphicsItem *graphItem = getGraphicsItem()) { - hasQGraphicsItem = true; - QTransform transform; - transform.scale(1, -1); - transform.translate(0, -graphItem->sceneBoundingRect().height()); - QTransform prevTrans = graphItem->transform(); - graphItem->setTransform(transform, false); - graphItem->setTransform(prevTrans, true); - } - if(!image_.isNull()) { - image_ = image_.mirrored(false, true); - ui.view->setImage(image_, !hasQGraphicsItem); - setModified(true); - } -} - -void MainWindow::on_actionFlipHorizontal_triggered() { - bool hasQGraphicsItem(false); - if(QGraphicsItem *graphItem = getGraphicsItem()) { - hasQGraphicsItem = true; - QTransform transform; - transform.scale(-1, 1); - transform.translate(-graphItem->sceneBoundingRect().width(), 0); - QTransform prevTrans = graphItem->transform(); - graphItem->setTransform(transform, false); - graphItem->setTransform(prevTrans, true); - } - if(!image_.isNull()) { - image_ = image_.mirrored(true, true); - ui.view->setImage(image_, !hasQGraphicsItem); - setModified(true); - } -} - -void MainWindow::setModified(bool modified) { - imageModified_ = modified; - updateUI(); -} - -void MainWindow::applySettings() { - Application* app = static_cast(qApp); - Settings& settings = app->settings(); - if(isFullScreen()) - ui.view->setBackgroundBrush(QBrush(settings.fullScreenBgColor())); - else - ui.view->setBackgroundBrush(QBrush(settings.bgColor())); -} - -void MainWindow::on_actionPrint_triggered() { - // QPrinter printer(QPrinter::HighResolution); - QPrinter printer; - QPrintDialog dlg(&printer); - if(dlg.exec() == QDialog::Accepted) { - QPainter painter; - painter.begin(&printer); - QRect pageRect = printer.pageRect(); - int cols = (image_.width() / pageRect.width()) + (image_.width() % pageRect.width() ? 1 : 0); - int rows = (image_.height() / pageRect.height()) + (image_.height() % pageRect.height() ? 1 : 0); - for(int row = 0; row < rows; ++row) { - for(int col = 0; col < cols; ++col) { - QRect srcRect(pageRect.width() * col, pageRect.height() * row, pageRect.width(), pageRect.height()); - painter.drawImage(QPoint(0, 0), image_, srcRect); - if(col + 1 == cols && row + 1 == rows) // this is the last page - break; - printer.newPage(); - } - } - painter.end(); - } -} - -// TODO: This can later be used for doing slide show -void MainWindow::on_actionFullScreen_triggered(bool checked) { - if(checked) - showFullScreen(); - else - showNormal(); -} - -void MainWindow::on_actionSlideShow_triggered(bool checked) { - if(checked) { - if(!slideShowTimer_) { - slideShowTimer_ = new QTimer(); - // switch to the next image when timeout - connect(slideShowTimer_, &QTimer::timeout, this, &MainWindow::on_actionNext_triggered); - } - Application* app = static_cast(qApp); - slideShowTimer_->start(app->settings().slideShowInterval() * 1000); - // showFullScreen(); - ui.actionSlideShow->setIcon(QIcon::fromTheme("media-playback-stop")); - } - else { - if(slideShowTimer_) { - delete slideShowTimer_; - slideShowTimer_ = nullptr; - ui.actionSlideShow->setIcon(QIcon::fromTheme("media-playback-start")); - } - } -} - -void MainWindow::on_actionShowThumbnails_triggered(bool checked) { - setShowThumbnails(checked); -} - -void MainWindow::on_actionShowExifData_triggered(bool checked) { - setShowExifData(checked); -} - -void MainWindow::setShowThumbnails(bool show) { - if(show) { - if(!thumbnailsDock_) { - thumbnailsDock_ = new QDockWidget(this); - thumbnailsDock_->setFeatures(QDockWidget::NoDockWidgetFeatures); // FIXME: should use DockWidgetClosable - thumbnailsDock_->setWindowTitle(tr("Thumbnails")); - thumbnailsView_ = new Fm::FolderView(Fm::FolderView::IconMode); - thumbnailsDock_->setWidget(thumbnailsView_); - addDockWidget(Qt::BottomDockWidgetArea, thumbnailsDock_); - QListView* listView = static_cast(thumbnailsView_->childView()); - listView->setFlow(QListView::TopToBottom); - listView->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); - listView->setSelectionMode(QAbstractItemView::SingleSelection); - listView->installEventFilter(this); - // FIXME: optimize the size of the thumbnail view - // FIXME if the thumbnail view is docked elsewhere, update the settings. - if(Fm::FolderItemDelegate* delegate = static_cast(listView->itemDelegateForColumn(Fm::FolderModel::ColumnFileName))) { - int scrollHeight = style()->pixelMetric(QStyle::PM_ScrollBarExtent); - thumbnailsView_->setFixedHeight(delegate->itemSize().height() + scrollHeight); - } - thumbnailsView_->setModel(proxyModel_); - proxyModel_->setShowThumbnails(true); - if (currentFile_) { // select the loaded image - currentIndex_ = indexFromPath(currentFile_); - listView->setCurrentIndex(currentIndex_); - // wait to center the selection - QCoreApplication::processEvents(); - listView->scrollTo(currentIndex_, QAbstractItemView::PositionAtCenter); - } - connect(thumbnailsView_->selectionModel(), &QItemSelectionModel::selectionChanged, - this, &MainWindow::onThumbnailSelChanged); - } - } - else { - if(thumbnailsDock_) { - delete thumbnailsView_; - thumbnailsView_ = nullptr; - delete thumbnailsDock_; - thumbnailsDock_ = nullptr; - } - proxyModel_->setShowThumbnails(false); - } -} - -void MainWindow::setShowExifData(bool show) { - // Close the dock if it exists and show is false - if (exifDataDock_ && !show) { - exifDataDock_->close(); - exifDataDock_ = nullptr; - } - - // Be sure the dock was created before rendering content to it - if (show && !exifDataDock_) { - exifDataDock_ = new QDockWidget(tr("EXIF Data"), this); - exifDataDock_->setFeatures(QDockWidget::NoDockWidgetFeatures); - addDockWidget(Qt::RightDockWidgetArea, exifDataDock_); - } - - // Render the content to the dock - if (show) { - QWidget* exifDataDockView_ = new QWidget(); - - QVBoxLayout* exifDataDockViewContent_ = new QVBoxLayout(); - QTableWidget* exifDataContentTable_ = new QTableWidget(); - - // Table setup - exifDataContentTable_->setColumnCount(2); - exifDataContentTable_->setShowGrid(false); - exifDataContentTable_->horizontalHeader()->hide(); - exifDataContentTable_->verticalHeader()->hide(); - - // The table is not editable - exifDataContentTable_->setEditTriggers(QAbstractItemView::NoEditTriggers); - - // Write the EXIF Data to the table - for (const QString& key : exifData_.keys()) { - int rowCount = exifDataContentTable_->rowCount(); - - exifDataContentTable_->insertRow(rowCount); - exifDataContentTable_->setItem(rowCount,0, new QTableWidgetItem(key)); - exifDataContentTable_->setItem(rowCount,1, new QTableWidgetItem(exifData_.value(key))); - } - - // Table setup after content was added - exifDataContentTable_->resizeColumnsToContents(); - exifDataContentTable_->setHorizontalScrollMode(QAbstractItemView::ScrollPerPixel); - - exifDataDockViewContent_->addWidget(exifDataContentTable_); - exifDataDockView_->setLayout(exifDataDockViewContent_); - exifDataDock_->setWidget(exifDataDockView_); - } -} - -void MainWindow::changeEvent(QEvent* event) { - // TODO: hide menu/toolbars in full screen mode and make the background black. - if(event->type() == QEvent::WindowStateChange) { - Application* app = static_cast(qApp); - if(isFullScreen()) { // changed to fullscreen mode - ui.view->setFrameStyle(QFrame::NoFrame); - ui.view->setBackgroundBrush(QBrush(app->settings().fullScreenBgColor())); - ui.toolBar->hide(); - ui.annotationsToolBar->hide(); - ui.statusBar->hide(); - if(thumbnailsDock_) - thumbnailsDock_->hide(); - // NOTE: in fullscreen mode, all shortcut keys in the menu are disabled since the menu - // is disabled. We needs to add the actions to the main window manually to enable the - // shortcuts again. - ui.menubar->hide(); - const auto actions = ui.menubar->actions(); - for(QAction* action : qAsConst(actions)) { - if(!action->shortcut().isEmpty()) - addAction(action); - } - addActions(ui.menubar->actions()); - ui.view->hideCursor(true); - } - else { // restore to normal window mode - ui.view->setFrameStyle(QFrame::StyledPanel|QFrame::Sunken); - ui.view->setBackgroundBrush(QBrush(app->settings().bgColor())); - // now we're going to re-enable the menu, so remove the actions previously added. - const auto actions_ = ui.menubar->actions(); - for(QAction* action : qAsConst(actions_)) { - if(!action->shortcut().isEmpty()) - removeAction(action); - } - ui.menubar->show(); - ui.toolBar->show(); - ui.annotationsToolBar->show(); - ui.statusBar->show(); - if(thumbnailsDock_) - thumbnailsDock_->show(); - ui.view->hideCursor(false); - } - } - QWidget::changeEvent(event); -} - -void MainWindow::resizeEvent(QResizeEvent *event) { - QMainWindow::resizeEvent(event); - Settings& settings = static_cast(qApp)->settings(); - if(settings.rememberWindowSize()) { - settings.setLastWindowMaximized(isMaximized()); - - if(!isMaximized()) { - settings.setLastWindowWidth(width()); - settings.setLastWindowHeight(height()); - } - } -} - -void MainWindow::closeEvent(QCloseEvent *event) -{ - QWidget::closeEvent(event); - Settings& settings = static_cast(qApp)->settings(); - if(settings.rememberWindowSize()) { - settings.setLastWindowMaximized(isMaximized()); - - if(!isMaximized()) { - settings.setLastWindowWidth(width()); - settings.setLastWindowHeight(height()); - } - } -} - -void MainWindow::onContextMenu(QPoint pos) { - contextMenu_->exec(ui.view->mapToGlobal(pos)); -} - -void MainWindow::onKeyboardEscape() { - if(isFullScreen()) - ui.actionFullScreen->trigger(); // will also "uncheck" the menu entry - else - on_actionClose_triggered(); -} - -void MainWindow::onThumbnailSelChanged(const QItemSelection& selected, const QItemSelection& /*deselected*/) { - // the selected item of thumbnail view is changed - if(!selected.isEmpty()) { - QModelIndex index = selected.indexes().first(); - if(index.isValid()) { - // WARNING: Adding the condition index != currentIndex_ would be wrong because currentIndex_ may not be updated yet - const auto file = proxyModel_->fileInfoFromIndex(index); - if(file) - loadImage(file->path(), index); - } - } -} - -void MainWindow::onFileDropped(const QString path) { - openImageFile(path); -} diff --git a/src/mainwindow.h b/src/mainwindow.h deleted file mode 100644 index 3b13fc3..0000000 --- a/src/mainwindow.h +++ /dev/null @@ -1,183 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_MAINWINDOW_H -#define LXIMAGE_MAINWINDOW_H - -#include -#include "ui_mainwindow.h" - -#include "imageview.h" -#include - -#include -#include - -#include -#include -#include - -#include "modelfilter.h" -#include "loadimagejob.h" -#include "saveimagejob.h" - -class QTimer; -class QDockWidget; - -namespace Fm { - class FolderView; -} - -namespace LxImage { - -class MainWindow : public QMainWindow { - Q_OBJECT -public: - friend class LoadImageJob; - friend class SaveImageJob; - - MainWindow(); - virtual ~MainWindow(); - - void openImageFile(const QString& fileName); - - QImage image() const { - return image_; - } - - void pasteImage(QImage newImage); - - const Fm::FilePath & currentFile() const { - return currentFile_; - } - - void setShowThumbnails(bool show); - void setShowExifData(bool show); - void applySettings(); - -protected: - void loadImage(const Fm::FilePath & filePath, QModelIndex index = QModelIndex()); - void saveImage(const Fm::FilePath & filePath); // save current image to a file - void loadFolder(const Fm::FilePath & newFolderPath); - QString openFileName(); - QString openDirectory(); - QString saveFileName(const QString& defaultName = QString()); - virtual void changeEvent(QEvent * event); - virtual void resizeEvent(QResizeEvent *event); - virtual void closeEvent(QCloseEvent *event); - - void onImageLoaded(); - void onImageSaved(); - - virtual bool eventFilter(QObject* watched, QEvent* event); -private Q_SLOTS: - void on_actionAbout_triggered(); - - void on_actionOpenFile_triggered(); - void on_actionOpenDirectory_triggered(); - void on_actionReload_triggered(); - void on_actionNewWindow_triggered(); - void on_actionSave_triggered(); - void on_actionSaveAs_triggered(); - void on_actionPrint_triggered(); - void on_actionDelete_triggered(); - void on_actionFileProperties_triggered(); - void on_actionClose_triggered(); - - void on_actionRotateClockwise_triggered(); - void on_actionRotateCounterclockwise_triggered(); - void on_actionFlipVertical_triggered(); - void on_actionFlipHorizontal_triggered(); - void on_actionCopy_triggered(); - void on_actionPaste_triggered(); - void on_actionUpload_triggered(); - - void on_actionShowThumbnails_triggered(bool checked); - void on_actionShowExifData_triggered(bool checked); - void on_actionFullScreen_triggered(bool checked); - void on_actionSlideShow_triggered(bool checked); - - void on_actionPrevious_triggered(); - void on_actionNext_triggered(); - void on_actionFirst_triggered(); - void on_actionLast_triggered(); - - void on_actionZoomIn_triggered(); - void on_actionZoomOut_triggered(); - void on_actionOriginalSize_triggered(); - void on_actionZoomFit_triggered(); - - void on_actionDrawNone_triggered(); - void on_actionDrawArrow_triggered(); - void on_actionDrawRectangle_triggered(); - void on_actionDrawCircle_triggered(); - void on_actionDrawNumber_triggered(); - - void onContextMenu(QPoint pos); - void onKeyboardEscape(); - - void onThumbnailSelChanged(const QItemSelection & selected, const QItemSelection & deselected); - - void onFileDropped(const QString path); - -private: - void onFolderLoaded(); - void updateUI(); - void setModified(bool modified); - QModelIndex indexFromPath(const Fm::FilePath & filePath); - QGraphicsItem* getGraphicsItem(); - -private: - Ui::MainWindow ui; - QMenu* contextMenu_; - QTimer* slideShowTimer_; - - QImage image_; // the image currently shown - Fm::FilePath currentFile_; // path to current image file - // FmFileInfo* currentFileInfo_; // info of the current file, can be NULL - bool imageModified_; // the current image is modified by rotation, flip, or others and needs to be saved - - // folder browsing - std::shared_ptr folder_; - Fm::FilePath folderPath_; - Fm::FolderModel* folderModel_; - Fm::ProxyFolderModel* proxyModel_; - ModelFilter* modelFilter_; - QModelIndex currentIndex_; - - QDockWidget* thumbnailsDock_; - Fm::FolderView* thumbnailsView_; - - // EXIF Data - QDockWidget* exifDataDock_ = nullptr; - QWidget* exifDataDockView_; - QVBoxLayout* exifDataDockViewContent_; - QTableWidget* exifDataContentTable_; - - QMap exifData_; - - // multi-threading loading of images - LoadImageJob* loadJob_; - SaveImageJob* saveJob_; -}; - -} - -#endif // LXIMAGE_MAINWINDOW_H diff --git a/src/mainwindow.ui b/src/mainwindow.ui deleted file mode 100644 index eac58f6..0000000 --- a/src/mainwindow.ui +++ /dev/null @@ -1,624 +0,0 @@ - - - MainWindow - - - - 0 - 0 - 543 - 425 - - - - Image Viewer - - - - .. - - - - - 0 - - - 0 - - - 0 - - - 0 - - - 0 - - - - - QPainter::Antialiasing|QPainter::HighQualityAntialiasing|QPainter::TextAntialiasing - - - QGraphicsView::ScrollHandDrag - - - QGraphicsView::AnchorUnderMouse - - - - - - - - - 0 - 0 - 543 - 22 - - - - - &File - - - - &Recently Opened Files - - - - - - - - - - - - - - - - - - - - &Help - - - - - - Go - - - - - - - - - &View - - - - - - - - - - - - - - - - &Edit - - - - - - - - - - - - - - - - - - - - - - Toolbar - - - Qt::ToolButtonIconOnly - - - false - - - TopToolBarArea - - - false - - - - - - - - - - - - - - - - - - - - - - - Annotations Toolbar - - - TopToolBarArea - - - false - - - - - - - - - - - .. - - - &About - - - - - - .. - - - &File - - - Ctrl+O - - - - - - .. - - - &Reload File - - - Ctrl+R - - - - - - .. - - - &Save - - - Ctrl+S - - - - - - .. - - - Save &As - - - Ctrl+A - - - - - - .. - - - &Close - - - Ctrl+W - - - - - - .. - - - Zoom &In - - - Ctrl+= - - - - - - .. - - - Zoom &Out - - - Ctrl+- - - - - - - .. - - - &Copy to Clipboard - - - - - - .. - - - Next File - - - Next File - - - PgDown - - - - - - .. - - - Previous File - - - Previous File - - - PgUp - - - - - - .. - - - Original Size - - - Ctrl+0 - - - - - - .. - - - &Fit - - - - - - .. - - - &Rotate Clockwise - - - R - - - - - - .. - - - Rotate &Counterclockwise - - - L - - - - - P&references - - - - - &Print - - - Ctrl+P - - - - - - .. - - - First File - - - Home - - - - - - .. - - - Last File - - - End - - - - - - .. - - - &New Window - - - Ctrl+N - - - - - Flip &Horizontally - - - H - - - - - - .. - - - Capture Screenshot - - - - - true - - - F&ull Screen - - - F11 - - - - - Flip &Vertically - - - V - - - - - - .. - - - &Paste from Clipboard - - - - - true - - - - .. - - - &Slide Show - - - - - - .. - - - &Delete - - - Del - - - - - true - - - Show Thumbnails - - - T - - - - - File Properties - - - - - - .. - - - Open &Directory - - - Ctrl+D - - - - - - .. - - - Upload - - - Upload the image - - - - - true - - - Show EXIF Data - - - - - true - - - - :/img/draw-none.svg:/img/draw-none.svg - - - No Tool - - - Deselect all drawing tools - - - - - true - - - - :/img/draw-arrow.svg:/img/draw-arrow.svg - - - Draw Arrow - - - Draw an arrow - - - - - true - - - - :/img/draw-rectangle.svg:/img/draw-rectangle.svg - - - Draw Rectangle - - - Draw a hollow rectangle - - - - - true - - - - :/img/draw-circle.svg:/img/draw-circle.svg - - - Draw Circle - - - Draw a hollow circle - - - - - true - - - - :/img/draw-number.svg:/img/draw-number.svg - - - Draw Number - - - Draw incrementing numbers - - - - - - LxImage::ImageView - QGraphicsView -
imageview.h
-
- - LxImage::MruMenu - QMenu -
mrumenu.h
-
-
- - - - -
diff --git a/src/modelfilter.cpp b/src/modelfilter.cpp deleted file mode 100644 index 815378d..0000000 --- a/src/modelfilter.cpp +++ /dev/null @@ -1,40 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "modelfilter.h" - -using namespace LxImage; - -ModelFilter::ModelFilter() { - -} - -ModelFilter::~ModelFilter() { - -} - -bool ModelFilter::filterAcceptsRow(const Fm::ProxyFolderModel* model, const std::shared_ptr& info) const -{ - Q_UNUSED(model) - - // filter out non-image files and formats that we don't support. - return info && info->isImage(); -} - diff --git a/src/modelfilter.h b/src/modelfilter.h deleted file mode 100644 index 9e786ae..0000000 --- a/src/modelfilter.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_MODELFILTER_H -#define LXIMAGE_MODELFILTER_H - -#include - -namespace LxImage { - -class ModelFilter: public Fm::ProxyFolderModelFilter { -public: - ModelFilter(); - virtual bool filterAcceptsRow(const Fm::ProxyFolderModel* model, const std::shared_ptr& info) const override; - virtual ~ModelFilter(); -}; - -} - -#endif // LXIMAGE_MODELFILTER_H diff --git a/src/mrumenu.cpp b/src/mrumenu.cpp deleted file mode 100644 index 571a251..0000000 --- a/src/mrumenu.cpp +++ /dev/null @@ -1,114 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * Copyright (C) 2018 Nathan Osman - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include - -#include "application.h" -#include "mrumenu.h" -#include "settings.h" - -const int MaxItems = 5; - -using namespace LxImage; - -MruMenu::MruMenu(QWidget *parent) - : QMenu(parent), - mFilenames(static_cast(qApp)->settings().recentlyOpenedFiles()) -{ - for (QStringList::const_iterator i = mFilenames.constBegin(); i != mFilenames.constEnd(); ++i) { - addAction(createAction(*i)); - } - - // Add a separator and hide it if there are no items in the list - mSeparator = addSeparator(); - mSeparator->setVisible(!mFilenames.empty()); - - // Add the clear action and disable it if there are no items in the list - mClearAction = new QAction(tr("&Clear")); - mClearAction->setEnabled(!mFilenames.empty()); - connect(mClearAction, &QAction::triggered, this, &MruMenu::onClearTriggered); - addAction(mClearAction); -} - -void MruMenu::addItem(const QString &filename) -{ - if (mFilenames.isEmpty()) { - mSeparator->setVisible(true); - mClearAction->setEnabled(true); - } - - // If the filename is already in the list, remove it - int index = mFilenames.indexOf(filename); - if (index != -1) { - mFilenames.removeAt(index); - destroyAction(index); - } - - // Insert the action at the beginning of the list - mFilenames.push_front(filename); - insertAction(actions().first(), createAction(filename)); - - // If the list contains more than MaxItems, remove the last one - if (mFilenames.count() > MaxItems) { - mFilenames.removeLast(); - destroyAction(MaxItems - 1); - } - - updateSettings(); -} - -void MruMenu::onItemTriggered() -{ - Q_EMIT itemClicked(qobject_cast(sender())->text()); -} - -void MruMenu::onClearTriggered() -{ - while (!mFilenames.empty()) { - mFilenames.removeFirst(); - destroyAction(0); - } - - // Hide the separator and disable the clear action - mSeparator->setVisible(false); - mClearAction->setEnabled(false); - - updateSettings(); -} - -QAction *MruMenu::createAction(const QString &filename) -{ - QAction *action = new QAction(filename, this); - connect(action, &QAction::triggered, this, &MruMenu::onItemTriggered); - return action; -} - -void MruMenu::destroyAction(int index) -{ - QAction *action = actions().at(index); - removeAction(action); - delete action; -} - -void MruMenu::updateSettings() -{ - static_cast(qApp)->settings().setRecentlyOpenedFiles(mFilenames); -} diff --git a/src/mrumenu.h b/src/mrumenu.h deleted file mode 100644 index 4147bf2..0000000 --- a/src/mrumenu.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_MRUMENU_H -#define LXIMAGE_MRUMENU_H - -#include -#include -#include - -namespace LxImage { - -/** - * @brief Menu for quick access to most recently used (MRU) files - */ -class MruMenu : public QMenu -{ - Q_OBJECT - -public: - - explicit MruMenu(QWidget *parent = Q_NULLPTR); - - /** - * @brief Add an item to the MRU list - * @param filename absolute path to the file - * - * If the item already exists in the menu, it will be moved to the top. - */ - void addItem(const QString &filename); - -Q_SIGNALS: - - /** - * @brief Indicate that an item in the menu has been clicked - * @param filename absolute path to the file - */ - void itemClicked(const QString &filename); - -private Q_SLOTS: - - void onItemTriggered(); - void onClearTriggered(); - -private: - - QAction *createAction(const QString &filename); - void destroyAction(int index); - void updateSettings(); - - QStringList mFilenames; - - QAction *mSeparator; - QAction *mClearAction; -}; - -} - -#endif // LXIMAGE_MRUMENU_H diff --git a/src/org.lxde.LxImage.Application.xml b/src/org.lxde.LxImage.Application.xml deleted file mode 100644 index a74cf09..0000000 --- a/src/org.lxde.LxImage.Application.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/src/preferencesdialog.cpp b/src/preferencesdialog.cpp deleted file mode 100644 index 6e47f87..0000000 --- a/src/preferencesdialog.cpp +++ /dev/null @@ -1,143 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "preferencesdialog.h" -#include "application.h" -#include -#include -#include - -using namespace LxImage; - -PreferencesDialog::PreferencesDialog(QWidget* parent): - QDialog(parent) { - ui.setupUi(this); - - Application* app = static_cast(qApp); - Settings& settings = app->settings(); - app->addWindow(); - - initIconThemes(settings); - ui.bgColor->setColor(settings.bgColor()); - ui.fullScreenBgColor->setColor(settings.fullScreenBgColor()); - ui.slideShowInterval->setValue(settings.slideShowInterval()); -} - -PreferencesDialog::~PreferencesDialog() { - Application* app = static_cast(qApp); - app->removeWindow(); -} - -void PreferencesDialog::accept() { - Application* app = static_cast(qApp); - Settings& settings = app->settings(); - - // apply icon theme - if(settings.useFallbackIconTheme()) { - // only apply the value if icon theme combo box is in use - // the combo box is hidden when auto-detection of icon theme by qt works. - QString newIconTheme = ui.iconTheme->itemData(ui.iconTheme->currentIndex()).toString(); - if(newIconTheme != settings.fallbackIconTheme()) { - settings.setFallbackIconTheme(newIconTheme); - QIcon::setThemeName(newIconTheme); - // update the UI by emitting a style change event - const auto allWidgets = QApplication::allWidgets(); - for(QWidget *widget : allWidgets) { - QEvent event(QEvent::StyleChange); - QApplication::sendEvent(widget, &event); - } - } - } - - settings.setBgColor(ui.bgColor->color()); - settings.setFullScreenBgColor(ui.fullScreenBgColor->color()); - settings.setSlideShowInterval(ui.slideShowInterval->value()); - - settings.save(); - QDialog::accept(); - app->applySettings(); -} - -static void findIconThemesInDir(QHash& iconThemes, const QString& dirName) { - QDir dir(dirName); - const QStringList subDirs = dir.entryList(QDir::AllDirs); - GKeyFile* kf = g_key_file_new(); - for(const QString& subDir : subDirs) { - QString indexFile = dirName % '/' % subDir % "/index.theme"; - if(g_key_file_load_from_file(kf, indexFile.toLocal8Bit().constData(), GKeyFileFlags(0), nullptr)) { - // FIXME: skip hidden ones - // icon theme must have this key, so it has icons if it has this key - // otherwise, it might be a cursor theme or any other kind of theme. - if(g_key_file_has_key(kf, "Icon Theme", "Directories", nullptr)) { - char* dispName = g_key_file_get_locale_string(kf, "Icon Theme", "Name", nullptr, nullptr); - // char* comment = g_key_file_get_locale_string(kf, "Icon Theme", "Comment", NULL, NULL); - iconThemes[subDir] = dispName; - g_free(dispName); - } - } - } - g_key_file_free(kf); -} - -void PreferencesDialog::initIconThemes(Settings& settings) { - // check if auto-detection is done (for example, from xsettings) - if(settings.useFallbackIconTheme()) { // auto-detection failed - // load xdg icon themes and select the current one - QHash iconThemes; - // user customed icon themes - findIconThemesInDir(iconThemes, QString(g_get_home_dir()) % "/.icons"); - - // search for icons in system data dir - const char* const* dataDirs = g_get_system_data_dirs(); - for(const char* const* dataDir = dataDirs; *dataDir; ++dataDir) { - findIconThemesInDir(iconThemes, QString(*dataDir) % "/icons"); - } - - iconThemes.remove("hicolor"); // remove hicolor, which is only a fallback - QHash::const_iterator it; - for(it = iconThemes.constBegin(); it != iconThemes.constEnd(); ++it) { - ui.iconTheme->addItem(it.value(), it.key()); - } - ui.iconTheme->model()->sort(0); // sort the list of icon theme names - - // select current theme name - int n = ui.iconTheme->count(); - int i; - for(i = 0; i < n; ++i) { - QVariant itemData = ui.iconTheme->itemData(i); - if(itemData == settings.fallbackIconTheme()) { - break; - } - } - if(i >= n) - i = 0; - ui.iconTheme->setCurrentIndex(i); - } - else { // auto-detection of icon theme works, hide the fallback icon theme combo box. - ui.iconThemeLabel->hide(); - ui.iconTheme->hide(); - } -} - -void PreferencesDialog::done(int r) { - QDialog::done(r); - deleteLater(); -} - diff --git a/src/preferencesdialog.h b/src/preferencesdialog.h deleted file mode 100644 index c362fc7..0000000 --- a/src/preferencesdialog.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_PREFERENCESDIALOG_H -#define LXIMAGE_PREFERENCESDIALOG_H - -#include -#include "ui_preferencesdialog.h" - -namespace LxImage { - -class Settings; - -class PreferencesDialog : public QDialog { - Q_OBJECT -public: - explicit PreferencesDialog(QWidget* parent = 0); - virtual ~PreferencesDialog(); - - virtual void accept(); - virtual void done(int r); - -private: - void initIconThemes(Settings& settings); - -private: - Ui::PreferencesDialog ui; -}; - -} - -#endif // LXIMAGE_PREFERENCESDIALOG_H diff --git a/src/preferencesdialog.ui b/src/preferencesdialog.ui deleted file mode 100644 index 8c86d1c..0000000 --- a/src/preferencesdialog.ui +++ /dev/null @@ -1,140 +0,0 @@ - - - PreferencesDialog - - - - 0 - 0 - 331 - 225 - - - - Preferences - - - - - - 0 - - - - General - - - - QFormLayout::AllNonFixedFieldsGrow - - - - - Icon theme: - - - - - - - - - - Normal background color: - - - - - - - Fullscreen background color: - - - - - - - - - - - - - - - - - - - - - Slide show interval (seconds): - - - - - - - 1 - - - - - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - - Fm::ColorButton - QPushButton -
libfm-qt/colorbutton.h
-
-
- - - - buttonBox - accepted() - PreferencesDialog - accept() - - - 248 - 254 - - - 157 - 274 - - - - - buttonBox - rejected() - PreferencesDialog - reject() - - - 316 - 260 - - - 286 - 274 - - - - -
diff --git a/src/resource.qrc b/src/resource.qrc deleted file mode 100644 index 70f3562..0000000 --- a/src/resource.qrc +++ /dev/null @@ -1,9 +0,0 @@ - - - img/draw-arrow.svg - img/draw-circle.svg - img/draw-none.svg - img/draw-number.svg - img/draw-rectangle.svg - - diff --git a/src/saveimagejob.cpp b/src/saveimagejob.cpp deleted file mode 100644 index f423523..0000000 --- a/src/saveimagejob.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "saveimagejob.h" -#include "mainwindow.h" -#include -#include -#include - -using namespace LxImage; - -SaveImageJob::SaveImageJob(const QImage & image, const Fm::FilePath & filePath): - path_{filePath}, - image_{image}, - failed_{true} -{ -} - -SaveImageJob::~SaveImageJob() { -} - -// This is called from the worker thread, not main thread -void SaveImageJob::exec() { - const Fm::CStrPtr f = path_.baseName(); - char const * format = f.get(); - format = strrchr(format, '.'); - if(format) // use filename extension as the image format - ++format; - - QBuffer imageBuffer; - image_.save(&imageBuffer, format); // save the image to buffer - - GFileOutputStream* fileStream = nullptr; - Fm::GErrorPtr error; - ErrorAction act = ErrorAction::RETRY; - while (act == ErrorAction::RETRY && !isCancelled()) - { - error.reset(); - if (nullptr == (fileStream = g_file_replace(path_.gfile().get(), nullptr, false, G_FILE_CREATE_NONE, cancellable().get(), &error))) - { - act = emitError(error); - continue; - } - - // the file stream is successfually opened - if (!isCancelled()) - { - GOutputStream* outputStream = G_OUTPUT_STREAM(fileStream); - g_output_stream_write_all(outputStream, - imageBuffer.data().constData(), - imageBuffer.size(), - nullptr, - cancellable().get(), - &error); - g_output_stream_close(outputStream, nullptr, nullptr); - if (!error) - { - // successfully written - failed_ = false; - break; // successfully written - } - - act = emitError(error); - } - } -} diff --git a/src/saveimagejob.h b/src/saveimagejob.h deleted file mode 100644 index 9fa25f0..0000000 --- a/src/saveimagejob.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_SAVEIMAGEJOB_H -#define LXIMAGE_SAVEIMAGEJOB_H - -#include -#include -#include - -namespace LxImage { - -class SaveImageJob : public Fm::Job { - -public: - SaveImageJob(const QImage & image, const Fm::FilePath & filePath); - - QImage image() const { - return image_; - } - - const Fm::FilePath & filePath() const { - return path_; - } - - bool failed() const - { - return failed_; - } - -protected: - virtual void exec() override; - -private: - ~SaveImageJob(); // prevent direct deletion - - const Fm::FilePath path_; - const QImage image_; - bool failed_; -}; - -} - -#endif // LXIMAGE_SAVEIMAGEJOB_H diff --git a/src/screenshotdialog.cpp b/src/screenshotdialog.cpp deleted file mode 100644 index bcf3357..0000000 --- a/src/screenshotdialog.cpp +++ /dev/null @@ -1,191 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "screenshotdialog.h" -#include "screenshotselectarea.h" -#include -#include -#include -#include -#include "application.h" -#include -#include - -#include -#include -#include -#include - -using namespace LxImage; - -ScreenshotDialog::ScreenshotDialog(QWidget* parent, Qt::WindowFlags f): QDialog(parent, f) { - ui.setupUi(this); - - Application* app = static_cast(qApp); - app->addWindow(); - - int event_base, error_base; - hasXfixes_ = XFixesQueryExtension(QX11Info::display(), &event_base, &error_base) ? true : false; - if(!hasXfixes_) - ui.includeCursor->hide(); -} - -ScreenshotDialog::~ScreenshotDialog() { - Application* app = static_cast(qApp); - app->removeWindow(); -} - -void ScreenshotDialog::done(int r) { - if(r == QDialog::Accepted) { - hide(); - QDialog::done(r); - XSync(QX11Info::display(), 0); // is this useful? - - int delay = ui.delay->value(); - if(delay == 0) { - // NOTE: - // Well, we need to give X and the window manager some time to - // really hide our own dialog from the screen. - // Nobody knows how long it will take, and there is no reliable - // way to ensure that. Let's wait for 400 ms here for it. - delay = 400; - } - else - delay *= 1000; - // the dialog object will be deleted in doScreenshot(). - QTimer::singleShot(delay, this, SLOT(doScreenshot())); - } - else { - deleteLater(); - } -} - -QRect ScreenshotDialog::windowFrame(WId wid) { - QRect result; - XWindowAttributes wa; - if(XGetWindowAttributes(QX11Info::display(), wid, &wa)) { - Window child; - int x, y; - // translate to root coordinate - XTranslateCoordinates(QX11Info::display(), wid, wa.root, 0, 0, &x, &y, &child); - //qDebug("%d, %d, %d, %d", x, y, wa.width, wa.height); - result.setRect(x, y, wa.width, wa.height); - - // get the frame widths added by the window manager - Atom atom = XInternAtom(QX11Info::display(), "_NET_FRAME_EXTENTS", false); - unsigned long type, resultLen, rest; - int format; - unsigned char* data = nullptr; - if(XGetWindowProperty(QX11Info::display(), wid, atom, 0, G_MAXLONG, false, - XA_CARDINAL, &type, &format, &resultLen, &rest, &data) == Success) { - } - if(data) { // left, right, top, bottom - long* offsets = reinterpret_cast(data); - result.setLeft(result.left() - offsets[0]); - result.setRight(result.right() + offsets[1]); - result.setTop(result.top() - offsets[2]); - result.setBottom(result.bottom() + offsets[3]); - XFree(data); - } - } - return result; -} - -WId ScreenshotDialog::activeWindowId() { - WId root = WId(QX11Info::appRootWindow()); - Atom atom = XInternAtom(QX11Info::display(), "_NET_ACTIVE_WINDOW", false); - unsigned long type, resultLen, rest; - int format; - WId result = 0; - unsigned char* data = nullptr; - if(XGetWindowProperty(QX11Info::display(), root, atom, 0, 1, false, - XA_WINDOW, &type, &format, &resultLen, &rest, &data) == Success) { - result = *reinterpret_cast(data); - XFree(data); - } - return result; -} - -void ScreenshotDialog::doScreenshot() { - WId wid = 0; - int x = 0, y = 0, width = -1, height = -1; - wid = QApplication::desktop()->winId(); // get desktop window - if(ui.currentWindow->isChecked()) { - WId activeWid = activeWindowId(); - if(activeWid) { - if(ui.includeFrame->isChecked()) { - QRect rect = windowFrame(activeWid); - x = rect.x(); - y = rect.y(); - width = rect.width(); - height = rect.height(); - } - else - wid = activeWid; - } - } - - QImage image; - QScreen *screen = QGuiApplication::primaryScreen(); - if(screen) { - QPixmap pixmap = screen->grabWindow(wid, x, y, width, height); - image = pixmap.toImage(); - - if(hasXfixes_ && ui.includeCursor->isChecked()) { - // capture the cursor if needed - XFixesCursorImage* cursor = XFixesGetCursorImage(QX11Info::display()); - if(cursor) { - if(cursor->pixels) { // pixles should be an ARGB array - QImage cursorImage; - if(sizeof(long) == 4) { - // FIXME: will we encounter byte-order problems here? - cursorImage = QImage((uchar*)cursor->pixels, cursor->width, cursor->height, QImage::Format_ARGB32); - } - else { // XFixes returns long integers which is not 32 bit on 64 bit systems. - long len = cursor->width * cursor->height; - quint32* buf = new quint32[len]; - for(long i = 0; i < len; ++i) - buf[i] = (quint32)cursor->pixels[i]; - cursorImage = QImage((uchar*)buf, cursor->width, cursor->height, QImage::Format_ARGB32, [](void* b) { delete[] (quint32*)b; }, buf); - } - // paint the cursor on the current image - QPainter painter(&image); - painter.drawImage(cursor->x - cursor->xhot, cursor->y - cursor->yhot, cursorImage); - } - XFree(cursor); - } - } - } - - if(ui.screenArea->isChecked() && !image.isNull()) { - ScreenshotSelectArea selectArea(image); - if(QDialog::Accepted == selectArea.exec()) { - image = image.copy(selectArea.selectedArea()); - } - } - - Application* app = static_cast(qApp); - MainWindow* window = app->createWindow(); - if(!image.isNull()) - window->pasteImage(image); - window->show(); - - deleteLater(); // destroy ourself -} diff --git a/src/screenshotdialog.h b/src/screenshotdialog.h deleted file mode 100644 index cf60bbe..0000000 --- a/src/screenshotdialog.h +++ /dev/null @@ -1,51 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_SCREENSHOTDIALOG_H -#define LXIMAGE_SCREENSHOTDIALOG_H - -#include -#include "ui_screenshotdialog.h" - -namespace LxImage { - -class ScreenshotDialog : public QDialog { - Q_OBJECT -public: - explicit ScreenshotDialog(QWidget* parent = 0, Qt::WindowFlags f = 0); - virtual ~ScreenshotDialog(); - - virtual void done(int r); - -private: - WId activeWindowId(); - QRect windowFrame(WId wid); - -private Q_SLOTS: - void doScreenshot(); - -private: - Ui::ScreenshotDialog ui; - bool hasXfixes_; -}; - -} - -#endif // LXIMAGE_SCREENSHOTDIALOG_H diff --git a/src/screenshotdialog.ui b/src/screenshotdialog.ui deleted file mode 100644 index b3067bb..0000000 --- a/src/screenshotdialog.ui +++ /dev/null @@ -1,161 +0,0 @@ - - - ScreenshotDialog - - - - 0 - 0 - 348 - 261 - - - - Screenshot - - - - .. - - - - QFormLayout::AllNonFixedFieldsGrow - - - - - Take a screenshot - - - - - - - Region - - - - - - Whole screen - - - true - - - - - - - Current window only - - - - - - - Capture an area of the screen - - - - - - - - - - Include mouse cursor - - - - - - - seconds - - - - - - - Qt::Horizontal - - - QDialogButtonBox::Cancel|QDialogButtonBox::Ok - - - - - - - Delay: - - - - - - - false - - - Include window title and frame - - - true - - - - - - - - - buttonBox - accepted() - ScreenshotDialog - accept() - - - 257 - 231 - - - 157 - 274 - - - - - buttonBox - rejected() - ScreenshotDialog - reject() - - - 291 - 231 - - - 286 - 274 - - - - - currentWindow - toggled(bool) - includeFrame - setEnabled(bool) - - - 87 - 82 - - - 91 - 122 - - - - - diff --git a/src/screenshotselectarea.cpp b/src/screenshotselectarea.cpp deleted file mode 100644 index 42fe462..0000000 --- a/src/screenshotselectarea.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "screenshotselectarea.h" -#include - -using namespace LxImage; - -ScreenshotSelectArea::ScreenshotSelectArea(const QImage & image, QWidget* parent) : QDialog(parent) -{ - scene_ = new QGraphicsScene(this); - scene_->addPixmap(QPixmap::fromImage(image)); - - view_ = new ScreenshotSelectAreaGraphicsView(scene_, this); - view_->setRenderHints( QPainter::Antialiasing ); - view_->setHorizontalScrollBarPolicy ( Qt::ScrollBarAlwaysOff ); - view_->setVerticalScrollBarPolicy ( Qt::ScrollBarAlwaysOff ); - view_->show(); - view_->move(0,0); - view_->resize(image.width(), image.height()); - setWindowState(windowState() | Qt::WindowFullScreen); - connect(view_, &ScreenshotSelectAreaGraphicsView::selectedArea, this, &ScreenshotSelectArea::areaSelected); -} - -QRect ScreenshotSelectArea::selectedArea() -{ - return selectedRect_; -} - -void ScreenshotSelectArea::areaSelected(QRect rect) -{ - this->selectedRect_ = rect; - accept(); -} diff --git a/src/screenshotselectarea.h b/src/screenshotselectarea.h deleted file mode 100644 index 430fc25..0000000 --- a/src/screenshotselectarea.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_SCREENSHOTDIALOG_SELECT_AREA_H -#define LXIMAGE_SCREENSHOTDIALOG_SELECT_AREA_H - -#include "screenshotselectareagraphicsview.h" -#include -#include -#include -#include - - -namespace LxImage { - -class ScreenshotSelectArea : public QDialog { - Q_OBJECT -public: - ScreenshotSelectArea(const QImage & image, QWidget* parent = 0); - QRect selectedArea(); - -private Q_SLOTS: - void areaSelected(QRect rect); - -private: - QGraphicsScene *scene_; - ScreenshotSelectAreaGraphicsView *view_; - QRect selectedRect_; -}; - -} - -#endif // LXIMAGE_SCREENSHOTDIALOG_SELECT_AREA_H diff --git a/src/screenshotselectareagraphicsview.cpp b/src/screenshotselectareagraphicsview.cpp deleted file mode 100644 index 92c7505..0000000 --- a/src/screenshotselectareagraphicsview.cpp +++ /dev/null @@ -1,58 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "screenshotselectareagraphicsview.h" -#include - -using namespace LxImage; - -ScreenshotSelectAreaGraphicsView::ScreenshotSelectAreaGraphicsView(QGraphicsScene* scene, QWidget* parent) : QGraphicsView(scene, parent) -{ - p0_ = QPointF(-1.0, -1.0); - selectedAreaRect_ = nullptr; - setCursor(Qt::CrossCursor); -} - -void ScreenshotSelectAreaGraphicsView::mousePressEvent(QMouseEvent *event) -{ - if(p0_.x() < 0) { - p0_ = QPointF(event->pos()); - } else { - if(selectedAreaRect_ == nullptr) { - QColor highlight = palette().color(QPalette::Active,QPalette::Highlight); - QPen pen(highlight, 3, Qt::DashDotLine, Qt::RoundCap, Qt::RoundJoin); - QColor color(highlight); - color.setAlpha(128); - QBrush brush(color); - selectedAreaRect_ = scene()->addRect(QRectF(), pen, brush); - } - selectedAreaRect_->setRect(QRectF(p0_,QPointF(event->pos())).normalized()); - } -} - -void ScreenshotSelectAreaGraphicsView::mouseMoveEvent(QMouseEvent *event) -{ - mousePressEvent(event); -} - -void ScreenshotSelectAreaGraphicsView::mouseReleaseEvent(QMouseEvent *event) -{ - Q_EMIT selectedArea(QRectF(p0_,QPointF(event->pos())).normalized().toRect()); -} diff --git a/src/screenshotselectareagraphicsview.h b/src/screenshotselectareagraphicsview.h deleted file mode 100644 index f40835a..0000000 --- a/src/screenshotselectareagraphicsview.h +++ /dev/null @@ -1,52 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_SCREENSHOTDIALOG_SELECT_AREA_GRAPICS_VIEW_H -#define LXIMAGE_SCREENSHOTDIALOG_SELECT_AREA_GRAPICS_VIEW_H - -#include -#include -#include -#include - - -namespace LxImage { - -class ScreenshotSelectAreaGraphicsView : public QGraphicsView { - Q_OBJECT -public: - ScreenshotSelectAreaGraphicsView(QGraphicsScene* scene, QWidget* parent = 0); - -Q_SIGNALS: - void selectedArea(QRect rect); - -protected: - void mousePressEvent(QMouseEvent *event); - void mouseMoveEvent(QMouseEvent *event); - void mouseReleaseEvent(QMouseEvent *event); - -private: - QPointF p0_; - QGraphicsRectItem *selectedAreaRect_; -}; - -} - -#endif // LXIMAGE_SCREENSHOTDIALOG_SELECT_AREA_H diff --git a/src/settings.cpp b/src/settings.cpp deleted file mode 100644 index b0af404..0000000 --- a/src/settings.cpp +++ /dev/null @@ -1,88 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "settings.h" -#include -#include - -using namespace LxImage; - -Settings::Settings(): - useFallbackIconTheme_(QIcon::themeName().isEmpty() || QIcon::themeName() == "hicolor"), - bgColor_(255, 255, 255), - fullScreenBgColor_(0, 0, 0), - showThumbnails_(false), - showSidePane_(false), - slideShowInterval_(5), - fallbackIconTheme_("oxygen"), - fixedWindowWidth_(640), - fixedWindowHeight_(480), - lastWindowWidth_(640), - lastWindowHeight_(480), - lastWindowMaximized_(false) { -} - -Settings::~Settings() { -} - -bool Settings::load() { - QSettings settings("lximage-qt", "settings"); - fallbackIconTheme_ = settings.value("fallbackIconTheme", fallbackIconTheme_).toString(); - bgColor_ = settings.value("bgColor", bgColor_).value(); - fullScreenBgColor_ = settings.value("fullScreenBgColor", fullScreenBgColor_).value(); - // showThumbnails_; - // showSidePane_; - slideShowInterval_ = settings.value("slideShowInterval", slideShowInterval_).toInt(); - recentlyOpenedFiles_ = settings.value("recentlyOpenedFiles").toStringList(); - - settings.beginGroup("Window"); - fixedWindowWidth_ = settings.value("FixedWidth", 640).toInt(); - fixedWindowHeight_ = settings.value("FixedHeight", 480).toInt(); - lastWindowWidth_ = settings.value("LastWindowWidth", 640).toInt(); - lastWindowHeight_ = settings.value("LastWindowHeight", 480).toInt(); - lastWindowMaximized_ = settings.value("LastWindowMaximized", false).toBool(); - rememberWindowSize_ = settings.value("RememberWindowSize", true).toBool(); - settings.endGroup(); - - return true; -} - -bool Settings::save() { - QSettings settings("lximage-qt", "settings"); - - settings.setValue("fallbackIconTheme", fallbackIconTheme_); - settings.setValue("bgColor", bgColor_); - settings.setValue("fullScreenBgColor", fullScreenBgColor_); - settings.setValue("slideShowInterval", slideShowInterval_); - settings.setValue("recentlyOpenedFiles", recentlyOpenedFiles_); - - settings.beginGroup("Window"); - settings.setValue("FixedWidth", fixedWindowWidth_); - settings.setValue("FixedHeight", fixedWindowHeight_); - settings.setValue("LastWindowWidth", lastWindowWidth_); - settings.setValue("LastWindowHeight", lastWindowHeight_); - settings.setValue("LastWindowMaximized", lastWindowMaximized_); - settings.setValue("RememberWindowSize", rememberWindowSize_); - settings.endGroup(); - - return true; -} - - diff --git a/src/settings.h b/src/settings.h deleted file mode 100644 index 4d975d7..0000000 --- a/src/settings.h +++ /dev/null @@ -1,168 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_SETTINGS_H -#define LXIMAGE_SETTINGS_H - -#include -#include -#include -#include - -namespace LxImage { - -class Settings { -public: - - Settings(); - ~Settings(); - - bool load(); - bool save(); - - bool useFallbackIconTheme() const { - return useFallbackIconTheme_; - }; - - QString fallbackIconTheme() const { - return fallbackIconTheme_; - } - void setFallbackIconTheme(QString value) { - fallbackIconTheme_ = value; - } - - QColor bgColor() const { - return bgColor_; - } - void setBgColor(QColor color) { - bgColor_ = color; - } - - QColor fullScreenBgColor() const { - return fullScreenBgColor_; - } - void setFullScreenBgColor(QColor color) { - fullScreenBgColor_ = color; - } - - bool showThumbnails() const { - return showThumbnails_; - } - void setShowThumbnails(bool show) { - showThumbnails_ = show; - } - - bool showSidePane() const { - return showSidePane_; - } - - int slideShowInterval() const { - return slideShowInterval_; - } - void setSlideShowInterval(int interval) { - slideShowInterval_ = interval; - } - - QStringList recentlyOpenedFiles() const { - return recentlyOpenedFiles_; - } - - void setRecentlyOpenedFiles(const QStringList &recentlyOpenedFiles) { - recentlyOpenedFiles_ = recentlyOpenedFiles; - } - - bool rememberWindowSize() const { - return rememberWindowSize_; - } - - void setRememberWindowSize(bool rememberWindowSize) { - rememberWindowSize_ = rememberWindowSize; - } - - int windowWidth() const { - if(rememberWindowSize_) - return lastWindowWidth_; - else - return fixedWindowWidth_; - } - - int windowHeight() const { - if(rememberWindowSize_) - return lastWindowHeight_; - else - return fixedWindowHeight_; - } - - bool windowMaximized() const { - if(rememberWindowSize_) - return lastWindowMaximized_; - else - return false; - } - - int fixedWindowWidth() const { - return fixedWindowWidth_; - } - - void setFixedWindowWidth(int fixedWindowWidth) { - fixedWindowWidth_ = fixedWindowWidth; - } - - int fixedWindowHeight() const { - return fixedWindowHeight_; - } - - void setFixedWindowHeight(int fixedWindowHeight) { - fixedWindowHeight_ = fixedWindowHeight; - } - - void setLastWindowWidth(int lastWindowWidth) { - lastWindowWidth_ = lastWindowWidth; - } - - void setLastWindowHeight(int lastWindowHeight) { - lastWindowHeight_ = lastWindowHeight; - } - - void setLastWindowMaximized(bool lastWindowMaximized) { - lastWindowMaximized_ = lastWindowMaximized; - } - -private: - bool useFallbackIconTheme_; - QColor bgColor_; - QColor fullScreenBgColor_; - bool showThumbnails_; - bool showSidePane_; - int slideShowInterval_; - QString fallbackIconTheme_; - QStringList recentlyOpenedFiles_; - - bool rememberWindowSize_; - int fixedWindowWidth_; - int fixedWindowHeight_; - int lastWindowWidth_; - int lastWindowHeight_; - bool lastWindowMaximized_; -}; - -} - -#endif // LXIMAGE_SETTINGS_H diff --git a/src/translations/CMakeLists.txt b/src/translations/CMakeLists.txt deleted file mode 100644 index 09696da..0000000 --- a/src/translations/CMakeLists.txt +++ /dev/null @@ -1,3 +0,0 @@ -project(lximage-qt) - -build_component("." "${CMAKE_INSTALL_FULL_DATADIR}/lximage-qt/translations") diff --git a/src/translations/lximage-qt-screenshot_ca.desktop b/src/translations/lximage-qt-screenshot_ca.desktop deleted file mode 100644 index 2b85929..0000000 --- a/src/translations/lximage-qt-screenshot_ca.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[ca]=Captura de pantalla -GenericName[ca]=Captura de pantalla -Comment[ca]=Preneu una captura de pantalla diff --git a/src/translations/lximage-qt-screenshot_cs.desktop b/src/translations/lximage-qt-screenshot_cs.desktop deleted file mode 100644 index 4f212c4..0000000 --- a/src/translations/lximage-qt-screenshot_cs.desktop +++ /dev/null @@ -1,3 +0,0 @@ -Name[cs]=Snímek obrazovky -GenericName[cs]=Snímek obrazovky -Comment[cs]=Pořízení snímku obrazovky diff --git a/src/translations/lximage-qt-screenshot_da.desktop b/src/translations/lximage-qt-screenshot_da.desktop deleted file mode 100644 index b6ea3c6..0000000 --- a/src/translations/lximage-qt-screenshot_da.desktop +++ /dev/null @@ -1,3 +0,0 @@ -Name[da]=Skærmbillede -GenericName[da]=Skærmbillede -Comment[da]=Tag et skærmbillede diff --git a/src/translations/lximage-qt-screenshot_de.desktop b/src/translations/lximage-qt-screenshot_de.desktop deleted file mode 100644 index 9b8c17a..0000000 --- a/src/translations/lximage-qt-screenshot_de.desktop +++ /dev/null @@ -1,6 +0,0 @@ -[Desktop Entry] -Name[de]=Bildschirmfoto -GenericName[de]=Bildschirmfoto -Comment[de]=Erstelle ein Bildschirmfoto - -#TRANSLATIONS_DIR=translations diff --git a/src/translations/lximage-qt-screenshot_el.desktop b/src/translations/lximage-qt-screenshot_el.desktop deleted file mode 100644 index 8677db6..0000000 --- a/src/translations/lximage-qt-screenshot_el.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[el]=Στιγμιότυπο οθόνης -GenericName[el]=Στιγμιότυπο οθόνης -Comment[el]=Λήψη ενός στιγμιότυπου της οθόνης diff --git a/src/translations/lximage-qt-screenshot_es.desktop b/src/translations/lximage-qt-screenshot_es.desktop deleted file mode 100644 index 8b2952d..0000000 --- a/src/translations/lximage-qt-screenshot_es.desktop +++ /dev/null @@ -1,3 +0,0 @@ -Name[es]=Captura de pantalla -GenericName[es]=Captura de pantalla -Comment[es]=Toma capturas de la pantalla diff --git a/src/translations/lximage-qt-screenshot_fr.desktop b/src/translations/lximage-qt-screenshot_fr.desktop deleted file mode 100644 index de415a0..0000000 --- a/src/translations/lximage-qt-screenshot_fr.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[fr]=Copie d'écran -GenericName[fr]=Copie d'écran -Comment[fr]=Faire une copie d'écran diff --git a/src/translations/lximage-qt-screenshot_hu.desktop b/src/translations/lximage-qt-screenshot_hu.desktop deleted file mode 100644 index 142b1fc..0000000 --- a/src/translations/lximage-qt-screenshot_hu.desktop +++ /dev/null @@ -1,6 +0,0 @@ -[Desktop Entry] -Name[hu]=LXQt képernyőfotó -GenericName[hu]=Képrnyőfénykép -Comment[hu]=Képernyőkép készítés - -#TRANSLATIONS_DIR=translations diff --git a/src/translations/lximage-qt-screenshot_it.desktop b/src/translations/lximage-qt-screenshot_it.desktop deleted file mode 100644 index 5de747b..0000000 --- a/src/translations/lximage-qt-screenshot_it.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[it]=Cattura schermata -GenericName[it]=Cattura una schermata -Comment[it]=Catturare una schermata diff --git a/src/translations/lximage-qt-screenshot_lt.desktop b/src/translations/lximage-qt-screenshot_lt.desktop deleted file mode 100644 index b137907..0000000 --- a/src/translations/lximage-qt-screenshot_lt.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[lt]=Ekrano kopija -GenericName[lt]=Ekrano kopija -Comment[lt]=Padaryti ekrano kopiją diff --git a/src/translations/lximage-qt-screenshot_pl.desktop b/src/translations/lximage-qt-screenshot_pl.desktop deleted file mode 100644 index 1586e3f..0000000 --- a/src/translations/lximage-qt-screenshot_pl.desktop +++ /dev/null @@ -1,6 +0,0 @@ -[Desktop Entry] -Name[pl]=Zrzut ekranu -GenericName[pl]=Zrzut ekranu -Comment[pl]=Wykonaj zrzut ekranu - -#TRANSLATIONS_DIR=translations diff --git a/src/translations/lximage-qt-screenshot_pt.desktop b/src/translations/lximage-qt-screenshot_pt.desktop deleted file mode 100644 index 3b96714..0000000 --- a/src/translations/lximage-qt-screenshot_pt.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[pt]=Captura de ecrã -GenericName[pt]=Captura de ecrã -Comment[pt]=Obter uma captura de ecrã diff --git a/src/translations/lximage-qt-screenshot_pt_br.desktop b/src/translations/lximage-qt-screenshot_pt_br.desktop deleted file mode 100644 index 988c8f9..0000000 --- a/src/translations/lximage-qt-screenshot_pt_br.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[pt_BR]=Captura de tela -GenericName[pt_BR]=Captura tela -Comment[pt_BR]=Obter uma captura de tela diff --git a/src/translations/lximage-qt-screenshot_ru.desktop b/src/translations/lximage-qt-screenshot_ru.desktop deleted file mode 100644 index 3113724..0000000 --- a/src/translations/lximage-qt-screenshot_ru.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[ru]=Снимок экрана -GenericName[ru]=Снимок экрана -Comment[ru]=Сделать снимок экрана diff --git a/src/translations/lximage-qt-screenshot_tr.desktop b/src/translations/lximage-qt-screenshot_tr.desktop deleted file mode 100644 index d74928d..0000000 --- a/src/translations/lximage-qt-screenshot_tr.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[tr]=Ekran Görüntüsü -GenericName[tr]=Ekran Görüntüsü -Comment[tr]=Ekran görüntüsü al diff --git a/src/translations/lximage-qt.ts b/src/translations/lximage-qt.ts deleted file mode 100644 index 406805f..0000000 --- a/src/translations/lximage-qt.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - - - - - - Image files (%1) - - - - - Open directory - - - - - Save File - - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Thumbnails - - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &About - - - - - &Open File - - - - - Ctrl+O - - - - - &Reload File - - - - - Ctrl+R - - - - - &Save - - - - - Ctrl+S - - - - - Save &As - - - - - Ctrl+A - - - - - &Close - - - - - Ctrl+W - - - - - Zoom &In - - - - - Ctrl+= - - - - - Zoom &Out - - - - - Ctrl+- - - - - - &Copy to Clipboard - - - - - - Next File - - - - - PgDown - - - - - - Previous File - - - - - PgUp - - - - - Original Size - - - - - Ctrl+0 - - - - - &Fit - - - - - &Rotate Clockwise - - - - - R - - - - - Rotate &Counterclockwise - - - - - L - - - - - P&references - - - - - &Print - - - - - Ctrl+P - - - - - First File - - - - - Home - - - - - Last File - - - - - End - - - - - &New Window - - - - - Ctrl+N - - - - - Flip &Horizontally - - - - - H - - - - - Capture Screenshot - - - - - F&ull Screen - - - - - F11 - - - - - Flip &Vertically - - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - - - - - &Delete - - - - - Del - - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - - - - - &Help - - - - - Go - - - - - &View - - - - - &Edit - - - - - Toolbar - - - - - PreferencesDialog - - - Preferences - - - - - Icon theme: - - - - - Normal background color: - - - - - Fullscreen background color: - - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - - - - - Take a screenshot - - - - - Region - - - - - Whole screen - - - - - Current window only - - - - - Capture an area of the screen - - - - - Include mouse cursor - - - - - seconds - - - - - Delay: - - - - - Include window title and frame - - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_ar.ts b/src/translations/lximage-qt_ar.ts deleted file mode 100644 index 570e79d..0000000 --- a/src/translations/lximage-qt_ar.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - خُذ لقطة للشاشة - - - - [FILE1, FILE2,...] - [الملف1، الملف2،...] - - - - LxImage::ImageShackUpload - - - unknown error response - استجابة خطأ مجهولة - - - - LxImage::ImgBBUpload - - - unknown error response - استجابة خطأ مجهولة - - - - LxImage::ImgurUpload - - - unknown error response - استجابة خطأ مجهولة - - - - LxImage::MainWindow - - - About - عن - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - عارض صور سهل وسريع - -الحقوق محفوظة © 2013 -مشروع لكسكيوت: https://lxqt.org - -المؤلفون: -Hong Jen Yee (PCMan) ‏<pcman.tw@gmail.com> - - - - Open File - افتح ملفا - - - - - Image files (%1) - ملفات الصور (%1) - - - - Open directory - افتح دليلا - - - - Save File - احفظ الملف - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (يحمّل…) - عارض الصور - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (فشل التحميل) - عارض الصور - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2×%3) - عارض الصور - - - - [*]Image Viewer - [*]عارض الصور - - - - Thumbnails - المصغّرات - - - - EXIF Data - بيانات EXIF - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - - - - - ImageShack - ImageShack - - - - Start - ابدأ - - - - Stop - أوقِف - - - - Close - أغلِق - - - - Error - خطأ - - - - MainWindow - - - Image Viewer - عارض الصور - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &About - &عن - - - - &Open File - ا&فتح ملفا - - - - Ctrl+O - Ctrl+O - - - - &Reload File - - - - - Ctrl+R - - - - - &Save - ا&حفظ - - - - Ctrl+S - Ctrl+S - - - - Save &As - احفظ &كَ‍ - - - - Ctrl+A - Ctrl+A - - - - &Close - أ&غلِق - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - &قرّب - - - - Ctrl+= - Ctrl+= - - - - Zoom &Out - ب&عّد - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - ا&نسخ إلى الحافظة - - - - - Next File - الملف التالي - - - - PgDown - PgDown - - - - - Previous File - الملف السابق - - - - PgUp - PgUp - - - - Original Size - المقاس الأصلي - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - لا&ئِم - - - - &Rotate Clockwise - &دوّر مع عقارب الساعة - - - - R - R - - - - Rotate &Counterclockwise - دوّر عكس ع&قارب الساعة - - - - L - L - - - - P&references - التف&ضيلات - - - - &Print - ا&طبع - - - - Ctrl+P - Ctrl+P - - - - First File - الملف الأول - - - - Home - Home - - - - Last File - الملف الأخير - - - - End - End - - - - &New Window - نافذة &جديدة - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - اقلب أ&فقيا - - - - H - H - - - - Capture Screenshot - التقط لقطة للشاشة - - - - F&ull Screen - ملء ال&شاشة - - - - F11 - F11 - - - - Flip &Vertically - اقلب رأ&سيا - - - - V - V - - - - &Paste from Clipboard - أل&صِق من الحافظة - - - - &Slide Show - عر&ض شرائح - - - - &Delete - ا&حذف - - - - Del - Del - - - - Show Thumbnails - اعرض المصغّرات - - - - T - T - - - - File Properties - خصائص الملف - - - - Open &Directory - افتح ال&دليل - - - - Ctrl+D - Ctrl+D - - - - Upload - ارفع - - - - Upload the image - ارفع الصورة - - - - Show EXIF Data - اعرض بيانات EXIF - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - &ملف - - - - &Help - م&ساعدة - - - - Go - تنقّل - - - - &View - من&ظور - - - - &Edit - ت&حرير - - - - Toolbar - شريط الأدوات - - - - PreferencesDialog - - - Preferences - التفضيلات - - - - Icon theme: - سمة الأيقونات: - - - - Normal background color: - لون الخلفية العادي: - - - - Fullscreen background color: - لون الخلفية بوضع ملء الشاشة: - - - - Slide show interval (seconds): - فترة عرض الشرائح (بالثواني): - - - - General - عام - - - - ScreenshotDialog - - - Screenshot - لقطة شاشة - - - - Take a screenshot - خُذ لقطة للشاشة - - - - Region - منطقة - - - - Whole screen - كامل الشاشة - - - - Current window only - النافذة الحالية فحسب - - - - Capture an area of the screen - التقِط مساحة من الشاشة - - - - Include mouse cursor - ضمّن مؤشّر الفأرة - - - - seconds - ثا - - - - Delay: - التأخير: - - - - Include window title and frame - ضمّن عنوان النافذة وإطارها - - - - UploadDialog - - - Upload - الرفع - - - - Copy - - - - diff --git a/src/translations/lximage-qt_ca.desktop b/src/translations/lximage-qt_ca.desktop deleted file mode 100644 index 402b30a..0000000 --- a/src/translations/lximage-qt_ca.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[ca]=LXImage -GenericName[ca]=Visualitzador d'imatges -Comment[ca]=El visualitzador d'imatges de LXQt diff --git a/src/translations/lximage-qt_ca.ts b/src/translations/lximage-qt_ca.ts deleted file mode 100644 index 60a76f8..0000000 --- a/src/translations/lximage-qt_ca.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Pren una captura de pantalla - - - - [FILE1, FILE2,...] - [FITXER1, FITXER2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - resposta d'error desconeguda - - - - LxImage::ImgBBUpload - - - unknown error response - resposta d'error desconeguda - - - - LxImage::ImgurUpload - - - unknown error response - resposta d'error desconeguda - - - - LxImage::MainWindow - - - About - Quant a - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - un visualitzador d'imatges senzill i ràpid - -Drets d'autor (C) 2013 -Projecte LXQt: https://lxqt.org/ - -Autors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Obre un fitxer - - - - - Image files (%1) - Fitxers d'imatges (%1) - - - - Open directory - Obre un directori - - - - Save File - Desa el fitxer - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (s'està carregant...) - Visualitzador d'imatges - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (ha fallat la càrrega) - Visualitzador d'imatges - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visualitzador d'imatges - - - - [*]Image Viewer - [*]Visualitzador d'imatges - - - - Thumbnails - Miniatures - - - - EXIF Data - Dades EXIF - - - - LxImage::MruMenu - - - &Clear - &Neteja - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Inicia - - - - Stop - Atura - - - - Close - Tanca - - - - Error - Error - - - - MainWindow - - - Image Viewer - Visualitzador d'imatges - - - - &About - &Quant a - - - - &Open File - &Obre un fitxer - - - - Ctrl+O - Ctrl+O - - - - &Save - De&sa - - - - Ctrl+S - Ctrl+S - - - - Save &As - &Anomena i desa - - - - Ctrl+A - Ctrl+A - - - - &Close - Tan&ca - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Ampl&ia el zoom - - - - Zoom &Out - Redueix el z&oom - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Copia al porta-retalls - - - - - Next File - Fitxer següent - - - - - Previous File - Fitxer anterior - - - - PgDown - Re Pàg - - - - &Recently Opened Files - Fitxers oberts &recentment - - - - toolBar_2 - 2na barra d'eines - - - - &Reload File - To&rna a carregar el fitxer - - - - Ctrl+R - Ctrl+R - - - - Ctrl+= - Ctrl+= - - - - PgUp - Re Pàg - - - - Original Size - Mida original - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - A&justa - - - - &Rotate Clockwise - Gi&ra en sentit horari - - - - R - D - - - - Rotate &Counterclockwise - Gira en sentit anti&horari - - - - L - E - - - - P&references - P&referències - - - - &Print - Im&primeix - - - - Ctrl+P - Ctrl+P - - - - First File - Primer fitxer - - - - Home - Inici - - - - Last File - Últim fitxer - - - - End - Fi - - - - &New Window - Finestra &nova - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Inverteix &horitzontalment - - - - H - H - - - - Capture Screenshot - Pren una captura de pantalla - - - - F&ull Screen - Pantalla c&ompleta - - - - F11 - F11 - - - - Flip &Vertically - Inverteix &verticalment - - - - V - V - - - - &Paste from Clipboard - Enganxa del &porta-retalls - - - - &Slide Show - Presentació de diapo&sitives - - - - &Delete - &Elimina - - - - Del - Supr - - - - Show Thumbnails - Mostra les miniatures - - - - T - M - - - - File Properties - Propietats del fitxer - - - - Open &Directory - Obre un &directori - - - - Ctrl+D - Ctrl+D - - - - Upload - Puja - - - - Upload the image - Puja la imatge - - - - Show EXIF Data - Mostra les dades EXIF - - - - No Tool - Cap eina - - - - Deselect all drawing tools - Desselecciona totes les eines de dibuix - - - - Draw Arrow - Dibuixa una fletxa - - - - Draw an arrow - Dibuixa una fletxa - - - - Draw Rectangle - Dibuixa un rectangle - - - - Draw a hollow rectangle - Dibuixa un rectangle buit - - - - Draw Circle - Dibuixa un cercle - - - - Draw a hollow circle - Dibuixa un cercle buit - - - - Draw Number - Dibuixa un número - - - - Draw incrementing numbers - Dibuixa números de manera incremental - - - - &File - &Fitxer - - - - &Help - &Ajuda - - - - Go - Vés - - - - &View - &Visualitza - - - - &Edit - &Edita - - - - Toolbar - Barra d'eines - - - - PreferencesDialog - - - Preferences - Preferències - - - - Icon theme: - Tema de les icones: - - - - Normal background color: - Color del fons normal: - - - - Fullscreen background color: - Color del fons pantalla completa: - - - - Slide show interval (seconds): - Interval per mostrar la diapositiva (segons): - - - - General - General - - - - ScreenshotDialog - - - Screenshot - Captura de pantalla - - - - Take a screenshot - Pren una captura de pantalla - - - - Region - Regió - - - - Whole screen - Tota la pantalla - - - - Current window only - Tan sols la finestra activa - - - - Capture an area of the screen - Captura una àrea de la pantalla - - - - Include mouse cursor - Inclou el cursor del ratolí - - - - seconds - segons - - - - Delay: - Retard: - - - - Include window title and frame - Inclou el títol de la finestra i el marc - - - - UploadDialog - - - Upload - Puja - - - - Copy - Copia - - - diff --git a/src/translations/lximage-qt_cs.ts b/src/translations/lximage-qt_cs.ts deleted file mode 100644 index 206cbfb..0000000 --- a/src/translations/lximage-qt_cs.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Pořídit snímek obrazovky - - - - [FILE1, FILE2,...] - [SOUBOR1, SOUBOR2, …] - - - - LxImage::ImageShackUpload - - - unknown error response - Odpověď: neznámá chyba - - - - LxImage::ImgBBUpload - - - unknown error response - neznámá chybová odpověď - - - - LxImage::ImgurUpload - - - unknown error response - Odpověď: neznámá chyba - - - - LxImage::MainWindow - - - About - O aplikaci - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt – jednoduchý a rychlý prohlížeč obrázků - -Autorské právo © 2013 -LXQt projekt: https://lxqt.org/ - -Autoři: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Otevřít soubor - - - - - Image files (%1) - Soubory s obrázky (%1) - - - - Open directory - Otevřít složku - - - - Save File - Uložit soubor - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (načítání…) – prohlížeč obrázků - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (nepodařilo se načíst) – prohlížeč obrázků - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) – prohlížeč obrázků - - - - [*]Image Viewer - [*] prohlížeč obrázků - - - - Thumbnails - Náhledy - - - - EXIF Data - EXIF data - - - - LxImage::MruMenu - - - &Clear - %Vyčistit - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Spustit - - - - Stop - Zastavit - - - - Close - Zavřít - - - - Error - Chyba - - - - MainWindow - - - Image Viewer - Prohlížeč obrázků - - - - &Recently Opened Files - Nedávno otevřené soubo&ry - - - - toolBar_2 - lištaNástrojů_2 - - - - &About - O &aplikaci - - - - &Open File - &Otevřít soubor - - - - Ctrl+O - Ctrl+O - - - - &Reload File - Načíst soubo&r znovu - - - - Ctrl+R - Ctrl+R - - - - &Save - &Uložit - - - - Ctrl+S - Ctrl+S - - - - Save &As - Uložit j&ako - - - - Ctrl+A - Ctrl+A - - - - &Close - &Zavřít - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Přiblíž&it - - - - Ctrl+= - Ctrl+= - - - - Zoom &Out - &Oddálit - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Zkopírovat do schránky - - - - - Next File - Následující soubor - - - - PgDown - PgDn - - - - - Previous File - Předchozí soubor - - - - PgUp - PgUp - - - - Original Size - Původní velikost - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - &Přizpůsobit - - - - &Rotate Clockwise - Otočit vp&ravo - - - - R - R - - - - Rotate &Counterclockwise - Otočit &vlevo - - - - L - L - - - - P&references - &Předvolby - - - - &Print - &Tisk - - - - Ctrl+P - Ctrl+P - - - - First File - První soubor - - - - Home - Home - - - - Last File - Poslední soubor - - - - End - End - - - - &New Window - &Nové okno - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Převrátit &vodorovně - - - - H - H - - - - Capture Screenshot - Pořídit snímek obrazovky - - - - F&ull Screen - Na celo&u obrazovku - - - - F11 - F11 - - - - Flip &Vertically - Převrátit s&visle - - - - V - V - - - - &Paste from Clipboard - &Vložit ze schránky - - - - &Slide Show - Promítání &snímků - - - - &Delete - &Smazat - - - - Del - Del - - - - Show Thumbnails - Zobrazit náhledy - - - - T - T - - - - File Properties - Vlastnosti souboru - - - - Open &Directory - Otevřít &Složku - - - - Ctrl+D - Ctrl+D - - - - Upload - Nahrát - - - - Upload the image - Nahrát obrázek - - - - Show EXIF Data - Zobrazit EXIF data - - - - No Tool - Žádný nástroj - - - - Deselect all drawing tools - Zrušit výběr jakýchkoli kreslících nástrojů - - - - Draw Arrow - Nakreslit šipku - - - - Draw an arrow - Nakreslit šipku - - - - Draw Rectangle - Nakreslit obdélník - - - - Draw a hollow rectangle - Nakreslit prázdný obdélník - - - - Draw Circle - Nakreslit kruh - - - - Draw a hollow circle - Nakreslit prázdný kruh - - - - Draw Number - Nakreslit číslici - - - - Draw incrementing numbers - Nakreslit po sobě jdoucí čísla - - - - &File - &Soubor - - - - &Help - &Nápověda - - - - Go - Jít na - - - - &View - &Zobrazit - - - - &Edit - &Upravit - - - - Toolbar - Nástrojový pruh - - - - PreferencesDialog - - - Preferences - Předvolby - - - - Icon theme: - Vzhled ikon: - - - - Normal background color: - Barva pozadí v normálním režimu: - - - - Fullscreen background color: - Barva pozadí v režimu na celou obrazovku: - - - - Slide show interval (seconds): - Interval změny obrázku při promítání snímků (s): - - - - General - Obecné - - - - ScreenshotDialog - - - Screenshot - Snímek obrazovky - - - - Take a screenshot - Pořídit snímek obrazovky - - - - Region - Oblast - - - - Whole screen - Celá obrazovka - - - - Current window only - Pouze stávající okno - - - - Capture an area of the screen - Zachytit oblast obrazovky - - - - Include mouse cursor - Zahrnout ukazatel myši - - - - seconds - sekund - - - - Delay: - Prodleva: - - - - Include window title and frame - Zahrnout titulek okna a rámeček - - - - UploadDialog - - - Upload - Nahrát - - - - Copy - Zkopírovat - - - diff --git a/src/translations/lximage-qt_cy.ts b/src/translations/lximage-qt_cy.ts deleted file mode 100644 index 26a7a1f..0000000 --- a/src/translations/lximage-qt_cy.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - - - - - - Image files (%1) - - - - - Open directory - - - - - Save File - - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Thumbnails - - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &About - - - - - &Open File - - - - - Ctrl+O - - - - - &Reload File - - - - - Ctrl+R - - - - - &Save - - - - - Ctrl+S - - - - - Save &As - - - - - Ctrl+A - - - - - &Close - - - - - Ctrl+W - - - - - Zoom &In - - - - - Ctrl+= - - - - - Zoom &Out - - - - - Ctrl+- - - - - - &Copy to Clipboard - - - - - - Next File - - - - - PgDown - - - - - - Previous File - - - - - PgUp - - - - - Original Size - - - - - Ctrl+0 - - - - - &Fit - - - - - &Rotate Clockwise - - - - - R - - - - - Rotate &Counterclockwise - - - - - L - - - - - P&references - - - - - &Print - - - - - Ctrl+P - - - - - First File - - - - - Home - - - - - Last File - - - - - End - - - - - &New Window - - - - - Ctrl+N - - - - - Flip &Horizontally - - - - - H - - - - - Capture Screenshot - - - - - F&ull Screen - - - - - F11 - - - - - Flip &Vertically - - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - - - - - &Delete - - - - - Del - - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - - - - - &Help - - - - - Go - - - - - &View - - - - - &Edit - - - - - Toolbar - - - - - PreferencesDialog - - - Preferences - - - - - Icon theme: - - - - - Normal background color: - - - - - Fullscreen background color: - - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - - - - - Take a screenshot - - - - - Region - - - - - Whole screen - - - - - Current window only - - - - - Capture an area of the screen - - - - - Include mouse cursor - - - - - seconds - - - - - Delay: - - - - - Include window title and frame - - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_da.desktop b/src/translations/lximage-qt_da.desktop deleted file mode 100644 index b7143c3..0000000 --- a/src/translations/lximage-qt_da.desktop +++ /dev/null @@ -1,3 +0,0 @@ -Name[da]=LXImage -GenericName[da]=Billedfremviser -Comment[da]=LXQt-billedfremviseren diff --git a/src/translations/lximage-qt_da.ts b/src/translations/lximage-qt_da.ts deleted file mode 100644 index a0d8335..0000000 --- a/src/translations/lximage-qt_da.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Tag et skærmbillede - - - - [FILE1, FILE2,...] - [FIL1, FIL2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - ukendt svar ved fejl - - - - LxImage::ImgBBUpload - - - unknown error response - ukendt svar ved fejl - - - - LxImage::ImgurUpload - - - unknown error response - ukendt svar ved fejl - - - - LxImage::MainWindow - - - About - Om - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - en simpel og hurtig billedfremviser - -Ophavsret (C) 2013 -LXQt-projektet: https://lxqt.org/ - -Forfattere: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Åbn fil - - - - - Image files (%1) - Billedfiler (%1) - - - - Open directory - Åbn mappe - - - - Save File - Gem fil - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (indlæser...) - Billedfremviser - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (kunne ikke indlæse) - Billedfremviser - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Billedfremviser - - - - [*]Image Viewer - [*]Billedfremviser - - - - Thumbnails - Miniaturer - - - - EXIF Data - EXIF-data - - - - LxImage::MruMenu - - - &Clear - &Ryd - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Start - - - - Stop - Stop - - - - Close - Luk - - - - Error - Fejl - - - - MainWindow - - - Image Viewer - Billedfremviser - - - - &Recently Opened Files - &Seneste åbnede filer - - - - toolBar_2 - værktøjsLinje_2 - - - - &About - &Om - - - - &Open File - &Åbn fil - - - - Ctrl+O - Ctrl+O - - - - &Reload File - &Genindlæs fil - - - - Ctrl+R - Ctrl+R - - - - &Save - &Gem - - - - Ctrl+S - Ctrl+S - - - - Save &As - Gem &som - - - - Ctrl+A - Ctrl+A - - - - &Close - &Luk - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Zoom &ind - - - - Ctrl+= - Ctrl+= - - - - Zoom &Out - Zoom &ud - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Kopiér til udklipsholder - - - - - Next File - Næste fil - - - - PgDown - PgDown - - - - - Previous File - Forrige fil - - - - PgUp - PgUp - - - - Original Size - Original størrelse - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - &Tilpas - - - - &Rotate Clockwise - &Rotér med uret - - - - R - H - - - - Rotate &Counterclockwise - Rotér &mod uret - - - - L - V - - - - P&references - &Præferencer - - - - &Print - &Udskriv - - - - Ctrl+P - Ctrl+P - - - - First File - Første fil - - - - Home - Home - - - - Last File - Sidste fil - - - - End - End - - - - &New Window - &Nyt vindue - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Vend &vandret - - - - H - V - - - - Capture Screenshot - Tag skærmbillede - - - - F&ull Screen - &Fuldskærm - - - - F11 - F11 - - - - Flip &Vertically - Vend &lodret - - - - V - L - - - - &Paste from Clipboard - &Indsæt fra udklipsholder - - - - &Slide Show - &Diasshow - - - - &Delete - &Slet - - - - Del - Del - - - - Show Thumbnails - Vis miniaturer - - - - T - M - - - - File Properties - Filegenskaber - - - - Open &Directory - Åbn &mappe - - - - Ctrl+D - Ctrl+M - - - - Upload - Upload - - - - Upload the image - Upload billedet - - - - Show EXIF Data - Vis EXIF-data - - - - No Tool - Intet værktøj - - - - Deselect all drawing tools - Fravælg alle tegningsværktøjer - - - - Draw Arrow - Tegn pil - - - - Draw an arrow - Tegn en pil - - - - Draw Rectangle - Tegn rektangel - - - - Draw a hollow rectangle - Tegn en hul rektangel - - - - Draw Circle - Tegn cirkel - - - - Draw a hollow circle - Tegn en hul cirkel - - - - Draw Number - Tegn tal - - - - Draw incrementing numbers - Tegn stigende tal - - - - &File - &Fil - - - - &Help - &Hjælp - - - - Go - - - - - &View - &Vis - - - - &Edit - &Rediger - - - - Toolbar - Værktøjslinje - - - - PreferencesDialog - - - Preferences - Præferencer - - - - Icon theme: - Ikontema: - - - - Normal background color: - Normal baggrundsfarve: - - - - Fullscreen background color: - Baggrundsfarve i fuldskærm: - - - - Slide show interval (seconds): - Interval for diasshow (sekunder): - - - - General - Generelt - - - - ScreenshotDialog - - - Screenshot - Skærmbillede - - - - Take a screenshot - Tag et skærmbillede - - - - Region - Område - - - - Whole screen - Hele skærmen - - - - Current window only - Kun nuværende vindue - - - - Capture an area of the screen - Indfang et område af skærmen - - - - Include mouse cursor - Inkluder musemarkør - - - - seconds - sekunder - - - - Delay: - Forsinkelse: - - - - Include window title and frame - Inkluder vinduets titel og ramme - - - - UploadDialog - - - Upload - Upload - - - - Copy - Kopiér - - - diff --git a/src/translations/lximage-qt_de.desktop b/src/translations/lximage-qt_de.desktop deleted file mode 100644 index 37a3574..0000000 --- a/src/translations/lximage-qt_de.desktop +++ /dev/null @@ -1,5 +0,0 @@ -[Desktop Entry] -GenericName[de]=Bildbetrachter -Comment[de]=Der LXQt-Bildbetrachter - -#TRANSLATIONS_DIR=translations diff --git a/src/translations/lximage-qt_de.ts b/src/translations/lximage-qt_de.ts deleted file mode 100644 index d4d091b..0000000 --- a/src/translations/lximage-qt_de.ts +++ /dev/null @@ -1,640 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Bildschirmfoto erstellen - - - - [FILE1, FILE2,...] - [DATEI1, DATEI2, ...] - - - - LxImage::ImageShackUpload - - - unknown error response - unbekannte Fehlerantwort - - - - LxImage::ImgBBUpload - - - unknown error response - unbekannte Fehlerantwort - - - - LxImage::ImgurUpload - - - unknown error response - unbekannte Fehlerantwort - - - - LxImage::MainWindow - - - About - Über - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - ein einfacher und schneller Bildbetrachter - -Copyright (C) 2013 -LXQt-Projekt: https://lxqt.org/ - -Autoren: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Datei öffnen - - - - - Image files (%1) - Bilddateien (%1) - - - - Open directory - Verzeichnis öffnen - - - - Save File - Datei speichern - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Lade...) - Bildbetrachter - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Laden ist fehlgeschlagen) - Bildbetrachter - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Bildbetrachter - - - - [*]Image Viewer - [*]Bildbetrachter - - - - Thumbnails - Miniaturen - - - - EXIF Data - EXIF-Daten - - - - LxImage::MruMenu - - - &Clear - Lös&chen - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Start - - - - Stop - Anhalten - - - - Close - Schließen - - - - Error - Fehler - - - - MainWindow - - - Image Viewer - Bildbetrachter - - - - &About - &Über - - - - &Open File - This should be "&Open" (without "File") imho. We are in the File menu. - Ö&ffnen - - - - Ctrl+O - Shortcuts are translated automatically. No need to manually translate it to "Strg+O". - Strg+O - - - - &Save - &Speichern - - - - Ctrl+S - Strg+S - - - - Save &As - Speichern &unter - - - - Ctrl+A - Strg+A - - - - &Close - &Schließen - - - - Ctrl+W - Strg+W - - - - Zoom &In - Ver&größern - - - - Zoom &Out - Ver&kleinern - - - - Ctrl+- - Strg+- - - - - &Copy to Clipboard - In die Zwischenablage &kopieren - - - - - Next File - Nächste Datei - - - - - Previous File - Vorherige Datei - - - - PgDown - Bild ab - - - - &Recently Opened Files - &Zuletzt geöffnete Dateien - - - - toolBar_2 - - - - - &Reload File - Datei &neu laden - - - - Ctrl+R - Strg+R - - - - Ctrl+= - Strg+= - - - - PgUp - Bild auf - - - - Original Size - Originalgröße - - - - Ctrl+0 - Strg+0 - - - - &Fit - &Passend - - - - &Rotate Clockwise - Im Uhrzeigersinn &drehen - - - - R - R - - - - Rotate &Counterclockwise - &Gegen den Uhrzeigersinn drehen - - - - L - L - - - - P&references - Einste&llungen - - - - &Print - &Drucken - - - - Ctrl+P - Strg+P - - - - First File - Erste Datei - - - - Home - Pos1 - - - - Last File - Letzte Datei - - - - End - Ende - - - - &New Window - &Neues Fenster - - - - Ctrl+N - Strg+N - - - - Flip &Horizontally - &Horizontal spiegeln - - - - H - H - - - - Capture Screenshot - Bildschirmfoto aufnehmen - - - - F&ull Screen - &Gesamter Bildschirm - - - - F11 - F11 - - - - Flip &Vertically - &Vertikal spiegeln - - - - V - V - - - - &Paste from Clipboard - Aus Zwischenablage &einfügen - - - - &Slide Show - &Diaschau - - - - &Delete - &Löschen - - - - Del - Entf - - - - Show Thumbnails - Vorschaubilder anzeigen - - - - T - T - - - - File Properties - Translation of 'file' skipped, it is redundant (this is the file menu). - Eigenschaften - - - - Open &Directory - &Verzeichnis öffnen - - - - Ctrl+D - Strg+D - - - - Upload - Hochladen - - - - Upload the image - Bild hochladen - - - - Show EXIF Data - EXIF-Daten anzeigen - - - - No Tool - Kein Werkzeug - - - - Deselect all drawing tools - Alle Zeichenwerkzeuge abwählen - - - - Draw Arrow - Pfeil zeichnen - - - - Draw an arrow - Einen Pfeil zeichnen - - - - Draw Rectangle - Rechteck zeichnen - - - - Draw a hollow rectangle - Ein hohles Rechteck zeichnen - - - - Draw Circle - Kreis zeichnen - - - - Draw a hollow circle - Einen hohlen Kreis zeichnen - - - - Draw Number - Zahl zeichnen - - - - Draw incrementing numbers - Inkrementierende Zahlen zeichnen - - - - &File - &Datei - - - - &Help - &Hilfe - - - - Go - Gehe zu - - - - &View - &Ansicht - - - - &Edit - &Bearbeiten - - - - Toolbar - Werkzeugleiste - - - - PreferencesDialog - - - Preferences - Einstellungen - - - - Icon theme: - Symbolthema: - - - - Normal background color: - Normale Hintergrundfarbe: - - - - Fullscreen background color: - Vollbild-Hintergrundfarbe: - - - - Slide show interval (seconds): - Diaschau-Intervall (Sekunden): - - - - General - Allgemein - - - - ScreenshotDialog - - - Screenshot - Bildschirmfoto - - - - Take a screenshot - Bildschirmfoto machen - - - - Region - Bereich - - - - Whole screen - Gesamter Bildschirm - - - - Current window only - Nur aktuelles Fenster - - - - Capture an area of the screen - Bildschirmbereich aufnehmen - - - - Include mouse cursor - Einschließlich Mauszeiger - - - - seconds - Sekunden - - - - Delay: - Verzögerung: - - - - Include window title and frame - Einschließlich Fenstertitel und Rahmen - - - - UploadDialog - - - Upload - Hochladen - - - - Copy - Kopieren - - - diff --git a/src/translations/lximage-qt_el.desktop b/src/translations/lximage-qt_el.desktop deleted file mode 100644 index 7be5e16..0000000 --- a/src/translations/lximage-qt_el.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[el]=LXImage -GenericName[el]=Προβολέας εικόνων -Comment[el]=Ο προβολέας εικόνων του LXQt diff --git a/src/translations/lximage-qt_el.ts b/src/translations/lximage-qt_el.ts deleted file mode 100644 index 618972b..0000000 --- a/src/translations/lximage-qt_el.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Λήψη ενός στιγμιότυπου - - - - [FILE1, FILE2,...] - [ΑΡΧΕΙΟ1, ΑΡΧΕΙΟ2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - απόκριση αγνώστου σφάλματος - - - - LxImage::ImgBBUpload - - - unknown error response - απόκριση αγνώστου σφάλματος - - - - LxImage::ImgurUpload - - - unknown error response - απόκριση αγνώστου σφάλματος - - - - LxImage::MainWindow - - - About - Σχετικά - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage Qt - ένας απλός και γρήγορος προβολέας εικόνων - -Πνευματικά δικαιώματα (C) 2013 -Έργο LXQt: https://lxqt.org/ - -Συγγραφείς: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Άνοιγμα αρχείου - - - - - Image files (%1) - Αρχεία εικόνων (%1) - - - - Open directory - Άνοιγμα καταλόγου - - - - Save File - Αποθήκευση αρχείου - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Φόρτωση...) - Προβολέας εικόνων - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Αποτυχία φόρτωσης) - Προβολέας εικόνων - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Προβολέας εικόνων - - - - [*]Image Viewer - [*]Προβολέας εικόνων - - - - Thumbnails - Εικόνες επισκόπησης - - - - EXIF Data - Δεδομένα EXIF - - - - LxImage::MruMenu - - - &Clear - &Εκκαθάριση - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Εκκίνηση - - - - Stop - Διακοπή - - - - Close - Κλείσιμο - - - - Error - Σφάλμα - - - - MainWindow - - - Image Viewer - Προβολέας εικόνων - - - - &About - &Σχετικά - - - - &Open File - &Άνοιγμα αρχείου - - - - Ctrl+O - Ctrl+O - - - - &Save - Απο&θήκευση - - - - Ctrl+S - Ctrl+S - - - - Save &As - Αποθήκευση &ως - - - - Ctrl+A - Ctrl+A - - - - &Close - &Κλείσιμο - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Μεγέ&θυνση - - - - Zoom &Out - Σμίκρ&υνση - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - Αντιγραφή στο πρό&χειρο - - - - - Next File - Επόμενο αρχείο - - - - - Previous File - Προηγούμενο αρχείο - - - - PgDown - PgDown - - - - &Recently Opened Files - &Πρόσφατα ανοιγμένα αρχεία - - - - toolBar_2 - toolBar_2 - - - - &Reload File - &Επαναφόρτωση αρχείου - - - - Ctrl+R - Ctrl+R - - - - Ctrl+= - Ctrl+= - - - - PgUp - PgUp - - - - Original Size - Αρχικό Μέγεθος - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - &Ταίριασμα - - - - &Rotate Clockwise - Περιστροφή &δεξιόστροφα - - - - R - R - - - - Rotate &Counterclockwise - Περιστροφή &αριστερόστροφα - - - - L - L - - - - P&references - &Επιλογές - - - - &Print - Εκτύ&πωση - - - - Ctrl+P - Ctrl+P - - - - First File - Πρώτο αρχείο - - - - Home - Αρχική - - - - Last File - Τελευταίο αρχείο - - - - End - Τέλος - - - - &New Window - &Νέο παράθυρο - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Αναστροφή &οριζόντια - - - - H - H - - - - Capture Screenshot - Λήψη στιγμιότυπου - - - - F&ull Screen - Π&λήρης οθόνη - - - - F11 - F11 - - - - Flip &Vertically - Αναστροφή &κατακόρυφα - - - - V - V - - - - &Paste from Clipboard - &Επικόλληση από το πρόχειρο - - - - &Slide Show - &Προβολή διαφάνειας - - - - &Delete - &Διαγραφή - - - - Del - Del - - - - Show Thumbnails - Εμφάνιση εικόνων επισκόπησης - - - - T - T - - - - File Properties - Ιδιότητες αρχείου - - - - Open &Directory - Άνοιγμα &καταλόγου - - - - Ctrl+D - Ctrl+D - - - - Upload - Αποστολή - - - - Upload the image - Αποστολή της εικόνας - - - - Show EXIF Data - Εμφάνιση των δεδομένων EXIF - - - - No Tool - Κανένα εργαλείο - - - - Deselect all drawing tools - Αποεπιλογή όλων των εργαλείων σχεδίασης - - - - Draw Arrow - Σχεδιασμός βέλους - - - - Draw an arrow - Σχεδιάζει ένα βέλος - - - - Draw Rectangle - Σχεδιασμός ορθογώνιου - - - - Draw a hollow rectangle - Σχεδιάζει ένα κοίλο ορθογώνιο - - - - Draw Circle - Σχεδιασμός κύκλου - - - - Draw a hollow circle - Σχεδιάζει έναν κοίλο κύκλο - - - - Draw Number - Σχεδιασμός αριθμού - - - - Draw incrementing numbers - Σχεδιάζει αριθμούς σε προσαύξηση - - - - &File - &Αρχείο - - - - &Help - &Βοήθεια - - - - Go - Μετάβαση - - - - &View - &Προβολή - - - - &Edit - &Επεξεργασία - - - - Toolbar - Γραμμή εργαλείων - - - - PreferencesDialog - - - Preferences - Προτιμήσεις - - - - Icon theme: - Θέμα εικονιδίων: - - - - Normal background color: - Τυπικό χρώμα παρασκηνίου: - - - - Fullscreen background color: - Χρώμα παρασκηνίου πλήρους οθόνης: - - - - Slide show interval (seconds): - Χρονική καθυστέρηση προβολής διαφανειών (δευτερόλεπτα): - - - - General - Γενικά - - - - ScreenshotDialog - - - Screenshot - Στιγμιότυπο - - - - Take a screenshot - Λήψη στιγμιότυπου - - - - Region - Περιοχή - - - - Whole screen - Ολόκληρη η οθόνη - - - - Current window only - Μόνον το τρέχον παράθυρο - - - - Capture an area of the screen - Σύλληψη μιας περιοχής της οθόνης - - - - Include mouse cursor - Συμπερίληψη του δρομέα του ποντικιού - - - - seconds - δευτερόλεπτα - - - - Delay: - Καθυστέρηση: - - - - Include window title and frame - Συμπερίληψη του τίτλου και του πλαισίου του παραθύρου - - - - UploadDialog - - - Upload - Αποστολή - - - - Copy - Αντιγραφή - - - diff --git a/src/translations/lximage-qt_en_GB.ts b/src/translations/lximage-qt_en_GB.ts deleted file mode 100644 index 5c372c4..0000000 --- a/src/translations/lximage-qt_en_GB.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - - - - - - Image files (%1) - - - - - Open directory - - - - - Save File - - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Thumbnails - - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &About - - - - - &Open File - - - - - Ctrl+O - - - - - &Reload File - - - - - Ctrl+R - - - - - &Save - - - - - Ctrl+S - - - - - Save &As - - - - - Ctrl+A - - - - - &Close - - - - - Ctrl+W - - - - - Zoom &In - - - - - Ctrl+= - - - - - Zoom &Out - - - - - Ctrl+- - - - - - &Copy to Clipboard - - - - - - Next File - - - - - PgDown - - - - - - Previous File - - - - - PgUp - - - - - Original Size - - - - - Ctrl+0 - - - - - &Fit - - - - - &Rotate Clockwise - - - - - R - - - - - Rotate &Counterclockwise - Rotate &Anticlockwise - - - - L - - - - - P&references - - - - - &Print - - - - - Ctrl+P - - - - - First File - - - - - Home - - - - - Last File - - - - - End - - - - - &New Window - - - - - Ctrl+N - - - - - Flip &Horizontally - - - - - H - - - - - Capture Screenshot - - - - - F&ull Screen - - - - - F11 - - - - - Flip &Vertically - - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - - - - - &Delete - - - - - Del - - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - - - - - &Help - - - - - Go - - - - - &View - - - - - &Edit - - - - - Toolbar - - - - - PreferencesDialog - - - Preferences - - - - - Icon theme: - - - - - Normal background color: - Normal background colour: - - - - Fullscreen background color: - Fullscreen background colour: - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - - - - - Take a screenshot - - - - - Region - - - - - Whole screen - - - - - Current window only - - - - - Capture an area of the screen - - - - - Include mouse cursor - - - - - seconds - - - - - Delay: - - - - - Include window title and frame - - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_es.desktop b/src/translations/lximage-qt_es.desktop deleted file mode 100644 index 9fa090a..0000000 --- a/src/translations/lximage-qt_es.desktop +++ /dev/null @@ -1,3 +0,0 @@ -Name[es]=LXImage -GenericName[es]=Visor de imágenes -Comment[es]=El visor de imágenes de LXQt diff --git a/src/translations/lximage-qt_es.ts b/src/translations/lximage-qt_es.ts deleted file mode 100644 index 94756d7..0000000 --- a/src/translations/lximage-qt_es.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Capturar la pantalla - - - - [FILE1, FILE2,...] - [ARCHIVO1, ARCHIVO2, …] - - - - LxImage::ImageShackUpload - - - unknown error response - respuesta de error desconocido - - - - LxImage::ImgBBUpload - - - unknown error response - respuesta de error desconocido - - - - LxImage::ImgurUpload - - - unknown error response - respuesta de error desconocido - - - - LxImage::MainWindow - - - About - Acerca de - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - un visor de imágenes sencillo y rápido - -Copyright (C) 2013 -Proyecto LXQt: https://lxqt.org/ - -Autores: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Abrir un archivo - - - - - Image files (%1) - Imágenes (%1) - - - - Open directory - Abrir un directorio - - - - Save File - Guardar el archivo - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Cargando...) - Visor de imágenes - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (La carga ha fallado) - Visor de imágenes - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visor de imágenes - - - - [*]Image Viewer - [*]Visor de imágenes - - - - Thumbnails - Miniaturas - - - - EXIF Data - Datos EXIF - - - - LxImage::MruMenu - - - &Clear - Limpiar - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - Empezar - - - - Stop - Detener - - - - Close - Cerrar - - - - Error - Error - - - - MainWindow - - - Image Viewer - Visor de imágenes - - - - &About - &Acerca de - - - - &Open File - &Abrir un archivo - - - - Ctrl+O - Ctrl+O - - - - &Save - &Guardar - - - - Ctrl+S - Ctrl+S - - - - Save &As - G&uardar como… - - - - Ctrl+A - Ctrl+A - - - - &Close - &Cerrar - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - &Ampliar - - - - Zoom &Out - &Reducir - - - - Ctrl+- - Ctrl+− - - - - &Copy to Clipboard - &Copiar al portapapeles - - - - - Next File - Archivo siguiente - - - - - Previous File - Archivo anterior - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - Archivos abiertos &recientemente - - - - toolBar_2 - - - - - &Reload File - &Recargar el archivo - - - - Ctrl+R - - - - - PgDown - Av Pág - - - - PgUp - Re Pág - - - - Original Size - Tamaño original - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - A&justar - - - - &Rotate Clockwise - &Girar a la derecha - - - - R - - - - - Rotate &Counterclockwise - G&irar a la izquierda - - - - L - - - - - P&references - P&referencias - - - - &Print - Im&primir - - - - Ctrl+P - Ctrl+P - - - - First File - Primer archivo - - - - Home - Inicio - - - - Last File - Último archivo - - - - End - Fin - - - - &New Window - &Nueva ventana - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Voltear &horizontalmente - - - - H - - - - - Capture Screenshot - Capturar la pantalla - - - - F&ull Screen - Pa&ntalla completa - - - - F11 - F11 - - - - Flip &Vertically - Voltear &verticalmente - - - - V - - - - - &Paste from Clipboard - &Pegar del portapapeles - - - - &Slide Show - Pa&se de diapositivas - - - - &Delete - &Eliminar - - - - Del - Supr - - - - Show Thumbnails - Mostrar miniaturas - - - - T - - - - - File Properties - Propiedades del archivo - - - - Open &Directory - Abrir un &directorio - - - - Ctrl+D - Ctrl+D - - - - Upload - Subir - - - - Upload the image - Subir la imagen - - - - Show EXIF Data - Mostrar los datos EXIF - - - - No Tool - Ninguna herramienta - - - - Deselect all drawing tools - Deselecionar todas las herramientas de dibujo - - - - Draw Arrow - Dibujar flecha - - - - Draw an arrow - Dibuja una flecha - - - - Draw Rectangle - Dibujar rectángulo - - - - Draw a hollow rectangle - Dibuja un rectángulo hueco - - - - Draw Circle - Dibujar circunferencia - - - - Draw a hollow circle - Dibuja un círculo hueco - - - - Draw Number - Dibujar número - - - - Draw incrementing numbers - Dibuja números crecientes - - - - &File - &Archivo - - - - &Help - Ay&uda - - - - Go - Ir - - - - &View - &Ver - - - - &Edit - &Editar - - - - Toolbar - Barra de herramientas - - - - PreferencesDialog - - - Preferences - Preferencias - - - - Icon theme: - Tema de iconos: - - - - Normal background color: - Color de fondo normal: - - - - Fullscreen background color: - Color de fondo a pantalla completa: - - - - Slide show interval (seconds): - Intervalo de presentación de diapositivas (segundos): - - - - General - General - - - - ScreenshotDialog - - - Screenshot - Captura de pantalla - - - - Take a screenshot - Capturar la pantalla - - - - Region - Región - - - - Whole screen - Toda la pantalla - - - - Current window only - Solo la ventana actual - - - - Capture an area of the screen - Capturar un área de la pantalla - - - - Include mouse cursor - Incluir el puntero del ratón - - - - seconds - segundos - - - - Delay: - Retardo: - - - - Include window title and frame - Incluir el marco y el título de la ventana - - - - UploadDialog - - - Upload - Subir - - - - Copy - Copiar - - - diff --git a/src/translations/lximage-qt_fr.desktop b/src/translations/lximage-qt_fr.desktop deleted file mode 100644 index 82200c3..0000000 --- a/src/translations/lximage-qt_fr.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translation -Name[fr]=LXImage -GenericName[fr]=Visionneuse d'images -Comment[fr]=Visionneuse d'images de LXQt diff --git a/src/translations/lximage-qt_fr.ts b/src/translations/lximage-qt_fr.ts deleted file mode 100644 index 4b41430..0000000 --- a/src/translations/lximage-qt_fr.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Faire une capture d'écran - - - - [FILE1, FILE2,...] - [FICHIER1, FICHIER2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - réponse : erreur inconnue - - - - LxImage::ImgBBUpload - - - unknown error response - réponse : erreur inconnue - - - - LxImage::ImgurUpload - - - unknown error response - réponse : erreur inconnue - - - - LxImage::MainWindow - - - About - À propos - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - un visualiseur d'image, simple et rapide - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Auteur : -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Ouvrir un fichier - - - - - Image files (%1) - Fichier image (%1) - - - - Open directory - Ouvrir le répertoire - - - - Save File - Enregistrer un fichier - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Chargement...) - Visionneur d'image - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Échec de chargement) - Visionneur d'image - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visionneur d'image - - - - [*]Image Viewer - [*]Visionneur d'image - - - - Thumbnails - Miniatures - - - - EXIF Data - Données EXIF - - - - LxImage::MruMenu - - - &Clear - &Effacer - - - - LxImage::UploadDialog - - - Imgur - Imgur (hébergement d'images) - - - - ImgBB - ImgBB (hébergement d'images) - - - - ImageShack - ImageShack (hébergement d'images) - - - - Start - Start - - - - Stop - Stop - - - - Close - Fermer - - - - Error - Erreur - - - - MainWindow - - - Image Viewer - Visionneur d'image - - - - &File - &Fichier - - - - &Recently Opened Files - &Fichiers récemment ouverts - - - - &Help - &Aide - - - - Go - Aller à - - - - &View - &Afficher - - - - &Edit - &Éditer - - - - Toolbar - Barre d'outils - - - - toolBar_2 - barre d'outils_2 - - - - &About - &À propos - - - - &Open File - &Ouvrir un fichier - - - - Ctrl+O - Ctrl+O - - - - &Reload File - &Recharger le fichier - - - - Ctrl+R - Ctrl+R - - - - &Save - &Enregistrer - - - - Ctrl+S - Ctrl+S - - - - Save &As - Enregistrer &sous - - - - Ctrl+A - Ctrl+A - - - - &Close - &Fermer - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Zoom a&vant - - - - Ctrl+= - Ctrl+= - - - - Zoom &Out - Zoom a&rrière - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Copie vers le presse-papier - - - - - Next File - Fichier suivant - - - - PgDown - Bas de page - - - - - Previous File - Fichier précédent - - - - PgUp - Haut de page - - - - Original Size - Taille d'origine - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - Adapter la &taille - - - - &Rotate Clockwise - &Rotation horaire - - - - R - R - - - - Rotate &Counterclockwise - Rotation &anti-horaire - - - - L - L - - - - P&references - &Préférences - - - - &Print - &Imprimer - - - - Ctrl+P - Ctrl+P - - - - First File - Premier fichier - - - - Home - Accueil - - - - Last File - Dernier fichier - - - - End - Fin - - - - &New Window - &Nouvelle fenêtre - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Retournement &horizontal - - - - H - H - - - - Capture Screenshot - Capture d'écran - - - - F&ull Screen - &Plein écran - - - - F11 - F11 - - - - Flip &Vertically - Retournement &vertical - - - - V - V - - - - &Paste from Clipboard - &Coller depuis le presse-papier - - - - &Slide Show - &Diaporama - - - - &Delete - &Supprimer - - - - Del - Suppr - - - - Show Thumbnails - Afficher les miniatures - - - - T - T - - - - File Properties - Propriétés du fichier - - - - Open &Directory - Ouvrir &répertoire - - - - Ctrl+D - Ctrl+D - - - - Upload - Envoyer - - - - Upload the image - Envoyer l'image - - - - Show EXIF Data - Afficher les données EXIF - - - - No Tool - Aucun outil - - - - Deselect all drawing tools - Désélectionner tous les outils de dessin - - - - Draw Arrow - Dessiner flèche - - - - Draw an arrow - Dessiner une flèche - - - - Draw Rectangle - Dessiner rectangle - - - - Draw a hollow rectangle - Dessiner un rectangle creux - - - - Draw Circle - Dessiner cercle - - - - Draw a hollow circle - Dessiner un cercle creux - - - - Draw Number - Dessiner nombre - - - - Draw incrementing numbers - Dessiner des nombres incrémentants - - - - PreferencesDialog - - - Preferences - Préférences - - - - General - Général - - - - Icon theme: - Thème des icônes : - - - - Normal background color: - Couleur de fond normale : - - - - Fullscreen background color: - Couleur de fond en plein écran : - - - - Slide show interval (seconds): - Intervale entre diapositives : - - - - ScreenshotDialog - - - Screenshot - Copie d'écran - - - - Take a screenshot - Faire une copie d'écran - - - - Region - Région - - - - Whole screen - Écran entier - - - - Current window only - Fenêtre courante seule - - - - Capture an area of the screen - Capturer une zone de l"écran - - - - Include mouse cursor - Inclure le pointeur de souris - - - - seconds - secondes - - - - Delay: - Délai : - - - - Include window title and frame - Inclurela barre de titre et le cadre - - - - UploadDialog - - - Upload - Envoyer - - - - Copy - Copier - - - diff --git a/src/translations/lximage-qt_gl.ts b/src/translations/lximage-qt_gl.ts deleted file mode 100644 index 6f526eb..0000000 --- a/src/translations/lximage-qt_gl.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Obter unha captura de pantalla - - - - [FILE1, FILE2,...] - [FICHEIRO1, FICHEIRO2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - resposta de erro descoñecida - - - - LxImage::ImgBBUpload - - - unknown error response - resposta de erro descoñecida - - - - LxImage::ImgurUpload - - - unknown error response - resposta de erro descoñecida - - - - LxImage::MainWindow - - - About - Sobre - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - Un visor de imaxes sinxelo e rápido - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Autores: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Abrir ficheiro - - - - - Image files (%1) - Ficheiros de imaxe (%1) - - - - Open directory - Abrir directorio - - - - Save File - Gardar o ficheiro - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Cargando...) - Visor de imaxes - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Produciuse un fallo na carga) - Visor de imaxes - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visor de imaxes - - - - [*]Image Viewer - [*]Visor de imaxes - - - - Thumbnails - Miniaturas - - - - EXIF Data - Datos EXIF - - - - LxImage::MruMenu - - - &Clear - &Limpar - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Iniciar - - - - Stop - Parar - - - - Close - Pechar - - - - Error - Erro - - - - MainWindow - - - Image Viewer - Visor de imaxes - - - - &About - &Sobre - - - - &Open File - &Abrir ficheiro - - - - Ctrl+O - Ctrl+O - - - - &Save - &Gardar - - - - Ctrl+S - Ctrl+S - - - - Save &As - Gardar &como - - - - Ctrl+A - Ctrl+A - - - - &Close - &Pechar - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - A&chegar - - - - Zoom &Out - A&fastar - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Copiar ao portapapeis - - - - - Next File - Ficheiro seguinte - - - - - Previous File - Ficheiro anterior - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - Ficheiros abertos &recentemente - - - - toolBar_2 - Barra de ferramentas 2 - - - - &Reload File - &Recargar o ficheiro - - - - Ctrl+R - Ctrl+R - - - - PgDown - Av Páx - - - - PgUp - Re Páx - - - - Original Size - Tamaño orixinal - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - A&xustar - - - - &Rotate Clockwise - Rotar en sentido &horario - - - - R - D - - - - Rotate &Counterclockwise - Rotar en sentido &antihorario - - - - L - E - - - - P&references - P&referencias - - - - &Print - Im&primir - - - - Ctrl+P - Ctrl+P - - - - First File - Primeiro ficheiro - - - - Home - Cartafol persoal - - - - Last File - Último ficheiro - - - - End - Fin - - - - &New Window - &Nova xanela - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Inverter na & horizontal - - - - H - H - - - - Capture Screenshot - Captura de pantalla - - - - F&ull Screen - Pantalla c&ompleta - - - - F11 - F11 - - - - Flip &Vertically - Inverter na &vertical - - - - V - V - - - - &Paste from Clipboard - &Pegar do portapapeis - - - - &Slide Show - &Diaporama - - - - &Delete - &Eliminar - - - - Del - Supr - - - - Show Thumbnails - Amosar miniaturas - - - - T - M - - - - File Properties - Propiedades do ficheiro - - - - Open &Directory - Abrir &directorio - - - - Ctrl+D - Ctrl+D - - - - Upload - Enviar - - - - Upload the image - Enviar a imaxe - - - - Show EXIF Data - Amosar os datos EXIF - - - - No Tool - Ningunha ferramenta - - - - Deselect all drawing tools - Desmarcar todas as ferramentas de debuxo - - - - Draw Arrow - Debuxar unha frecha - - - - Draw an arrow - Debuxar unha frecha - - - - Draw Rectangle - Debuxar un rectángulo - - - - Draw a hollow rectangle - Debuxa un rectángulo oco - - - - Draw Circle - Debuxar un círculo - - - - Draw a hollow circle - Debuxar un círculo oco - - - - Draw Number - Debuxar un número - - - - Draw incrementing numbers - Debuxar números de xeito incremental - - - - &File - &Ficheiro - - - - &Help - &Axuda - - - - Go - Ir a - - - - &View - &Ver - - - - &Edit - &Editar - - - - Toolbar - Barra de ferramentas - - - - PreferencesDialog - - - Preferences - Preferencias - - - - Icon theme: - Tema de iconas: - - - - Normal background color: - Cor do fondo normal: - - - - Fullscreen background color: - Cor do fondo a pantalla completa: - - - - Slide show interval (seconds): - Intervalo do diaporama (en segundos): - - - - General - Xeral - - - - ScreenshotDialog - - - Screenshot - Captura de pantalla - - - - Take a screenshot - Obter unha captura de pantalla - - - - Region - Área - - - - Whole screen - Pantalla completa - - - - Current window only - Só a xanela actual - - - - Capture an area of the screen - Capturar unha área da pantalla - - - - Include mouse cursor - Incluír o punteiro do rato - - - - seconds - segundos - - - - Delay: - Demora: - - - - Include window title and frame - Incluír o marco e o título da xanela - - - - UploadDialog - - - Upload - Enviar - - - - Copy - Copiar - - - diff --git a/src/translations/lximage-qt_he.ts b/src/translations/lximage-qt_he.ts deleted file mode 100644 index b93f7cf..0000000 --- a/src/translations/lximage-qt_he.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - צילום המסך - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - תגובת שגיאה בלתי ידועה - - - - LxImage::ImgBBUpload - - - unknown error response - תגובת שגיאה בלתי ידועה - - - - LxImage::ImgurUpload - - - unknown error response - תגובת שגיאה בלתי ידועה - - - - LxImage::MainWindow - - - About - על אודות - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - מציג תמונות פשוט ומהיר - -כל הזכויות שמורות (C) 2013 -מיזם LXQt:‏ https://lxqt.org/‎ - -יוצרים: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com>‎ - - - - Open File - פתיחת קובץ - - - - - Image files (%1) - קובצי תמונה (%1) - - - - Open directory - פתיחת תיקייה - - - - Save File - שמירת קובץ - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (בטעינה…) - מציג תמונות - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (הטעינה נכשלה) - מציג תמונות - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - מציג תמונות - - - - [*]Image Viewer - [*]מציג תמונות - - - - Thumbnails - תמונות ממוזערות - - - - EXIF Data - נתוני EXIF - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - התחלה - - - - Stop - עצירה - - - - Close - סגירה - - - - Error - שגיאה - - - - MainWindow - - - Image Viewer - מציג תמונות - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &About - על &אודות - - - - &Open File - &פתיחת קובץ - - - - Ctrl+O - - - - - &Reload File - - - - - Ctrl+R - - - - - &Save - &שמירה - - - - Ctrl+S - - - - - Save &As - שמירה &בשם - - - - Ctrl+A - - - - - &Close - &סגירה - - - - Ctrl+W - - - - - Zoom &In - הת&קרבות - - - - Ctrl+= - - - - - Zoom &Out - הת&רחקות - - - - Ctrl+- - - - - - &Copy to Clipboard - ה&עתקה ללוח גזירים - - - - - Next File - הקובץ הבא - - - - PgDown - - - - - - Previous File - הקובץ הקודם - - - - PgUp - - - - - Original Size - גודל מקורי - - - - Ctrl+0 - - - - - &Fit - הת&אמה - - - - &Rotate Clockwise - הטייה &עם כיוון השעון - - - - R - ע - - - - Rotate &Counterclockwise - הטייה &נגד כיוון השעון - - - - L - נ - - - - P&references - ה&עדפות - - - - &Print - ה&דפסה - - - - Ctrl+P - - - - - First File - קובץ ראשון - - - - Home - - - - - Last File - קובץ אחרון - - - - End - - - - - &New Window - &חלון חדש - - - - Ctrl+N - - - - - Flip &Horizontally - היפוך או&פקי - - - - H - פ - - - - Capture Screenshot - צילום המסך - - - - F&ull Screen - מ&סך מלא - - - - F11 - - - - - Flip &Vertically - היפוך א&נכי - - - - V - נ - - - - &Paste from Clipboard - ה&דבקה מלוח הגזירים - - - - &Slide Show - מ&צגת - - - - &Delete - מ&חיקה - - - - Del - - - - - Show Thumbnails - הצגת תמונות ממוזערות - - - - T - ז - - - - File Properties - מאפייני קובץ - - - - Open &Directory - פתיחת &תיקייה - - - - Ctrl+D - - - - - Upload - העלאה - - - - Upload the image - העלאת התמונה - - - - Show EXIF Data - הצגת נתוני EXIF - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - &קובץ - - - - &Help - ע&זרה - - - - Go - קדימה - - - - &View - ת&צוגה - - - - &Edit - ע&ריכה - - - - Toolbar - סרגל כלים - - - - PreferencesDialog - - - Preferences - העדפות - - - - Icon theme: - ערכת סמלים: - - - - Normal background color: - צבע רקע כרגיל: - - - - Fullscreen background color: - צבע רקע מסך מלא: - - - - Slide show interval (seconds): - זמן בין החלפת תמונות (שניות): - - - - General - כללי - - - - ScreenshotDialog - - - Screenshot - צילום מסך - - - - Take a screenshot - צילום המסך - - - - Region - אזור - - - - Whole screen - המסך כולו - - - - Current window only - החלון הנוכחי בלבד - - - - Capture an area of the screen - צילום אזור מסוים מהמסך - - - - Include mouse cursor - כולל סמן העכבר - - - - seconds - שניות - - - - Delay: - השהיה: - - - - Include window title and frame - כולל הכותרת והמסגרת של החלון - - - - UploadDialog - - - Upload - העלאה - - - - Copy - - - - diff --git a/src/translations/lximage-qt_hr.ts b/src/translations/lximage-qt_hr.ts deleted file mode 100644 index 1442161..0000000 --- a/src/translations/lximage-qt_hr.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Napravi sliku zaslona - - - - [FILE1, FILE2,...] - [DATOTEKA1, DATOTEKA2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - O programu - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - Otvori datoteku - - - - - Image files (%1) - Datoteke slika (%1) - - - - Open directory - - - - - Save File - Spremi datoteku - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Thumbnails - - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - Preglednik slika - - - - &About - &O programu - - - - &Open File - &Otvori datoteku - - - - Ctrl+O - Ctrl+O - - - - &Save - &Spremi - - - - Ctrl+S - Ctrl+S - - - - Save &As - Spremi &kao - - - - Ctrl+A - Ctrl+A - - - - &Close - &Zatvori - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - - - - - Zoom &Out - - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - - - - - - Next File - Slijedeća datoteka - - - - - Previous File - Prethodna datoteka - - - - Ctrl+= - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - PgDown - - - - - PgUp - - - - - Original Size - Izvorna veličina - - - - Ctrl+0 - - - - - &Fit - - - - - &Rotate Clockwise - &Rotiraj u smjeru kazaljke na satu - - - - R - - - - - Rotate &Counterclockwise - Rotiraj &obrnuto od smjera kazaljke na satu - - - - L - - - - - P&references - O&sobitosti - - - - &Print - &Ispis - - - - Ctrl+P - - - - - First File - Prva datoteka - - - - Home - Osobna mapa - - - - Last File - Zadnja datoteka - - - - End - Kraj - - - - &New Window - &Novi prozor - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Obrni &vodoravno - - - - H - - - - - Capture Screenshot - Uhvati sliku zaslona - - - - F&ull Screen - C&ijeli zaslon - - - - F11 - F11 - - - - Flip &Vertically - Obrni &okomito - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - &Klizni prikaz - - - - &Delete - &Izbriši - - - - Del - Del - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - &Datoteka - - - - &Help - &Pomoć - - - - Go - Idi - - - - &View - &Pogled - - - - &Edit - &Uredi - - - - Toolbar - - - - - PreferencesDialog - - - Preferences - Osobitosti - - - - Icon theme: - - - - - Normal background color: - - - - - Fullscreen background color: - - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - Snimka zaslona - - - - Take a screenshot - Napravi snimku zaslona - - - - Region - Regija - - - - Whole screen - Cijeli zaslon - - - - Current window only - Samo trenutni prozor - - - - Capture an area of the screen - - - - - Include mouse cursor - uključi pokazivač miša - - - - seconds - sekundi - - - - Delay: - Odgoda: - - - - Include window title and frame - Uključi naslov prozora i okvir - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_hu.desktop b/src/translations/lximage-qt_hu.desktop deleted file mode 100644 index 5bcbe7b..0000000 --- a/src/translations/lximage-qt_hu.desktop +++ /dev/null @@ -1,6 +0,0 @@ -[Desktop Entry] -Name[hu]=LXQt képnéző -GenericName[hu]=Képmegjelenítő -Comment[hu]=Az LXQt képnézegetője - -#TRANSLATIONS_DIR=translations diff --git a/src/translations/lximage-qt_hu.ts b/src/translations/lximage-qt_hu.ts deleted file mode 100644 index 7238b34..0000000 --- a/src/translations/lximage-qt_hu.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Képernyőkép - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - Rólunk - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - Fájl megnyitás - - - - - Image files (%1) - Képfájlok (%1) - - - - Open directory - Könyvtár nyitás - - - - Save File - Fájl mentés - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Betöltés...) - Képnéző - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Betöltés sikertelen) - Képnéző - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3.) - Képnéző - - - - [*]Image Viewer - [*]Képnéző - - - - Thumbnails - Bélyegképek - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - Bezárás - - - - Error - - - - - MainWindow - - - Image Viewer - Képnéző - - - - &About - Ról&am - - - - &Open File - &Fájlnyitás - - - - Ctrl+O - - - - - &Save - &Ment - - - - Ctrl+S - - - - - Save &As - &Másként ment - - - - Ctrl+A - - - - - &Close - &Bezárás - - - - Ctrl+W - - - - - Zoom &In - &Nagyít - - - - Zoom &Out - &Kicsinyít - - - - Ctrl+- - - - - - &Copy to Clipboard - &Vágólapra másol - - - - - Next File - Következő fájl - - - - - Previous File - Előző fájl - - - - PgDown - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - Ctrl+= - - - - - PgUp - - - - - Original Size - Eredeti méret - - - - Ctrl+0 - - - - - &Fit - &Kitölt - - - - &Rotate Clockwise - &Jobbra forgat - - - - R - - - - - Rotate &Counterclockwise - &Balra forgat - - - - L - - - - - P&references - &Beállítások - - - - &Print - &Nyomtat - - - - Ctrl+P - - - - - First File - Első fájl - - - - Home - - - - - Last File - Utolsó fájl - - - - End - Vége - - - - &New Window - &Új ablak - - - - Ctrl+N - - - - - Flip &Horizontally - Vízsz&intesen átfordít - - - - H - - - - - Capture Screenshot - Képernyőkép készítés - - - - F&ull Screen - &Teljes kép - - - - F11 - - - - - Flip &Vertically - &Fejtetőre állít - - - - V - - - - - &Paste from Clipboard - Vágóla&pról beilleszt - - - - &Slide Show - &Diavetítés - - - - &Delete - &Törlés - - - - Del - - - - - Show Thumbnails - Bélyegképek - - - - T - - - - - File Properties - Fájljellemzők - - - - Open &Directory - Mappa &Megnyitása - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - &Fájl - - - - &Help - &Segítség - - - - Go - Ugrás - - - - &View - &Nézet - - - - &Edit - &Szerkeszt - - - - Toolbar - Eszközsáv - - - - PreferencesDialog - - - Preferences - Beállítások - - - - Icon theme: - Ikontéma: - - - - Normal background color: - Normál háttérszín: - - - - Fullscreen background color: - Teljeskép háttérszín: - - - - Slide show interval (seconds): - Diaváltás (másodperc): - - - - General - Általános - - - - ScreenshotDialog - - - Screenshot - Képernyőkép - - - - Take a screenshot - Képernyőfénykép - - - - Region - Terület - - - - Whole screen - Teljes kép - - - - Current window only - Aktuális ablak - - - - Capture an area of the screen - Képernyőrész kiválasztás - - - - Include mouse cursor - Egérkurzor is - - - - seconds - másodperc - - - - Delay: - Késleltetés: - - - - Include window title and frame - Ablakkeret és fejléc is - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_id.ts b/src/translations/lximage-qt_id.ts deleted file mode 100644 index a58c41e..0000000 --- a/src/translations/lximage-qt_id.ts +++ /dev/null @@ -1,641 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Ambil cuplikan layar - - - - [FILE1, FILE2,...] - [BERKAS1, BERKAS2, ...] - - - - LxImage::ImageShackUpload - - - unknown error response - respon kesalahan tidak diketahui - - - - LxImage::ImgBBUpload - - - unknown error response - respon kesalahan tidak diketahui - - - - LxImage::ImgurUpload - - - unknown error response - respon kesalahan tidak diketahui - - - - LxImage::MainWindow - - - About - Tentang - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - penampil gambar yang sederhana dan cepat - -Hak cipta (C) 2013 -LXQt Project: https://lxqt.org/ - -Pencipta: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Buka Berkas - - - - - Image files (%1) - Berkas gambar (%1) - - - - Open directory - Buka direktori - - - - Save File - Simpan Berkas - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Memuat...) - Penampil Gambar - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Gagal Dimuat) - Penampil Gambar - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Penampil Gambar - - - - [*]Image Viewer - [*]Penampil Gambar - - - - Thumbnails - Gambar Mini - - - - EXIF Data - Data EXIF - - - - LxImage::MruMenu - - - &Clear - &Bersihkan - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Mulai - - - - Stop - Berhenti - - - - Close - Tutup - - - - Error - Kesalahan - - - - MainWindow - - - Image Viewer - Penampil Gambar - - - - &About - &Tentang - - - - &Open File - &Buka Berkas - - - - Ctrl+O - Ctrl+O - - - - &Save - &Simpan - - - - Ctrl+S - Ctrl+S - - - - Save &As - Simpan Seb&agai - - - - Ctrl+A - Ctrl+A - - - - &Close - Tutup - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Per&besar - - - - Zoom &Out - Per&kecil - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Salin ke Papan Klip - - - - - Next File - Berkas Berikutnya - - - - - Previous File - Berkas Sebelumnya - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - &File yang Baru Dibuka - - - - toolBar_2 - toolBar_2 - - - - &Reload File - &Muat Ulang File - - - - Ctrl+R - Ctrl+R - - - - PgDown - PgDown - - - - PgUp - PgUp - - - - Original Size - Ukuran Asli - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - &Pas - - - - &Rotate Clockwise - Puta&r Searah Jarum Jam - - - - R - R - - - - Rotate &Counterclockwise - Putar Ber&lawanan Jarum Jam - - - - L - L - - - - P&references - P&referensi - - - - &Print - &Cetak - - - - Ctrl+P - Ctrl+P - - - - First File - Berkas Pertama - - - - Home - asumsi: nama tombol - - Rumah - - - - Last File - Berkas Terakhir - - - - End - asumsi: nama tombol - - Akhir - - - - &New Window - Je&ndela Baru - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Balikkan Arah &Horisontal - - - - H - H - - - - Capture Screenshot - Ambil Cuplikan Layar - - - - F&ull Screen - Layar Pen&uh - - - - F11 - F11 - - - - Flip &Vertically - Balikkan Arah &Vertikal - - - - V - V - - - - &Paste from Clipboard - Tem&pel dari Papan Klip - - - - &Slide Show - Pertunjukan &Salindia - - - - &Delete - Hapus - - - - Del - Del - - - - Show Thumbnails - Tampilkan Gambar Kecil - - - - T - T - - - - File Properties - Properti Berkas - - - - Open &Directory - Buka &Direktori - - - - Ctrl+D - Ctrl+D - - - - Upload - Unggah - - - - Upload the image - Unggah gambar - - - - Show EXIF Data - Tampilkan Data EXIF - - - - No Tool - Tanpa Alat - - - - Deselect all drawing tools - Hapus centang semua alat gambar - - - - Draw Arrow - Gambar Panah - - - - Draw an arrow - Gambar sebuah panah - - - - Draw Rectangle - Gambar persegi panjang - - - - Draw a hollow rectangle - Gambar persegi panjang berongga - - - - Draw Circle - Gambar lingkaran - - - - Draw a hollow circle - Gambar lingkaran berongga - - - - Draw Number - Gambar angka - - - - Draw incrementing numbers - Gambar angka yang bertambah - - - - &File - Berkas - - - - &Help - Bantuan - - - - Go - Ke - - - - &View - Lihat - - - - &Edit - Sunting - - - - Toolbar - Bilah alat - - - - PreferencesDialog - - - Preferences - Preferensi - - - - Icon theme: - Tema ikon: - - - - Normal background color: - Warna latar belakang normal: - - - - Fullscreen background color: - Warna latar belakang layar penuh: - - - - Slide show interval (seconds): - Interval salindia (detik): - - - - General - Umum - - - - ScreenshotDialog - - - Screenshot - Cuplikan layar - - - - Take a screenshot - Ambil cuplikan layar - - - - Region - Wilayah - - - - Whole screen - Seluruh layar - - - - Current window only - Hanya jendela saat ini - - - - Capture an area of the screen - Tangkap area layar - - - - Include mouse cursor - Sertakan kursor tetikus - - - - seconds - detik - - - - Delay: - Tunda: - - - - Include window title and frame - Sertakan rangka dan judul jendela - - - - UploadDialog - - - Upload - Unggah - - - - Copy - Salin - - - diff --git a/src/translations/lximage-qt_is.ts b/src/translations/lximage-qt_is.ts deleted file mode 100644 index b2d9782..0000000 --- a/src/translations/lximage-qt_is.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - - - - - - Image files (%1) - - - - - Open directory - - - - - Save File - - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Thumbnails - - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - - - - - &About - - - - - &Open File - - - - - Ctrl+O - - - - - &Save - - - - - Ctrl+S - - - - - Save &As - - - - - Ctrl+A - - - - - &Close - - - - - Ctrl+W - - - - - Zoom &In - - - - - Zoom &Out - - - - - Ctrl+- - - - - - &Copy to Clipboard - - - - - - Next File - - - - - - Previous File - - - - - PgDown - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - Ctrl+= - - - - - PgUp - - - - - Original Size - - - - - Ctrl+0 - - - - - &Fit - - - - - &Rotate Clockwise - - - - - R - - - - - Rotate &Counterclockwise - - - - - L - - - - - P&references - - - - - &Print - - - - - Ctrl+P - - - - - First File - - - - - Home - - - - - Last File - - - - - End - - - - - &New Window - - - - - Ctrl+N - - - - - Flip &Horizontally - - - - - H - - - - - Capture Screenshot - - - - - F&ull Screen - - - - - F11 - - - - - Flip &Vertically - - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - - - - - &Delete - - - - - Del - - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - - - - - &Help - - - - - Go - - - - - &View - - - - - &Edit - - - - - Toolbar - - - - - PreferencesDialog - - - Preferences - - - - - Icon theme: - - - - - Normal background color: - - - - - Fullscreen background color: - - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - - - - - Take a screenshot - - - - - Region - - - - - Whole screen - - - - - Current window only - - - - - Capture an area of the screen - - - - - Include mouse cursor - - - - - seconds - - - - - Delay: - - - - - Include window title and frame - - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_it.desktop b/src/translations/lximage-qt_it.desktop deleted file mode 100644 index 9cf4682..0000000 --- a/src/translations/lximage-qt_it.desktop +++ /dev/null @@ -1,3 +0,0 @@ -#Translations -Name[it]=Visualizzatore immagini -Comment[it]=Il visualizzatore immagini di LXQt diff --git a/src/translations/lximage-qt_it.ts b/src/translations/lximage-qt_it.ts deleted file mode 100644 index e83554c..0000000 --- a/src/translations/lximage-qt_it.ts +++ /dev/null @@ -1,638 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Cattura una schermata - - - - [FILE1, FILE2,...] - [FILE1, FILE2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - Errore sconosciuto - - - - LxImage::ImgBBUpload - - - unknown error response - Errore sconosciuto - - - - LxImage::ImgurUpload - - - unknown error response - Errore sconosciuto - - - - LxImage::MainWindow - - - About - Informazioni - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - un semplice e veloce visualizzatore di immagini - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Autori: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Apri file - - - - - Image files (%1) - File immagini (%1) - - - - Open directory - Apri cartella - - - - Save File - Salva file - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (caricando...) - Visualizzatore immagini - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (caricamento non riuscito...) - Visualizzatore immagini - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visualizzatore immagini - - - - [*]Image Viewer - [*]Visualizzatore immagini - - - - Thumbnails - Miniature - - - - EXIF Data - Dati EXIF - - - - LxImage::MruMenu - - - &Clear - &Pulisci - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Avvio - - - - Stop - Ferma - - - - Close - Chiudi - - - - Error - Errore - - - - MainWindow - - - Image Viewer - Visualizzatore immagini - - - - &About - Inform&azioni - - - - &Open File - &Apri file - - - - Ctrl+O - Ctrl+O - - - - &Save - &Salva - - - - Ctrl+S - Ctrl+S - - - - Save &As - Salva con &nome - - - - Ctrl+A - Ctrl+A - - - - &Close - &Chiudi - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - &Ingrandisci - - - - Zoom &Out - &Rimpicciolisci - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Copia negli appunti - - - - - Next File - File successivo - - - - - Previous File - File precedente - - - - PgDown - Pagina giù - - - - &Recently Opened Files - File &recenti - - - - toolBar_2 - toolBar_2 - - - - &Reload File - &Ricarica file - - - - Ctrl+R - Ctrl+R - - - - Ctrl+= - Ctrl+= - - - - PgUp - Pagina su - - - - Original Size - Dimensioni originali - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - &Adatta - - - - &Rotate Clockwise - &Ruota in senso orario - - - - R - R - - - - Rotate &Counterclockwise - Ruota in &senso antiorario - - - - L - L - - - - P&references - P&referenze - - - - &Print - Stam&pa - - - - Ctrl+P - Ctrl+P - - - - First File - Primo file - - - - Home - Home - - - - Last File - Ultimo file - - - - End - Fine - - - - &New Window - &Nuova finestra - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Rispecchia &orizzontalmente - - - - H - H - - - - Capture Screenshot - Cattura schermata - - - - F&ull Screen - &Schermo intero - - - - F11 - F11 - - - - Flip &Vertically - Rispecchia &verticalmente - - - - V - V - - - - &Paste from Clipboard - &Incolla dagli appunti - - - - &Slide Show - &Presentazione - - - - &Delete - &Elimina - - - - Del - Canc - - - - Show Thumbnails - Mostra miniature - - - - T - T - - - - File Properties - Übersetzung von 'file' weggelassen, da redundant. - Proprietà del file - - - - Open &Directory - Apri &cartella - - - - Ctrl+D - Ctrl+D - - - - Upload - Carica - - - - Upload the image - Carica l'immagine - - - - Show EXIF Data - Mostra data EXIF - - - - No Tool - Nessuno strumento - - - - Deselect all drawing tools - Deseleziona tutti gli strumenti - - - - Draw Arrow - Disegna freccia - - - - Draw an arrow - Disegna una freccia - - - - Draw Rectangle - Disegna un rettangolo - - - - Draw a hollow rectangle - Disegna un rettangolo vuoto - - - - Draw Circle - Disegna un cerchio - - - - Draw a hollow circle - Disegna un cerchio vuoto - - - - Draw Number - Disegna un numero - - - - Draw incrementing numbers - Disegna numeri crescenti - - - - &File - &File - - - - &Help - &Aiuto - - - - Go - Vai - - - - &View - &Visualizza - - - - &Edit - &Modifica - - - - Toolbar - Barra degli strumenti - - - - PreferencesDialog - - - Preferences - Preferenze - - - - Icon theme: - Tema delle icone: - - - - Normal background color: - Colore sfondo: - - - - Fullscreen background color: - Colore sfondo schermo intero: - - - - Slide show interval (seconds): - Ritardo presentazione (secondi): - - - - General - Generali - - - - ScreenshotDialog - - - Screenshot - Schermata - - - - Take a screenshot - Cattura schermata - - - - Region - Tipo - - - - Whole screen - Schermo intero - - - - Current window only - Finestra attuale - - - - Capture an area of the screen - Area selezionata - - - - Include mouse cursor - Includi cursore - - - - seconds - secondi - - - - Delay: - Ritardo: - - - - Include window title and frame - Includi cornice finestra - - - - UploadDialog - - - Upload - Carica - - - - Copy - Copia - - - diff --git a/src/translations/lximage-qt_ja.ts b/src/translations/lximage-qt_ja.ts deleted file mode 100644 index aeb1016..0000000 --- a/src/translations/lximage-qt_ja.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - スクリーンショットを撮る - - - - [FILE1, FILE2,...] - [ファイル1, ファイル2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - 未知のエラー - - - - LxImage::ImgBBUpload - - - unknown error response - 未知のエラー - - - - LxImage::ImgurUpload - - - unknown error response - 未知のエラー - - - - LxImage::MainWindow - - - About - このアプリケーションについて - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - ファイルを開く - - - - - Image files (%1) - 画像ファイル (%1) - - - - Open directory - ディレクトリを開く - - - - Save File - ファイルの保存 - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (ロード中...) - イメージビューア - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (ロードに失敗) - イメージビューア - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - イメージビューア - - - - [*]Image Viewer - [*]イメージビューア - - - - Thumbnails - サムネイル - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - - - - - ImageShack - ImageShack - - - - Start - 開始 - - - - Stop - 中止 - - - - Close - 閉じる - - - - Error - エラー - - - - MainWindow - - - Image Viewer - 画像ビューワ - - - - &About - このアプリケーションについて(&A) - - - - &Open File - ファイルを開く(&O) - - - - Ctrl+O - Ctrl+O - - - - &Save - 保存(&S) - - - - Ctrl+S - Ctrl+S - - - - Save &As - 名前を付けて保存(&A) - - - - Ctrl+A - Ctrl+A - - - - &Close - 閉じる(&C) - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - 拡大(&I) - - - - Zoom &Out - 縮小(&O) - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - クリップボードへコピー(&C) - - - - - Next File - 次のファイル - - - - - Previous File - 前のファイル - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - 最近開いたファイル(&R) - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - PgDown - - - - - PgUp - - - - - Original Size - 原寸大 - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - フィット(&F) - - - - &Rotate Clockwise - 時計方向に回転(&R) - - - - R - - - - - Rotate &Counterclockwise - 反時計方向に回転(&C) - - - - L - - - - - P&references - 設定(&R) - - - - &Print - 印刷(&P) - - - - Ctrl+P - Ctrl+P - - - - First File - 最初のファイル - - - - Home - Home - - - - Last File - 最後のファイル - - - - End - End - - - - &New Window - 新規ウィンドウ(&N) - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - 水平方向に反転(&H) - - - - H - - - - - Capture Screenshot - スクリーンショットを撮る - - - - F&ull Screen - 全画面(&U) - - - - F11 - F11 - - - - Flip &Vertically - 垂直方向に反転(&V) - - - - V - - - - - &Paste from Clipboard - クリップボードからペースト(&P) - - - - &Slide Show - スライドショー(&S) - - - - &Delete - 削除(&D) - - - - Del - Del - - - - Show Thumbnails - サムネイルを表示 - - - - T - - - - - File Properties - ファイルのプロパティ - - - - Open &Directory - ディレクトリを開く(&D) - - - - Ctrl+D - Ctrl+O - - - - Upload - アップロード - - - - Upload the image - 画像をアップロード - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - ファイル(&F) - - - - &Help - ヘルプ(&H) - - - - Go - 移動 - - - - &View - 表示(&V) - - - - &Edit - 編集(&E) - - - - Toolbar - ツールバー - - - - PreferencesDialog - - - Preferences - 設定 - - - - Icon theme: - アイコンテーマ: - - - - Normal background color: - 通常の背景色: - - - - Fullscreen background color: - フルスクリーン時の背景色: - - - - Slide show interval (seconds): - スライドショーの間隔(秒): - - - - General - - - - - ScreenshotDialog - - - Screenshot - スクリーンショット - - - - Take a screenshot - スクリーンショットを撮る - - - - Region - 領域 - - - - Whole screen - 画面全体 - - - - Current window only - 現在のウィンドウのみ - - - - Capture an area of the screen - スクリーンの範囲をキャプチャーする - - - - Include mouse cursor - マウスカーソルを含む - - - - seconds - - - - - Delay: - 遅延: - - - - Include window title and frame - ウィンドウのタイトルと枠を含む - - - - UploadDialog - - - Upload - アップロード - - - - Copy - - - - diff --git a/src/translations/lximage-qt_lt.desktop b/src/translations/lximage-qt_lt.desktop deleted file mode 100644 index 0318472..0000000 --- a/src/translations/lximage-qt_lt.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[lt]=LXImage -GenericName[lt]=Paveikslų žiūryklė -Comment[lt]=LXQt paveikslų žiūryklė diff --git a/src/translations/lximage-qt_lt.ts b/src/translations/lximage-qt_lt.ts deleted file mode 100644 index 1603957..0000000 --- a/src/translations/lximage-qt_lt.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Padaryti ekrano kopiją - - - - [FILE1, FILE2,...] - [FAILAS1, FAILAS2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - nežinomas klaidos atsakymas - - - - LxImage::ImgBBUpload - - - unknown error response - nežinomas klaidos atsakymas - - - - LxImage::ImgurUpload - - - unknown error response - nežinomas klaidos atsakymas - - - - LxImage::MainWindow - - - About - Apie - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - paprasta ir greita paveikslų žiūryklė - -Autorių teisės (C) 2013 -LXQt projektas: https://lxqt.org/ - -Autoriai: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Atverti failą - - - - - Image files (%1) - Paveikslų failai (%1) - - - - Open directory - Atverti katalogą - - - - Save File - Įrašyti failą - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Įkeliama...) - Paveikslų žiūryklė - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Nepavyko įkelti) - Paveikslų žiūryklė - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Paveikslų žiūryklė - - - - [*]Image Viewer - [*]Paveikslų žiūryklė - - - - Thumbnails - Miniatiūros - - - - EXIF Data - EXIF duomenys - - - - LxImage::MruMenu - - - &Clear - Iš&valyti - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Pradėti - - - - Stop - Stabdyti - - - - Close - Užverti - - - - Error - Klaida - - - - MainWindow - - - Image Viewer - Paveikslų žiūryklė - - - - &Recently Opened Files - &Paskiausiai atverti failai - - - - toolBar_2 - įrankiųJuosta_2 - - - - &About - &Apie - - - - &Open File - A&tverti failą - - - - Ctrl+O - Ctrl(Vald)+O - - - - &Reload File - Į&kelti failą iš naujo - - - - Ctrl+R - Ctrl(Vald)+R - - - - &Save - Į&rašyti - - - - Ctrl+S - Ctrl(Vald)+S - - - - Save &As - Įrašyti k&aip - - - - Ctrl+A - Ctrl(Vald)+A - - - - &Close - &Užverti - - - - Ctrl+W - Ctrl(Vald)+W - - - - Zoom &In - D&idinti - - - - Ctrl+= - Ctrl(Vald)+= - - - - Zoom &Out - &Mažinti - - - - Ctrl+- - Ctrl(Vald)+- - - - - &Copy to Clipboard - &Kopijuoti į iškarpinę - - - - - Next File - Kitas failas - - - - PgDown - PgDown(Tolesnis psl) - - - - - Previous File - Ankstesnis failas - - - - PgUp - PgUp(Ankstesnis psl) - - - - Original Size - Pradinis dydis - - - - Ctrl+0 - Ctrl(Vald)+0 - - - - &Fit - Pri&derinti - - - - &Rotate Clockwise - Pasukti &pagal laikrodžio rodyklę - - - - R - D - - - - Rotate &Counterclockwise - Pasukti p&rieš laikrodžio rodyklę - - - - L - K - - - - P&references - N&uostatos - - - - &Print - S&pausdinti - - - - Ctrl+P - Ctrl(Vald)+P - - - - First File - Pirmas failas - - - - Home - Home(Prad) - - - - Last File - Paskutinis failas - - - - End - End(Pab) - - - - &New Window - &Naujas langas - - - - Ctrl+N - Ctrl(Vald)+N - - - - Flip &Horizontally - Apversti &horizontaliai - - - - H - H - - - - Capture Screenshot - Padaryti ekrano kopiją - - - - F&ull Screen - V&isas ekranas - - - - F11 - F11 - - - - Flip &Vertically - Apversti &vertikaliai - - - - V - V - - - - &Paste from Clipboard - Į&dėti iš iškarpinės - - - - &Slide Show - &Skaidrių rodymas - - - - &Delete - Iš&trinti - - - - Del - Del(Šal) - - - - Show Thumbnails - Rodyti miniatiūras - - - - T - M - - - - File Properties - Failo savybės - - - - Open &Directory - Atverti &katalogą - - - - Ctrl+D - Ctrl(Vald)+D - - - - Upload - Įkelti - - - - Upload the image - Įkelti paveikslą - - - - Show EXIF Data - Rodyti EXIF duomenis - - - - No Tool - Jokio įrankio - - - - Deselect all drawing tools - Panaikinti bet kokių brėžimo įrankių pasirinkimą - - - - Draw Arrow - Brėžti rodyklę - - - - Draw an arrow - Nubrėžti rodyklę - - - - Draw Rectangle - Brėžti stačiakampį - - - - Draw a hollow rectangle - Nubrėžti tuščiavidurį stačiakampį - - - - Draw Circle - Brėžti apskritimą - - - - Draw a hollow circle - Nubrėžti tuščiavidurį apskritimą - - - - Draw Number - Brėžti skaitmenį - - - - Draw incrementing numbers - Nubrėžti didėjančius skaitmenis - - - - &File - &Failas - - - - &Help - Ži&nynas - - - - Go - Pereiti - - - - &View - &Rodinys - - - - &Edit - &Taisa - - - - Toolbar - Įrankių juosta - - - - PreferencesDialog - - - Preferences - Nuostatos - - - - Icon theme: - Piktogramų tema: - - - - Normal background color: - Įprasta fono spalva: - - - - Fullscreen background color: - Fono spalva viso ekrano veiksenoje: - - - - Slide show interval (seconds): - Skaidrių rodymo intervalas (sekundėmis): - - - - General - Bendra - - - - ScreenshotDialog - - - Screenshot - Ekrano kopija - - - - Take a screenshot - Padaryti ekrano kopija - - - - Region - Sritis - - - - Whole screen - Visas ekranas - - - - Current window only - Tik esamas langas - - - - Capture an area of the screen - Fotografuoti ekrano sritį - - - - Include mouse cursor - Įtraukti pelės žymeklį - - - - seconds - sekundžių - - - - Delay: - Delsa: - - - - Include window title and frame - Įtraukti lango pavadinimą ir rėmelį - - - - UploadDialog - - - Upload - Įkelti - - - - Copy - Kopijuoti - - - diff --git a/src/translations/lximage-qt_nb_NO.ts b/src/translations/lximage-qt_nb_NO.ts deleted file mode 100644 index 5d33dff..0000000 --- a/src/translations/lximage-qt_nb_NO.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Ta et skjermbilde - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - Ukjent feilrespons - - - - LxImage::ImgBBUpload - - - unknown error response - Ukjent feilrespons - - - - LxImage::ImgurUpload - - - unknown error response - Ukjent feilrespons - - - - LxImage::MainWindow - - - About - Om - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - en enkel og rask bildeviser - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Opphavsmenn: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Åpne fil - - - - - Image files (%1) - Bildefiler (%1) - - - - Open directory - Åpne mappe - - - - Save File - Lagre fil - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Laster inn...) - Bildeviser - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Klarte ikke å laste inn) - Bildeviser - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Bildeviser - - - - [*]Image Viewer - [*]Bildeviser - - - - Thumbnails - Forhåndsvisninger - - - - EXIF Data - EXIF-data - - - - LxImage::MruMenu - - - &Clear - &Fjern - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - ImgBB - - - - ImageShack - - - - - Start - - - - - Stop - Stopp - - - - Close - Lukk - - - - Error - Feil - - - - MainWindow - - - Image Viewer - Bildeviser - - - - &Recently Opened Files - &Nylig åpnede filer - - - - toolBar_2 - Verktøylinje_2 - - - - &About - &Om - - - - &Open File - &Åpne fil - - - - Ctrl+O - - - - - &Reload File - &Last inn fil på nytt - - - - Ctrl+R - Ctrl+R - - - - &Save - &Lagre - - - - Ctrl+S - - - - - Save &As - Lagre &som - - - - Ctrl+A - - - - - &Close - &Lukk - - - - Ctrl+W - - - - - Zoom &In - Zoom &Inn - - - - Ctrl+= - - - - - Zoom &Out - Zoom &Ut - - - - Ctrl+- - - - - - &Copy to Clipboard - &Kopier til utklippstavlen - - - - - Next File - Neste fil - - - - PgDown - - - - - - Previous File - Forrige fil - - - - PgUp - - - - - Original Size - Original størrelse - - - - Ctrl+0 - - - - - &Fit - &Tilpass - - - - &Rotate Clockwise - &Roter med klokken - - - - R - - - - - Rotate &Counterclockwise - Roter &mot klokken - - - - L - - - - - P&references - I&nnstillinger - - - - &Print - &Skriv ut - - - - Ctrl+P - - - - - First File - Første fil - - - - Home - Hjem - - - - Last File - Siste fil - - - - End - Slutt - - - - &New Window - &Nytt vindu - - - - Ctrl+N - - - - - Flip &Horizontally - Snu &horisontalt - - - - H - - - - - Capture Screenshot - Ta skjermbilde - - - - F&ull Screen - F&ullskjerm - - - - F11 - - - - - Flip &Vertically - Snu &vertikalt - - - - V - - - - - &Paste from Clipboard - &Lim inn fra utklippsbok - - - - &Slide Show - &Lysbildeframvisning - - - - &Delete - &Slett - - - - Del - Slett - - - - Show Thumbnails - Vis forhåndsvisninger - - - - T - - - - - File Properties - Filegenskaper - - - - Open &Directory - Åpne &mappe - - - - Ctrl+D - - - - - Upload - Last opp - - - - Upload the image - Last opp bildet - - - - Show EXIF Data - Vis EXIF-Data - - - - No Tool - Intet verktøy - - - - Deselect all drawing tools - Velg fra alle tegneverktøy - - - - Draw Arrow - Tegn pil - - - - Draw an arrow - Tegn en pil - - - - Draw Rectangle - Tegn rektangel - - - - Draw a hollow rectangle - Tegn et rektangel uten fyll - - - - Draw Circle - Tegn sirkel - - - - Draw a hollow circle - Tegn sirkel uten fyll - - - - Draw Number - Tegn tall - - - - Draw incrementing numbers - Tegn tall i rekkefølge - - - - &File - &Fil - - - - &Help - &Hjelp - - - - Go - - - - - &View - &Visning - - - - &Edit - R&ediger - - - - Toolbar - Verktøylinje - - - - PreferencesDialog - - - Preferences - Innstillinger - - - - Icon theme: - Symboltema: - - - - Normal background color: - Normal bakgrunnsfarge: - - - - Fullscreen background color: - Fullskjerms bakgrunnsfarge: - - - - Slide show interval (seconds): - Lysbildeframvisningstid (sekunder): - - - - General - Generelt - - - - ScreenshotDialog - - - Screenshot - Skjermbilde - - - - Take a screenshot - Ta et skjermbilde - - - - Region - Område - - - - Whole screen - Hele skjermen - - - - Current window only - Kun nåværende vindu - - - - Capture an area of the screen - Ta bilde av et område på skjermen - - - - Include mouse cursor - Inkluder muspekeren - - - - seconds - sekunder - - - - Delay: - Venting: - - - - Include window title and frame - Inkluder tittelen på vinduet og rammen - - - - UploadDialog - - - Upload - Last opp - - - - Copy - Kopier - - - diff --git a/src/translations/lximage-qt_nl.ts b/src/translations/lximage-qt_nl.ts deleted file mode 100644 index 32831f0..0000000 --- a/src/translations/lximage-qt_nl.ts +++ /dev/null @@ -1,640 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Schermafdruk maken - - - - [FILE1, FILE2,...] - [Bestand1, Bestand2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - 'onbekende fout'-antwoord - - - - LxImage::ImgBBUpload - - - unknown error response - 'onbekende fout'-antwoord - - - - LxImage::ImgurUpload - - - unknown error response - 'onbekende fout'-antwoord - - - - LxImage::MainWindow - - - About - Over - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - een eenvoudige en snelle afbeeldingenkijker - -Auteursrecht (C) 2013 -LXQt-project: https://lxqt.org/ - -Auteurs: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Bestand openen - - - - - Image files (%1) - Afbeeldingbestanden (%1) - - - - Open directory - Map openen - - - - Save File - Bestand opslaan - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Laden...) - Afbeeldingkijker - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Laden ist fehlgeschlagen) - Bildbetrachter - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Afbeeldingkijker - - - - [*]Image Viewer - [*]Afbeeldingkijker - - - - Thumbnails - Miniaturen - - - - EXIF Data - EXIF-gegevens - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - - - - - ImageShack - ImageShack - - - - Start - Beginnen - - - - Stop - Stoppen - - - - Close - Sluiten - - - - Error - Fout - - - - MainWindow - - - Image Viewer - Afbeeldingkijker - - - - &About - &Over - - - - &Open File - This should be "&Open" (without "File") imho. We are in the File menu. - Bestand &openen - - - - Ctrl+O - Shortcuts are translated automatically. No need to manually translate it to "Strg+O". - Ctrl+O - - - - &Save - &Opslaan - - - - Ctrl+S - Ctrl+S - - - - Save &As - Opslaan &als - - - - Ctrl+A - Ctrl+A - - - - &Close - S&luiten - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Ver&groten - - - - Zoom &Out - Ver&kleinen - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - Kopieer naar &klembord - - - - - Next File - Volgende bestand - - - - - Previous File - Vorige bestand - - - - PgDown - Omlaag - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - Ctrl+= - Ctrl+= - - - - PgUp - Omhoog - - - - Original Size - Oorspronkelijke grootte - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - Passen&d - - - - &Rotate Clockwise - Met de klok mee &draaien - - - - R - R - - - - Rotate &Counterclockwise - &Tegen de klok in draaien - - - - L - L - - - - P&references - &Voorkeuren - - - - &Print - &Afdrukken - - - - Ctrl+P - Ctrl+P - - - - First File - Eerste bestand - - - - Home - Thuis - - - - Last File - Laatste bestand - - - - End - Einde - - - - &New Window - &Nieuw venster - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - &Horizontaal spiegelen - - - - H - H - - - - Capture Screenshot - Schermafdruk maken - - - - F&ull Screen - &Gesamter Bildschirm - - - - F11 - F11 - - - - Flip &Vertically - &Verticaal spiegelen - - - - V - V - - - - &Paste from Clipboard - &Plakken vanuit klembord - - - - &Slide Show - &Diapresentatie - - - - &Delete - &Wissen - - - - Del - Wis - - - - Show Thumbnails - Miniaturen tonen - - - - T - M - - - - File Properties - Translation of 'file' skipped, it is redundant (this is the file menu). - Eigenschappen - - - - Open &Directory - Map openen - - - - Ctrl+D - Ctrl+D - - - - Upload - Opsturen - - - - Upload the image - Afbeelding opsturen - - - - Show EXIF Data - Toon EXIF-gegevens - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - &Bestand - - - - &Help - &Hulp - - - - Go - Ga naar - - - - &View - &Tonen - - - - &Edit - &Bewerken - - - - Toolbar - Werkbalk - - - - PreferencesDialog - - - Preferences - Voorkeuren - - - - Icon theme: - Pictogramthema: - - - - Normal background color: - Normale achtergrondkleur: - - - - Fullscreen background color: - Schermvullende achtergrondkleur: - - - - Slide show interval (seconds): - Tussenpoze voor diapresentatie (seconden): - - - - General - Algemeen - - - - ScreenshotDialog - - - Screenshot - Schermafdruk - - - - Take a screenshot - Schermafdruk maken - - - - Region - Bereik - - - - Whole screen - Hele scherm - - - - Current window only - Alleen huidige venster - - - - Capture an area of the screen - Fotografeer een deel van het scherm - - - - Include mouse cursor - Inclusief muisaanwijzer - - - - seconds - Seconden - - - - Delay: - Vertraging: - - - - Include window title and frame - Inclusief venstertitel en rand - - - - UploadDialog - - - Upload - Opsturen - - - - Copy - - - - diff --git a/src/translations/lximage-qt_pa.ts b/src/translations/lximage-qt_pa.ts deleted file mode 100644 index 63a1b51..0000000 --- a/src/translations/lximage-qt_pa.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - - - - - - Image files (%1) - - - - - Open directory - - - - - Save File - - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Thumbnails - - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - - - - - &About - - - - - &Open File - - - - - Ctrl+O - - - - - &Save - - - - - Ctrl+S - - - - - Save &As - - - - - Ctrl+A - - - - - &Close - - - - - Ctrl+W - - - - - Zoom &In - - - - - Zoom &Out - - - - - Ctrl+- - - - - - &Copy to Clipboard - - - - - - Next File - - - - - - Previous File - - - - - PgDown - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - Ctrl+= - - - - - PgUp - - - - - Original Size - - - - - Ctrl+0 - - - - - &Fit - - - - - &Rotate Clockwise - - - - - R - - - - - Rotate &Counterclockwise - - - - - L - - - - - P&references - - - - - &Print - - - - - Ctrl+P - - - - - First File - - - - - Home - - - - - Last File - - - - - End - - - - - &New Window - - - - - Ctrl+N - - - - - Flip &Horizontally - - - - - H - - - - - Capture Screenshot - - - - - F&ull Screen - - - - - F11 - - - - - Flip &Vertically - - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - - - - - &Delete - - - - - Del - - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - - - - - &Help - - - - - Go - - - - - &View - - - - - &Edit - - - - - Toolbar - - - - - PreferencesDialog - - - Preferences - - - - - Icon theme: - - - - - Normal background color: - - - - - Fullscreen background color: - - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - - - - - Take a screenshot - - - - - Region - - - - - Whole screen - - - - - Current window only - - - - - Capture an area of the screen - - - - - Include mouse cursor - - - - - seconds - - - - - Delay: - - - - - Include window title and frame - - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_pl.desktop b/src/translations/lximage-qt_pl.desktop deleted file mode 100644 index 50bbe00..0000000 --- a/src/translations/lximage-qt_pl.desktop +++ /dev/null @@ -1,5 +0,0 @@ -[Desktop Entry] -GenericName[pl]=Przeglądarka obrazów -Comment[pl]=Przeglądarka obrazów LXQt - -#TRANSLATIONS_DIR=translations diff --git a/src/translations/lximage-qt_pl.ts b/src/translations/lximage-qt_pl.ts deleted file mode 100644 index e1a423f..0000000 --- a/src/translations/lximage-qt_pl.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Wykonaj zrzut ekranu - - - - [FILE1, FILE2,...] - [PLIK1, PLIK2,…] - - - - LxImage::ImageShackUpload - - - unknown error response - nieznana odpowiedź błędu - - - - LxImage::ImgBBUpload - - - unknown error response - nieznana odpowiedź błędu - - - - LxImage::ImgurUpload - - - unknown error response - nieznana odpowiedź błędu - - - - LxImage::MainWindow - - - About - O programie - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - prosta i szybka przeglądarka obrazów - -Prawa autorskie (C) 2013 -Projekt LXQt: https://lxqt.org/ - -Autorzy: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Otwórz plik - - - - - Image files (%1) - Pliki obrazów (%1) - - - - Open directory - Otwórz katalog - - - - Save File - Zapisz plik - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Ładowanie…) - Przeglądarka obrazów - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Ładowanie nie powiodło się) - Przeglądarka obrazów - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Przeglądarka obrazów - - - - [*]Image Viewer - [*]Przeglądarka obrazów - - - - Thumbnails - Miniaturki - - - - EXIF Data - Dane EXIF - - - - LxImage::MruMenu - - - &Clear - Wy&czyść - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Rozpocznij - - - - Stop - Zatrzymaj - - - - Close - Zamknij - - - - Error - Błąd - - - - MainWindow - - - Image Viewer - Przeglądarka obrazów - - - - &About - &O programie - - - - &Open File - O&twórz plik - - - - Ctrl+O - Ctrl+O - - - - &Save - &Zapisz - - - - Ctrl+S - Ctrl+S - - - - Save &As - Z&apisz jako - - - - Ctrl+A - Ctrl+A - - - - &Close - Zam&knij - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Po&większ - - - - Zoom &Out - Po&mniejsz - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Kopiuj do schowka - - - - - Next File - Następny plik - - - - - Previous File - Poprzedni plik - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - Ostatnio otwie&rane pliki - - - - toolBar_2 - toolBar_2 - - - - &Reload File - P&rzeładuj plik - - - - Ctrl+R - Ctrl+R - - - - PgDown - Page Down - - - - PgUp - Page Up - - - - Original Size - Rozmiar oryginalny - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - Dopa&sowanie - - - - &Rotate Clockwise - Ob&róć zgodnie z ruchem wskazówek zegara - - - - R - R - - - - Rotate &Counterclockwise - Obróć prze&ciwnie do ruchu wskazówek zegara - - - - L - L - - - - P&references - P&referencje - - - - &Print - &Drukuj - - - - Ctrl+P - Ctrl+P - - - - First File - Pierwszy plik - - - - Home - Początek - - - - Last File - Ostatni plik - - - - End - Koniec - - - - &New Window - &Nowe okno - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Od&bij w poziomie - - - - H - H - - - - Capture Screenshot - Przechwyć zrzut ekranu - - - - F&ull Screen - &Pełny ekran - - - - F11 - F11 - - - - Flip &Vertically - Odbi&j w pionie - - - - V - V - - - - &Paste from Clipboard - &Wklej ze schowka - - - - &Slide Show - Pokaz &slajdów - - - - &Delete - & Usuń - - - - Del - Del - - - - Show Thumbnails - Pokaż miniaturki - - - - T - T - - - - File Properties - Właściwości pliku - - - - Open &Directory - Otwórz &katalog - - - - Ctrl+D - Ctrl+D - - - - Upload - Wyślij - - - - Upload the image - Wyślij obraz - - - - Show EXIF Data - Pokaż dane EXIF - - - - No Tool - Brak narzędzia - - - - Deselect all drawing tools - Odznacz wszystkie narzędzia rysowania - - - - Draw Arrow - Narysuj strzałkę - - - - Draw an arrow - Narysuj strzałkę - - - - Draw Rectangle - Narysuj prostokąt - - - - Draw a hollow rectangle - Narysuj obwód prostokąta - - - - Draw Circle - Narysuj koło - - - - Draw a hollow circle - Narysuj okrąg - - - - Draw Number - Narysuj liczbę - - - - Draw incrementing numbers - Narysuj rosnące liczby - - - - &File - &Plik - - - - &Help - &Pomoc - - - - Go - Przejdź - - - - &View - &Widok - - - - &Edit - &Edycja - - - - Toolbar - Pasek narzędziowy - - - - PreferencesDialog - - - Preferences - Ustawienia - - - - Icon theme: - Zestaw ikon: - - - - Normal background color: - Kolor tła: - - - - Fullscreen background color: - Kolor tła dla pełnego ekranu: - - - - Slide show interval (seconds): - Interwał pokazu slajdów (sekundy): - - - - General - Ogólne - - - - ScreenshotDialog - - - Screenshot - Zrzut ekranu - - - - Take a screenshot - Wykonaj zrzut ekranu - - - - Region - Obszar - - - - Whole screen - Cały ekran - - - - Current window only - Tylko bieżące okno - - - - Capture an area of the screen - Przechwyć fragment ekranu - - - - Include mouse cursor - Dołącz kursor myszy - - - - seconds - sekund - - - - Delay: - Opóźnienie: - - - - Include window title and frame - Dołącz tytuł okna i obramowanie - - - - UploadDialog - - - Upload - Wyślij - - - - Copy - Kopiuj - - - diff --git a/src/translations/lximage-qt_pt.desktop b/src/translations/lximage-qt_pt.desktop deleted file mode 100644 index c1fb48b..0000000 --- a/src/translations/lximage-qt_pt.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[pt]=LXImage-Qt -GenericName[pt]=Visualizador de imagens -Comment[pt]=O visualizador de imagens do LXQt diff --git a/src/translations/lximage-qt_pt.ts b/src/translations/lximage-qt_pt.ts deleted file mode 100644 index 114587c..0000000 --- a/src/translations/lximage-qt_pt.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Obter captura de ecrã - - - - [FILE1, FILE2,...] - [Ficheiro1, Ficheiro2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - resposta de erro desconhecida - - - - LxImage::ImgBBUpload - - - unknown error response - resposta de erro desconhecida - - - - LxImage::ImgurUpload - - - unknown error response - resposta de erro desconhecida - - - - LxImage::MainWindow - - - About - Acerca - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - visualizador de imagem básico e rápido - -Copyright (C) 2013-2019 -Projeto LXQt: https://lxqt.org/ - -Autores: -Hang Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Abrir ficheiro - - - - - Image files (%1) - Ficheiros de imagem (%1) - - - - Open directory - Abrir diretório - - - - Save File - Guardar ficheiro - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (A carregar...) - Visualizador de imagens - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Falha ao carregar...) - Visualizador de imagens - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visualizador de imagens - - - - [*]Image Viewer - [*]Visualizador de imagens - - - - Thumbnails - Miniaturas - - - - EXIF Data - Dados EXIF - - - - LxImage::MruMenu - - - &Clear - &Limpar - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Iniciar - - - - Stop - Parar - - - - Close - Fechar - - - - Error - Erro - - - - MainWindow - - - Image Viewer - Visualizador de imagens - - - - &About - &Acerca - - - - &Open File - Abrir ficheir&o - - - - Ctrl+O - Ctrl+O - - - - &Save - &Guardar - - - - Ctrl+S - Ctrl+S - - - - Save &As - Gu&ardar como - - - - Ctrl+A - Ctrl+A - - - - &Close - Fe&char - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Ampl&iar - - - - Zoom &Out - Redu&zir - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Copiar para área de transferência - - - - - Next File - Ficheiro seguinte - - - - - Previous File - Ficheiro anterior - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - Ficheiros &recentes - - - - toolBar_2 - Barra de ferramentas 2 - - - - &Reload File - &Recarregar ficheiro - - - - Ctrl+R - Ctrl+R - - - - PgDown - PageDown - - - - PgUp - PageUp - - - - Original Size - Tamanho original - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - Aj&ustar - - - - &Rotate Clockwise - &Rodar à direita - - - - R - R - - - - Rotate &Counterclockwise - Rodar à &esquerda - - - - L - L - - - - P&references - P&referências - - - - &Print - Im&primir - - - - Ctrl+P - Ctrl+P - - - - First File - Primeiro ficheiro - - - - Home - Home - - - - Last File - Último ficheiro - - - - End - End - - - - &New Window - &Nova janela - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Inverter na &horizontal - - - - H - H - - - - Capture Screenshot - Captura de ecrã - - - - F&ull Screen - E&crã completo - - - - F11 - F11 - - - - Flip &Vertically - Inverter na &vertical - - - - V - V - - - - &Paste from Clipboard - Colar da área de trans&ferência - - - - &Slide Show - Apre&sentação - - - - &Delete - &Excluir - - - - Del - Del - - - - Show Thumbnails - Mostrar miniaturas - - - - T - T - - - - File Properties - Propriedades do ficheiro - - - - Open &Directory - Abrir &diretório - - - - Ctrl+D - Ctrl+D - - - - Upload - Enviar - - - - Upload the image - Enviar imagem - - - - Show EXIF Data - Mostrar dados EXIF - - - - No Tool - Sem ferramenta - - - - Deselect all drawing tools - Desmarcar todas as ferramentas de desenho - - - - Draw Arrow - Seta - - - - Draw an arrow - Desenhar uma seta - - - - Draw Rectangle - Retângulo - - - - Draw a hollow rectangle - Desenhar um retângulo - - - - Draw Circle - Círculo - - - - Draw a hollow circle - Desenhar um círculo - - - - Draw Number - Número - - - - Draw incrementing numbers - Desenhar números por incremento - - - - &File - &Ficheiro - - - - &Help - Aj&uda - - - - Go - Ir - - - - &View - &Ver - - - - &Edit - &Editar - - - - Toolbar - Barra de ferramentas - - - - PreferencesDialog - - - Preferences - Preferências - - - - Icon theme: - Tema de ícones: - - - - Normal background color: - Cor de fundo normal: - - - - Fullscreen background color: - Cor de fundo em ecrã completo: - - - - Slide show interval (seconds): - Intervalo entre imagens (segundos): - - - - General - Geral - - - - ScreenshotDialog - - - Screenshot - Captura de ecrã - - - - Take a screenshot - Obter captura de ecrã - - - - Region - Região - - - - Whole screen - Ecrã completo - - - - Current window only - Apenas janela atual - - - - Capture an area of the screen - Capturar uma área do ecrã - - - - Include mouse cursor - Incluir cursor do rato - - - - seconds - segundos - - - - Delay: - Atraso: - - - - Include window title and frame - Incluir título e moldura da janela - - - - UploadDialog - - - Upload - Enviar - - - - Copy - Copiar - - - diff --git a/src/translations/lximage-qt_pt_BR.ts b/src/translations/lximage-qt_pt_BR.ts deleted file mode 100644 index 52ddf89..0000000 --- a/src/translations/lximage-qt_pt_BR.ts +++ /dev/null @@ -1,638 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Capturar a imagem da tela - - - - [FILE1, FILE2,...] - [ARQUIVO1, ARQUIVO2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - Resposta de erro desconhecido - - - - LxImage::ImgBBUpload - - - unknown error response - Resposta de erro desconhecido - - - - LxImage::ImgurUpload - - - unknown error response - Resposta de erro desconhecido - - - - LxImage::MainWindow - - - About - Sobre - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - um visualizador de imagens simples e rápido - -Copyright (C) 2013 -Projeto LXQt: https://lxqt.org/ - -Autores: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Abrir arquivo - - - - - Image files (%1) - Arquivos de imagem (%1) - - - - Open directory - Abrir diretório - - - - Save File - Salvar arquivo - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Carregando...) - Visualizador de Imagens - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Falha no carregamento) - Visualizador de Imagens - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Visualizador de Imagens - - - - [*]Image Viewer - [*]Visualizador de Imagens - - - - Thumbnails - Miniaturas - - - - EXIF Data - Dados EXIF - - - - LxImage::MruMenu - - - &Clear - &Limpar - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - imgBB - - - - ImageShack - - - - - Start - Iniciar - - - - Stop - Parar - - - - Close - Fechar - - - - Error - Erro - - - - MainWindow - - - Image Viewer - Visualizador de Imagens - - - - &About - &Sobre - - - - &Open File - &Abrir arquivo - - - - Ctrl+O - Ctrl+O - - - - &Save - &Salvar - - - - Ctrl+S - Ctrl+S - - - - Save &As - Sa&lvar como - - - - Ctrl+A - - - - - &Close - &Fechar - - - - Ctrl+W - - - - - Zoom &In - Ampl&iar - - - - Zoom &Out - &Diminuir zoom - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Copiar para a Área de Transferência - - - - - Next File - Próximo arquivo - - - - - Previous File - Arquivo anterior - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - Arquivos &recentes - - - - toolBar_2 - toolbar_2 - - - - &Reload File - &Recarregar arquivo - - - - Ctrl+R - Ctrl+R - - - - PgDown - - - - - PgUp - - - - - Original Size - Tamanho original - - - - Ctrl+0 - - - - - &Fit - A&justar à tela - - - - &Rotate Clockwise - Girar em sentido &horário - - - - R - - - - - Rotate &Counterclockwise - Girar em sentido &anti-horário - - - - L - - - - - P&references - P&referências - - - - &Print - Im&primir - - - - Ctrl+P - - - - - First File - Primeiro arquivo - - - - Home - - - - - Last File - Último arquivo - - - - End - - - - - &New Window - &Nova janela - - - - Ctrl+N - - - - - Flip &Horizontally - Espelhar &horizontalmente - - - - H - - - - - Capture Screenshot - Capturar tela - - - - F&ull Screen - &Tela cheia - - - - F11 - - - - - Flip &Vertically - Espelhar &verticalmente - - - - V - V - - - - &Paste from Clipboard - Has a problem, no similar caracter for shortcut. - &Colar da Área de Transferência - - - - &Slide Show - Apresentação de &slides - - - - &Delete - &Excluir - - - - Del - - - - - Show Thumbnails - Exibir miniaturas - - - - T - T - - - - File Properties - Propriedades do arquivo - - - - Open &Directory - Abrir &diretório - - - - Ctrl+D - Ctrl+D - - - - Upload - Enviar - - - - Upload the image - Enviar a imagem - - - - Show EXIF Data - Exibir dados EXIF - - - - No Tool - Sem ferramentas - - - - Deselect all drawing tools - Desselecionar todas as ferramentas - - - - Draw Arrow - Desenhar Seta - - - - Draw an arrow - Desenhar uma seta - - - - Draw Rectangle - Desenhar Retângulo - - - - Draw a hollow rectangle - Desenhar um retângulo sem preenchimento - - - - Draw Circle - Desenhar Círculo - - - - Draw a hollow circle - Desenhar um círculo sem preenchimento - - - - Draw Number - Desenhar Número - - - - Draw incrementing numbers - Desenhar números que se incrementam - - - - &File - &Arquivo - - - - &Help - Aj&uda - - - - Go - Ir - - - - &View - &Exibir - - - - &Edit - E&ditar - - - - Toolbar - Barra de ferramentas - - - - PreferencesDialog - - - Preferences - Preferências - - - - Icon theme: - Tema dos ícones: - - - - Normal background color: - Cor de fundo para modo janela: - - - - Fullscreen background color: - Cor de fundo para modo de tela cheia: - - - - Slide show interval (seconds): - Intervalo da apresentação entre os slides (em segundos): - - - - General - Geral - - - - ScreenshotDialog - - - Screenshot - Captura de tela - - - - Take a screenshot - Capturar a tela - - - - Region - Região - - - - Whole screen - Toda a tela - - - - Current window only - Somente a janela ativa - - - - Capture an area of the screen - Capturar parte da tela - - - - Include mouse cursor - Incluir o cursor do mouse - - - - seconds - segundos - - - - Delay: - Atraso: - - - - Include window title and frame - Incluir título da janela e moldura - - - - UploadDialog - - - Upload - Enviar - - - - Copy - Copiar - - - diff --git a/src/translations/lximage-qt_ru.desktop b/src/translations/lximage-qt_ru.desktop deleted file mode 100644 index 23edb85..0000000 --- a/src/translations/lximage-qt_ru.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translations -Name[ru]=LXImage -GenericName[ru]=Просмотрщик изображений -Comment[ru]=Просмотрщик изображений LXQt diff --git a/src/translations/lximage-qt_ru.ts b/src/translations/lximage-qt_ru.ts deleted file mode 100644 index 8120ef5..0000000 --- a/src/translations/lximage-qt_ru.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Сделать снимок экрана - - - - [FILE1, FILE2,...] - [ФАЙЛ1, ФАЙЛ2, ...] - - - - LxImage::ImageShackUpload - - - unknown error response - неизвестная ошибка - - - - LxImage::ImgBBUpload - - - unknown error response - неизвестная ошибка - - - - LxImage::ImgurUpload - - - unknown error response - неизвестная ошибка - - - - LxImage::MainWindow - - - About - О программе - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - простой и быстрый просмотрщик изображений - -Copyright (C) 2013 -Проект LXQt: https://lxqt.org/ - -Авторы: -Хон Джене (PCMan) <pcman.tw@gmail.com> - - - - Open File - Открыть файл - - - - - Image files (%1) - Файлы изображений (%1) - - - - Open directory - Открыть каталог - - - - Save File - Сохранить файл - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Загружается...) - Просмотрщик изображений - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Ошибка загрузки) - Просмотрщик изображений - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Просмотрщик изображений - - - - [*]Image Viewer - [*]Просмотрщик изображений - - - - Thumbnails - Эскизы - - - - EXIF Data - Данные EXIF - - - - LxImage::MruMenu - - - &Clear - &Очистить - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Запустить - - - - Stop - Остановить - - - - Close - Закрыть - - - - Error - Ошибка - - - - MainWindow - - - Image Viewer - Просмотрщик изображений - - - - &About - &О программе - - - - &Open File - &Открыть файл - - - - Ctrl+O - - - - - &Save - &Сохранить - - - - Ctrl+S - - - - - Save &As - Сохранить &как - - - - Ctrl+A - - - - - &Close - &Закрыть - - - - Ctrl+W - - - - - Zoom &In - При&близить - - - - Zoom &Out - От&далить - - - - Ctrl+- - - - - - &Copy to Clipboard - Скопировать в &буфер обмена - - - - - Next File - Следующий файл - - - - - Previous File - Предыдущий файл - - - - PgDown - - - - - &Recently Opened Files - &Последние файлы - - - - toolBar_2 - Панель 2 - - - - &Reload File - Пере&загрузить файл - - - - Ctrl+R - Ctrl+R - - - - Ctrl+= - Ctrl+= - - - - PgUp - - - - - Original Size - Исходный размер - - - - Ctrl+0 - - - - - &Fit - &Заполнить - - - - &Rotate Clockwise - Пове&рнуть по часовой стрелке - - - - R - R - - - - Rotate &Counterclockwise - Повернуть &против часовой стрелки - - - - L - L - - - - P&references - &Настройки - - - - &Print - &Печать - - - - Ctrl+P - - - - - First File - Первый файл - - - - Home - - - - - Last File - Последний файл - - - - End - - - - - &New Window - &Новое окно - - - - Ctrl+N - - - - - Flip &Horizontally - Отразить &горизонтально - - - - H - H - - - - Capture Screenshot - Сделать снимок экрана - - - - F&ull Screen - Полный &экран - - - - F11 - - - - - Flip &Vertically - Отразить &вертикально - - - - V - V - - - - &Paste from Clipboard - &Вставить из буфера обмена - - - - &Slide Show - &Слайд-шоу - - - - &Delete - &Удалить - - - - Del - - - - - Show Thumbnails - Показать эскизы - - - - T - T - - - - File Properties - Свойства файла - - - - Open &Directory - Открыть &каталог - - - - Ctrl+D - - - - - Upload - Загрузить - - - - Upload the image - Загрузить изображение - - - - Show EXIF Data - Показать данные EXIF - - - - No Tool - Без инструмента - - - - Deselect all drawing tools - Отменить выбор инструмента рисования - - - - Draw Arrow - Нарисовать стрелку - - - - Draw an arrow - Нарисовать стрелку - - - - Draw Rectangle - Нарисовать прямоугольник - - - - Draw a hollow rectangle - Нарисовать прямоугольник (без заливки) - - - - Draw Circle - Нарисовать окружность - - - - Draw a hollow circle - Нарисовать окружность - - - - Draw Number - Нарисовать число - - - - Draw incrementing numbers - Нарисовать число (с увеличением счётчика) - - - - &File - &Файл - - - - &Help - &Справка - - - - Go - Перейти - - - - &View - &Вид - - - - &Edit - &Правка - - - - Toolbar - Панель инструментов - - - - PreferencesDialog - - - Preferences - Настройки - - - - Icon theme: - Тема значков: - - - - Normal background color: - Обычный цвет фона: - - - - Fullscreen background color: - Цвет фона для режима полного экрана: - - - - Slide show interval (seconds): - Интервал слайд-шоу (в секундах): - - - - General - Общие - - - - ScreenshotDialog - - - Screenshot - Снимок экрана - - - - Take a screenshot - Сделать снимок экрана - - - - Region - Область - - - - Whole screen - Весь экран - - - - Current window only - Только активное окно - - - - Capture an area of the screen - Захват области экрана - - - - Include mouse cursor - Показывать курсор мыши - - - - seconds - секунд(ы) - - - - Delay: - Задержка: - - - - Include window title and frame - Показывать заголовок и обрамление окна - - - - UploadDialog - - - Upload - Загрузить на сервер - - - - Copy - Копировать - - - diff --git a/src/translations/lximage-qt_sv.ts b/src/translations/lximage-qt_sv.ts deleted file mode 100644 index 61c84ee..0000000 --- a/src/translations/lximage-qt_sv.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - - - - - [FILE1, FILE2,...] - - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - - - - - Open File - - - - - - Image files (%1) - - - - - Save File - - - - - Thumbnails - - - - - EXIF Data - - - - - [*]%1 (Loading...) - Image Viewer - - - - - [*]%1 (Failed to Load) - Image Viewer - - - - - [*]%1 (%2x%3) - Image Viewer - - - - - [*]Image Viewer - - - - - Open directory - - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &About - - - - - &Open File - - - - - Ctrl+O - - - - - &Reload File - - - - - Ctrl+R - - - - - &Save - - - - - Ctrl+S - - - - - Save &As - - - - - Ctrl+A - - - - - &Close - - - - - Ctrl+W - - - - - Zoom &In - - - - - Zoom &Out - - - - - Ctrl+- - - - - - &Copy to Clipboard - - - - - - Next File - - - - - - Previous File - - - - - Original Size - - - - - &Fit - - - - - &Rotate Clockwise - - - - - R - - - - - Rotate &Counterclockwise - - - - - L - - - - - P&references - - - - - &Print - - - - - First File - - - - - Home - - - - - Last File - - - - - End - - - - - &New Window - - - - - Ctrl+N - - - - - Flip &Horizontally - - - - - H - - - - - Capture Screenshot - - - - - F&ull Screen - - - - - F11 - - - - - Flip &Vertically - - - - - V - - - - - &Paste from Clipboard - - - - - &Slide Show - - - - - &Delete - - - - - Del - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - - - - - &Help - - - - - Go - - - - - &View - - - - - &Edit - - - - - Toolbar - - - - - PgDown - - - - - PgUp - - - - - Ctrl+P - - - - - Show Thumbnails - - - - - T - - - - - File Properties - - - - - Ctrl+= - - - - - Ctrl+0 - - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - PreferencesDialog - - - Preferences - - - - - Icon theme: - - - - - Normal background color: - - - - - Fullscreen background color: - - - - - Slide show interval (seconds): - - - - - General - - - - - ScreenshotDialog - - - Screenshot - - - - - Take a screenshot - - - - - Region - - - - - Whole screen - - - - - Current window only - - - - - Include mouse cursor - - - - - seconds - - - - - Delay: - - - - - Include window title and frame - - - - - Capture an area of the screen - - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_tr.desktop b/src/translations/lximage-qt_tr.desktop deleted file mode 100644 index 30ba59f..0000000 --- a/src/translations/lximage-qt_tr.desktop +++ /dev/null @@ -1,4 +0,0 @@ -#Translation -Name[tr]=LXImage -GenericName[tr]=Resim Görüntüleyici -Comment[tr]=LXQt resim görüntüleyici diff --git a/src/translations/lximage-qt_tr.ts b/src/translations/lximage-qt_tr.ts deleted file mode 100644 index 06901f9..0000000 --- a/src/translations/lximage-qt_tr.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Ekran görüntüsü al - - - - [FILE1, FILE2,...] - [DOSYA1, DOSYA2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - bilinmeyen hata yanıtı - - - - LxImage::ImgBBUpload - - - unknown error response - bilinmeyen hata yanıtı - - - - LxImage::ImgurUpload - - - unknown error response - bilinmeyen hata yanıtı - - - - LxImage::MainWindow - - - About - Hakkında - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - basit ve hızlı bir resim görüntüleyici - -Telif Hakkı (C) 2013 -LXQt Projesi: https://lxqt.org/ - -Yazarlar: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - Dosya Aç - - - - - Image files (%1) - Resim dosyaları (%1) - - - - Open directory - Dizin aç - - - - Save File - Dosyayı Kaydet - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Yükleniyor...) - Resim Gösterici - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Yükleme Başarısız Oldu) - Resim Gösterici - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Resim Gösterici - - - - [*]Image Viewer - [*]Resim Gösterici - - - - Thumbnails - Önizleme - - - - EXIF Data - EXIF Verileri - - - - LxImage::MruMenu - - - &Clear - &Temizle - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - Başlat - - - - Stop - Durdur - - - - Close - Kapat - - - - Error - Hata - - - - MainWindow - - - Image Viewer - Resim Gösterici - - - - &Recently Opened Files - &Son Açılan Belgeler - - - - toolBar_2 - Araç_Çubuğu_2 - - - - &About - &Hakkında - - - - &Open File - &Dosya Aç - - - - Ctrl+O - Ctrl+O - - - - &Reload File - Dosyayı &Yeniden Yükle - - - - Ctrl+R - Ctrl+R - - - - &Save - &Kaydet - - - - Ctrl+S - Ctrl+S - - - - Save &As - Farklı K&aydet - - - - Ctrl+A - Ctrl+A - - - - &Close - &Kapat - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - Büyü&t - - - - Ctrl+= - Ctrl+= - - - - Zoom &Out - Küç&ült - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - Panoya &Kopyala - - - - - Next File - Sonraki Dosya - - - - PgDown - PgDown - - - - - Previous File - Önceki Dosya - - - - PgUp - PgUp - - - - Original Size - Özgün Boyut - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - &Uydur - - - - &Rotate Clockwise - &Saat Yönüne Döndür - - - - R - R - - - - Rotate &Counterclockwise - Saat Yönünün &Tersine Döndür - - - - L - L - - - - P&references - &Tercihler - - - - &Print - Ya&zdır - - - - Ctrl+P - Ctrl+P - - - - First File - İlk Dosya - - - - Home - Ev - - - - Last File - Son Dosya - - - - End - End - - - - &New Window - &Yeni Pencere - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - &Yatay Çevir - - - - H - H - - - - Capture Screenshot - Ekran Görüntüsü Yakala - - - - F&ull Screen - &Tam Ekran - - - - F11 - F11 - - - - Flip &Vertically - Dikey Çe&vir - - - - V - V - - - - &Paste from Clipboard - &Panodan Yapıştır - - - - &Slide Show - &Slayt Gösterisi - - - - &Delete - &Sil - - - - Del - Sil - - - - Show Thumbnails - Küçükresimleri Göster - - - - T - T - - - - File Properties - Dosya Özellikleri - - - - Open &Directory - &Dizin Aç - - - - Ctrl+D - Ctrl+D - - - - Upload - Yükle - - - - Upload the image - Resim yükle - - - - Show EXIF Data - EXIF Verisini Göster - - - - No Tool - Araç Yok - - - - Deselect all drawing tools - Tüm çizim araçlarının seçimini kaldır - - - - Draw Arrow - Ok Çiz - - - - Draw an arrow - Bir ok çiz - - - - Draw Rectangle - Dikdörtgen çiz - - - - Draw a hollow rectangle - Boş bir dikdörtgen çiz - - - - Draw Circle - Daire Çiz - - - - Draw a hollow circle - Boş bir daire çiz - - - - Draw Number - Sayı Çiz - - - - Draw incrementing numbers - Artan sayılar çiz - - - - &File - &Dosya - - - - &Help - &Yardım - - - - Go - Git - - - - &View - &Görünüm - - - - &Edit - &Düzenle - - - - Toolbar - Araç Çubuğu - - - - PreferencesDialog - - - Preferences - Tercihler - - - - Icon theme: - Simge seti teması: - - - - Normal background color: - Normal arkaplan rengi: - - - - Fullscreen background color: - Tam ekran arkaplan rengi: - - - - Slide show interval (seconds): - Slayt gösterisi aralığı (saniye): - - - - General - Genel - - - - ScreenshotDialog - - - Screenshot - Ekran Görüntüsü - - - - Take a screenshot - Ekran görüntüsü al - - - - Region - Bölge - - - - Whole screen - Tüm ekran - - - - Current window only - Sadece geçerli pencere - - - - Capture an area of the screen - Ekranın bir alanını yakala - - - - Include mouse cursor - Fare imlecini de al - - - - seconds - saniye - - - - Delay: - Geçikme: - - - - Include window title and frame - Pencere başlığı ve çerçevesini dahil et - - - - UploadDialog - - - Upload - Yükle - - - - Copy - Kopyala - - - diff --git a/src/translations/lximage-qt_uk.ts b/src/translations/lximage-qt_uk.ts deleted file mode 100644 index 9501ef2..0000000 --- a/src/translations/lximage-qt_uk.ts +++ /dev/null @@ -1,631 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - Зробити знімок - - - - [FILE1, FILE2,...] - [ФАЙЛ1, ФАЙЛ2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - - - - - LxImage::ImgBBUpload - - - unknown error response - - - - - LxImage::ImgurUpload - - - unknown error response - - - - - LxImage::MainWindow - - - About - Про програму - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - - Open File - Відкрити файл - - - - - Image files (%1) - Файли зображень (%1) - - - - Open directory - - - - - Save File - Зберегти файл - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (Завантаження...) - Переглядач малюнків - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (Не вдалося завантажити) - Переглядач малюнків - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - Переглядач малюнків - - - - [*]Image Viewer - [*]Переглядач малюнків - - - - Thumbnails - Значки - - - - EXIF Data - - - - - LxImage::MruMenu - - - &Clear - - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - - - - - ImageShack - - - - - Start - - - - - Stop - - - - - Close - - - - - Error - - - - - MainWindow - - - Image Viewer - Переглядач зображень - - - - &About - &Про програму - - - - &Open File - &Відкрити файл - - - - Ctrl+O - Ctrl+O - - - - &Save - &Зберегти - - - - Ctrl+S - Ctrl+S - - - - Save &As - Зберегти &як - - - - Ctrl+A - Ctrl+A - - - - &Close - &Закрити - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - З&більшити - - - - Zoom &Out - &Зменшити - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - &Копіювати до буфера - - - - - Next File - Наступний файл - - - - - Previous File - Попередній Файл - - - - Ctrl+= - - - - - &Recently Opened Files - - - - - toolBar_2 - - - - - &Reload File - - - - - Ctrl+R - - - - - PgDown - PgDown - - - - PgUp - PgUp - - - - Original Size - Оригінальний розмір - - - - Ctrl+0 - - - - - &Fit - &Підігнати - - - - &Rotate Clockwise - &Обернути за год. стрілкою - - - - R - - - - - Rotate &Counterclockwise - Обернути проти &год. стрілки - - - - L - - - - - P&references - На&лаштування - - - - &Print - &Друк - - - - Ctrl+P - Ctrl+P - - - - First File - Перший файл - - - - Home - Home - - - - Last File - Останній файл - - - - End - End - - - - &New Window - &Нове вікно - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - Віддзеркалити &горизонтально - - - - H - - - - - Capture Screenshot - Зробити знімок екрана - - - - F&ull Screen - П&овний екран - - - - F11 - F11 - - - - Flip &Vertically - Віддзеркалити &вертикально - - - - V - - - - - &Paste from Clipboard - &Вставити з буфера обміну - - - - &Slide Show - &Показ слайдів - - - - &Delete - В&илучити - - - - Del - Del - - - - Show Thumbnails - Показати значки - - - - T - - - - - File Properties - Властивості файлу - - - - Open &Directory - - - - - Ctrl+D - - - - - Upload - - - - - Upload the image - - - - - Show EXIF Data - - - - - No Tool - - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - &Файл - - - - &Help - &Довідка - - - - Go - Перейти - - - - &View - П&ерегляд - - - - &Edit - &Редагування - - - - Toolbar - Панель інструментів - - - - PreferencesDialog - - - Preferences - Налаштування - - - - Icon theme: - Тема значків: - - - - Normal background color: - Нормальний колір тла: - - - - Fullscreen background color: - Колір тла повного екрану: - - - - Slide show interval (seconds): - Інтервал слайд-шоу (секунди): - - - - General - Загальне - - - - ScreenshotDialog - - - Screenshot - Знімок екрану - - - - Take a screenshot - Зробити знімок - - - - Region - Регіон - - - - Whole screen - Екран цілком - - - - Current window only - Лише поточне вікно - - - - Capture an area of the screen - - - - - Include mouse cursor - Включаючи вказівник миші - - - - seconds - секунд - - - - Delay: - Затримка: - - - - Include window title and frame - Включаючи заголовок вікна та кадр - - - - UploadDialog - - - Upload - - - - - Copy - - - - diff --git a/src/translations/lximage-qt_zh_CN.ts b/src/translations/lximage-qt_zh_CN.ts deleted file mode 100644 index f3656b7..0000000 --- a/src/translations/lximage-qt_zh_CN.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - 抓取屏幕截图 - - - - [FILE1, FILE2,...] - [文件1, 文件2,...] - - - - LxImage::ImageShackUpload - - - unknown error response - 未知的错误反应 - - - - LxImage::ImgBBUpload - - - unknown error response - 未知的错误响应 - - - - LxImage::ImgurUpload - - - unknown error response - 未知的错误反应 - - - - LxImage::MainWindow - - - About - 关于 - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - 一个简单又快速的看图程序 - -Copyright (C) 2013 -LXQt网站: https://lxqt.org/ - -作者: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - 打开文件 - - - - - Image files (%1) - 图像文件 (%1) - - - - Open directory - 打开目录 - - - - Save File - 保存文件 - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (正在加载...) - 图像查看器 - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (加载失败) - 图像查看器 - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - 图像查看器 - - - - [*]Image Viewer - [*]图像查看器 - - - - Thumbnails - 缩略图 - - - - EXIF Data - EXIF数据 - - - - LxImage::MruMenu - - - &Clear - 清除(&C) - - - - LxImage::UploadDialog - - - Imgur - - - - - ImgBB - ImgBB - - - - ImageShack - - - - - Start - 开始 - - - - Stop - 停止 - - - - Close - 关闭 - - - - Error - 错误 - - - - MainWindow - - - Image Viewer - 图像查看器 - - - - &About - 关于(&A) - - - - &Open File - 打开文件(&O) - - - - Ctrl+O - Ctrl+O - - - - &Save - 保存(&S) - - - - Ctrl+S - Ctrl+S - - - - Save &As - 另存为(&A) - - - - Ctrl+A - Ctrl+A - - - - &Close - 关闭(&C) - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - 放大(&I) - - - - Zoom &Out - 缩小(&O) - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - 复制到剪贴板(&C) - - - - - Next File - 下一个文件 - - - - - Previous File - 上一个文件 - - - - Ctrl+= - - - - - &Recently Opened Files - 最近打开的文件(&R) - - - - toolBar_2 - toolBar_2 - - - - &Reload File - 重新载入文件(&R) - - - - Ctrl+R - Ctrl+R - - - - PgDown - - - - - PgUp - - - - - Original Size - 原始尺寸 - - - - Ctrl+0 - - - - - &Fit - 适合(&F) - - - - &Rotate Clockwise - 顺时针旋转(&R) - - - - R - R - - - - Rotate &Counterclockwise - 逆时针旋转(&C) - - - - L - L - - - - P&references - 偏好设置(&R) - - - - &Print - 打印(&P) - - - - Ctrl+P - - - - - First File - 第一个文件 - - - - Home - 起始 - - - - Last File - 最后一个文件 - - - - End - 结束 - - - - &New Window - 新建窗口(&N) - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - 水平翻转(&H) - - - - H - H - - - - Capture Screenshot - 抓取屏幕截图 - - - - F&ull Screen - 全屏(&U) - - - - F11 - F11 - - - - Flip &Vertically - 垂直翻转(&V) - - - - V - V - - - - &Paste from Clipboard - 从剪贴板粘贴(&P) - - - - &Slide Show - 幻灯片放映(&S) - - - - &Delete - 删除(&D) - - - - Del - 删除 - - - - Show Thumbnails - 显示缩略图 - - - - T - T - - - - File Properties - 文件属性 - - - - Open &Directory - 打开目录(&D) - - - - Ctrl+D - - - - - Upload - 上传 - - - - Upload the image - 上传图像 - - - - Show EXIF Data - 显示EXIF数据 - - - - No Tool - 无工具 - - - - Deselect all drawing tools - 取消选择所有绘图工具 - - - - Draw Arrow - 画箭头 - - - - Draw an arrow - 画一个箭头 - - - - Draw Rectangle - 画矩形 - - - - Draw a hollow rectangle - 画一个中空的矩形 - - - - Draw Circle - 画圆形 - - - - Draw a hollow circle - 画一个中空的圆形 - - - - Draw Number - 画数字 - - - - Draw incrementing numbers - 画递增的数字 - - - - &File - 文件(&F) - - - - &Help - 帮助(&H) - - - - Go - 转到 - - - - &View - 查看(&V) - - - - &Edit - 编辑(&E) - - - - Toolbar - 工具栏 - - - - PreferencesDialog - - - Preferences - 偏好设置 - - - - Icon theme: - 图标主题: - - - - Normal background color: - 默认背景颜色: - - - - Fullscreen background color: - 全屏背景颜色: - - - - Slide show interval (seconds): - 幻灯片放映间隔(秒): - - - - General - 常规 - - - - ScreenshotDialog - - - Screenshot - 屏幕截图 - - - - Take a screenshot - 抓取屏幕截图 - - - - Region - 区域 - - - - Whole screen - 整个屏幕 - - - - Current window only - 仅当前窗口 - - - - Capture an area of the screen - 截取屏幕选区 - - - - Include mouse cursor - 包括鼠标光标 - - - - seconds - - - - - Delay: - 延迟: - - - - Include window title and frame - 包括窗口标题和框架 - - - - UploadDialog - - - Upload - 上传 - - - - Copy - 复制 - - - diff --git a/src/translations/lximage-qt_zh_TW.ts b/src/translations/lximage-qt_zh_TW.ts deleted file mode 100644 index 97c1d5b..0000000 --- a/src/translations/lximage-qt_zh_TW.ts +++ /dev/null @@ -1,637 +0,0 @@ - - - - - LxImage::Application - - - Take a screenshot - 拍攝螢幕快照 - - - - [FILE1, FILE2,...] - [檔案1、檔案2...] - - - - LxImage::ImageShackUpload - - - unknown error response - 未知的錯誤回應 - - - - LxImage::ImgBBUpload - - - unknown error response - 未知的錯誤回應 - - - - LxImage::ImgurUpload - - - unknown error response - 未知的錯誤回應 - - - - LxImage::MainWindow - - - About - 關於 - - - - LXImage-Qt - a simple and fast image viewer - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - LXImage-Qt - 一個簡單又快速的圖像觀測器 - -Copyright (C) 2013 -LXQt Project: https://lxqt.org/ - -Authors: -Hong Jen Yee (PCMan) <pcman.tw@gmail.com> - - - - Open File - 開啟檔案 - - - - - Image files (%1) - 影像檔案 (%1) - - - - Open directory - 打開資料夾 - - - - Save File - 儲存檔案 - - - - [*]%1 (Loading...) - Image Viewer - [*]%1 (讀取中...) - 看圖軟體 - - - - [*]%1 (Failed to Load) - Image Viewer - [*]%1 (讀取失敗) - 看圖軟體 - - - - [*]%1 (%2x%3) - Image Viewer - [*]%1 (%2x%3) - 看圖軟體 - - - - [*]Image Viewer - [*]看圖軟體 - - - - Thumbnails - 縮圖 - - - - EXIF Data - EXIF 資料 - - - - LxImage::MruMenu - - - &Clear - 清除(&C) - - - - LxImage::UploadDialog - - - Imgur - Imgur - - - - ImgBB - ImgBB - - - - ImageShack - ImageShack - - - - Start - 開始 - - - - Stop - 停止 - - - - Close - 關閉 - - - - Error - 錯誤 - - - - MainWindow - - - Image Viewer - 圖片檢視程式 - - - - &About - 關於(&A) - - - - &Open File - 開啟檔案(&O) - - - - Ctrl+O - Ctrl+O - - - - &Save - 儲存(&S) - - - - Ctrl+S - Ctrl+S - - - - Save &As - 另存新檔(&A) - - - - Ctrl+A - Ctrl+A - - - - &Close - 關閉(&C) - - - - Ctrl+W - Ctrl+W - - - - Zoom &In - 放大(&I) - - - - Zoom &Out - 縮小(&O) - - - - Ctrl+- - Ctrl+- - - - - &Copy to Clipboard - 複製到剪貼簿(&C) - - - - - Next File - 下一個檔案 - - - - - Previous File - 前一個檔案 - - - - Ctrl+= - Ctrl+= - - - - &Recently Opened Files - 最近開啟的檔案(&R) - - - - toolBar_2 - - - - - &Reload File - 重新載入檔案(&R) - - - - Ctrl+R - Ctrl+R - - - - PgDown - PgDown - - - - PgUp - PgUp - - - - Original Size - 原始尺寸 - - - - Ctrl+0 - Ctrl+0 - - - - &Fit - 適合視窗大小(&F) - - - - &Rotate Clockwise - 順時鐘旋轉(&R) - - - - R - R - - - - Rotate &Counterclockwise - 逆時鐘旋轉(&C) - - - - L - L - - - - P&references - 偏好設定(&R) - - - - &Print - 列印(&P) - - - - Ctrl+P - Ctrl+P - - - - First File - 第一個檔案 - - - - Home - - - - - Last File - 最後一個檔案 - - - - End - - - - - &New Window - 新視窗(&N) - - - - Ctrl+N - Ctrl+N - - - - Flip &Horizontally - 水平翻轉(&H) - - - - H - H - - - - Capture Screenshot - 拍攝螢幕快照 - - - - F&ull Screen - 全螢幕(&U) - - - - F11 - F11 - - - - Flip &Vertically - 垂直翻轉(&V) - - - - V - V - - - - &Paste from Clipboard - 從剪貼簿貼上(&P) - - - - &Slide Show - 投影片播放(&S) - - - - &Delete - 刪除(&D) - - - - Del - Del - - - - Show Thumbnails - 顯示縮圖 - - - - T - T - - - - File Properties - 檔案屬性 - - - - Open &Directory - 打開資料夾(&D) - - - - Ctrl+D - Ctrl+D - - - - Upload - 上傳 - - - - Upload the image - 上傳影像 - - - - Show EXIF Data - 顯示EXIF資料 - - - - No Tool - 不使用註解工具 - - - - Deselect all drawing tools - - - - - Draw Arrow - - - - - Draw an arrow - - - - - Draw Rectangle - - - - - Draw a hollow rectangle - - - - - Draw Circle - - - - - Draw a hollow circle - - - - - Draw Number - - - - - Draw incrementing numbers - - - - - &File - 檔案(&F) - - - - &Help - 說明(&H) - - - - Go - 前往 - - - - &View - 檢視(&V) - - - - &Edit - 編輯(&E) - - - - Toolbar - 工具列 - - - - PreferencesDialog - - - Preferences - 偏好設定 - - - - Icon theme: - Icon 主題: - - - - Normal background color: - 預設背影顏色: - - - - Fullscreen background color: - 全螢幕背景顏色: - - - - Slide show interval (seconds): - 幻燈片放映間隔(秒): - - - - General - 一般 - - - - ScreenshotDialog - - - Screenshot - 螢幕截圖 - - - - Take a screenshot - 拍攝螢幕截圖 - - - - Region - 區域 - - - - Whole screen - 整個螢幕 - - - - Current window only - 只有目前的視窗 - - - - Capture an area of the screen - 截圖選取的區域 - - - - Include mouse cursor - 包含滑鼠游標 - - - - seconds - - - - - Delay: - 延遲: - - - - Include window title and frame - 包含視窗標題和邊框 - - - - UploadDialog - - - Upload - 上傳 - - - - Copy - - - - diff --git a/src/upload/imageshackprovider.cpp b/src/upload/imageshackprovider.cpp deleted file mode 100644 index e860cb7..0000000 --- a/src/upload/imageshackprovider.cpp +++ /dev/null @@ -1,57 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include -#include -#include - -#include "imageshackprovider.h" -#include "imageshackupload.h" - -using namespace LxImage; - -const QString gUploadURL = "https://api.imageshack.com/v2/images"; -const QByteArray gAPIKey = "4DINORVXbcbda9ac64b424a0e6b37caed4cf3b8b"; - -Upload *ImageShackProvider::upload(QIODevice *device) -{ - // Construct the URL that will be used for the upload - QUrlQuery query; - query.addQueryItem("api_key", gAPIKey); - QUrl url(gUploadURL); - url.setQuery(query); - - // The first (and only) part is the file upload - QHttpPart filePart; - filePart.setBodyDevice(device); - filePart.setHeader( - QNetworkRequest::ContentDispositionHeader, - R"(form-data; name="file"; filename="upload.jpg")" - ); - - // Create the multipart and append the file part - QHttpMultiPart *multiPart = new QHttpMultiPart(QHttpMultiPart::FormDataType, device); - multiPart->append(filePart); - - // Start the request and wrap it in an ImageShackUpload - return new ImageShackUpload(sManager.post(QNetworkRequest(url), multiPart)); -} diff --git a/src/upload/imageshackprovider.h b/src/upload/imageshackprovider.h deleted file mode 100644 index ea1f9ac..0000000 --- a/src/upload/imageshackprovider.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_IMAGESHACKPROVIDER_H -#define LXIMAGE_IMAGESHACKPROVIDER_H - -#include "provider.h" - -namespace LxImage { - -class Upload; - -/** - * @brief Create uploads to ImageShack's API - */ -class ImageShackProvider : public Provider -{ - Q_OBJECT - -public: - - virtual Upload *upload(QIODevice *device); -}; - -} - -#endif // LXIMAGE_IMAGESHACKPROVIDER_H diff --git a/src/upload/imageshackupload.cpp b/src/upload/imageshackupload.cpp deleted file mode 100644 index 098dc58..0000000 --- a/src/upload/imageshackupload.cpp +++ /dev/null @@ -1,56 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include -#include - -#include "imageshackupload.h" - -using namespace LxImage; - -ImageShackUpload::ImageShackUpload(QNetworkReply *reply) - : Upload(reply) -{ -} - -void ImageShackUpload::processReply(const QByteArray &data) -{ - // Obtain the root object from the JSON response - QJsonObject object(QJsonDocument::fromJson(data).object()); - - // Attempt to retrieve the link - bool success = object.value("success").toBool(); - QString link = object.value("result").toObject().value("images").toArray() - .at(0).toObject().value("direct_link").toString(); - - // Check for success - if (!success || link.isNull()) { - QString errorMessage = object.value("error").toObject() - .value("error_message").toString(); - if (errorMessage.isNull()) { - errorMessage = tr("unknown error response"); - } - Q_EMIT error(errorMessage); - } else { - Q_EMIT completed("https://" + link); - } -} diff --git a/src/upload/imageshackupload.h b/src/upload/imageshackupload.h deleted file mode 100644 index 0cd788c..0000000 --- a/src/upload/imageshackupload.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_IMAGESHACKUPLOAD_H -#define LXIMAGE_IMAGESHACKUPLOAD_H - -#include "upload.h" - -namespace LxImage { - -/** - * @brief Upload to ImageShack's API - */ -class ImageShackUpload : public Upload -{ - Q_OBJECT - -public: - - explicit ImageShackUpload(QNetworkReply *reply); - -protected: - - virtual void processReply(const QByteArray &data); -}; - -} - -#endif // LXIMAGE_IMAGESHACKUPLOAD_H diff --git a/src/upload/imgbbprovider.cpp b/src/upload/imgbbprovider.cpp deleted file mode 100644 index d27190a..0000000 --- a/src/upload/imgbbprovider.cpp +++ /dev/null @@ -1,64 +0,0 @@ -/* - LxImage - image viewer and screenshot tool for lxqt - Copyright (C) 2017 Nathan Osman - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include -#include -#include -#include - -#include "imgbbprovider.h" -#include "imgbbupload.h" - -using namespace LxImage; - -const QUrl gUploadURL("https://imgbb.com/json"); - -Upload *ImgBBProvider::upload(QIODevice *device) -{ - // Create the file part of the multipart request - QHttpPart filePart; - filePart.setBodyDevice(device); - filePart.setHeader( - QNetworkRequest::ContentDispositionHeader, - R"(form-data; name="source"; filename="upload.jpg")" - ); - - // Create the parts for the two parameters - QHttpPart typePart; - typePart.setBody("file"); - typePart.setHeader( - QNetworkRequest::ContentDispositionHeader, - "form-data; name=\"type\"" - ); - QHttpPart actionPart; - actionPart.setBody("upload"); - actionPart.setHeader( - QNetworkRequest::ContentDispositionHeader, - "form-data; name=\"action\"" - ); - - // Create the multipart and append the parts - QHttpMultiPart *multiPart = new QHttpMultiPart(QHttpMultiPart::FormDataType, device); - multiPart->append(typePart); - multiPart->append(actionPart); - multiPart->append(filePart); - - // Start the request and wrap it in an ImgBBUpload - return new ImgBBUpload(sManager.post(QNetworkRequest(gUploadURL), multiPart)); -} diff --git a/src/upload/imgbbprovider.h b/src/upload/imgbbprovider.h deleted file mode 100644 index 619a86c..0000000 --- a/src/upload/imgbbprovider.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - LxImage - image viewer and screenshot tool for lxqt - Copyright (C) 2017 Nathan Osman - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#ifndef LXIMAGE_IMGBBPROVIDER_H -#define LXIMAGE_IMGBBPROVIDER_H - -#include "provider.h" - -namespace LxImage { - -class ImgBBProvider : public Provider -{ - Q_OBJECT - -public: - - virtual Upload *upload(QIODevice *device); -}; - -} - -#endif // LXIMAGE_IMGBBPROVIDER_H diff --git a/src/upload/imgbbupload.cpp b/src/upload/imgbbupload.cpp deleted file mode 100644 index 40f3be4..0000000 --- a/src/upload/imgbbupload.cpp +++ /dev/null @@ -1,50 +0,0 @@ -/* - LxImage - image viewer and screenshot tool for lxqt - Copyright (C) 2017 Nathan Osman - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#include -#include - -#include "imgbbupload.h" - -using namespace LxImage; - -ImgBBUpload::ImgBBUpload(QNetworkReply *reply) - : Upload(reply) -{ -} - -void ImgBBUpload::processReply(const QByteArray &data) -{ - // Obtain the root object from the JSON response - QJsonObject object(QJsonDocument::fromJson(data).object()); - - // Attempt to retrieve the image->url value - QString url = object.value("image").toObject().value("url").toString(); - - // Check for success - if (url.isNull()) { - QString message = object.value("error").toObject().value("message").toString(); - if (message.isNull()) { - message = tr("unknown error response"); - } - Q_EMIT error(message); - } else { - Q_EMIT completed(url); - } -} diff --git a/src/upload/imgbbupload.h b/src/upload/imgbbupload.h deleted file mode 100644 index b99822c..0000000 --- a/src/upload/imgbbupload.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - LxImage - image viewer and screenshot tool for lxqt - Copyright (C) 2017 Nathan Osman - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -*/ - -#ifndef LXIMAGE_IMGBBUPLOAD_H -#define LXIMAGE_IMGBBUPLOAD_H - -#include "upload.h" - -namespace LxImage { - -class ImgBBUpload : public Upload -{ - Q_OBJECT - -public: - - explicit ImgBBUpload(QNetworkReply *reply); - - virtual void processReply(const QByteArray &data); -}; - -} - -#endif // LXIMAGE_IMGBBUPLOAD_H diff --git a/src/upload/imgurprovider.cpp b/src/upload/imgurprovider.cpp deleted file mode 100644 index 5b4de25..0000000 --- a/src/upload/imgurprovider.cpp +++ /dev/null @@ -1,43 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include - -#include "imgurprovider.h" -#include "imgurupload.h" - -using namespace LxImage; - -const QUrl gUploadURL("https://api.imgur.com/3/upload.json"); -const QByteArray gAuthHeader = "Client-ID 63ff047cd8bcf9e"; -const QByteArray gTypeHeader = "application/x-www-form-urlencoded"; - -Upload *ImgurProvider::upload(QIODevice *device) -{ - // Create the request with the correct HTTP headers - QNetworkRequest request(gUploadURL); - request.setHeader(QNetworkRequest::ContentTypeHeader, gTypeHeader); - request.setRawHeader("Authorization", gAuthHeader); - - // Start the request and wrap it in an ImgurUpload - return new ImgurUpload(sManager.post(request, device)); -} diff --git a/src/upload/imgurprovider.h b/src/upload/imgurprovider.h deleted file mode 100644 index e15bc90..0000000 --- a/src/upload/imgurprovider.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_IMGURPROVIDER_H -#define LXIMAGE_IMGURPROVIDER_H - -#include "provider.h" - -namespace LxImage { - -/** - * @brief Create uploads to Imgur's API - */ -class ImgurProvider : public Provider -{ - Q_OBJECT - -public: - - virtual Upload *upload(QIODevice *device); -}; - -} - -#endif // LXIMAGE_IMGURPROVIDER_H diff --git a/src/upload/imgurupload.cpp b/src/upload/imgurupload.cpp deleted file mode 100644 index 5c8570a..0000000 --- a/src/upload/imgurupload.cpp +++ /dev/null @@ -1,53 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include -#include - -#include "imgurupload.h" - -using namespace LxImage; - -ImgurUpload::ImgurUpload(QNetworkReply *reply) - : Upload(reply) -{ -} - -void ImgurUpload::processReply(const QByteArray &data) -{ - // Obtain the root object from the JSON response - QJsonObject object(QJsonDocument::fromJson(data).object()); - - // Attempt to retrieve the value for "success" and "data->link" - bool success = object.value("success").toBool(); - QJsonObject dataObject = object.value("data").toObject(); - QString dataLink = dataObject.value("link").toString(); - QString dataError = dataObject.value("error").toString(); - - // Ensure that "success" is true & link is valid, otherwise throw an error - if (!success || dataLink.isNull()) { - if (dataError.isNull()) { - dataError = tr("unknown error response"); - } - Q_EMIT error(dataError); - } else { - Q_EMIT completed(dataLink); - } -} diff --git a/src/upload/imgurupload.h b/src/upload/imgurupload.h deleted file mode 100644 index c618850..0000000 --- a/src/upload/imgurupload.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_IMGURUPLOAD_H -#define LXIMAGE_IMGURUPLOAD_H - -#include "upload.h" - -namespace LxImage { - -/** - * @brief Process uploads to Imgur's API - */ -class ImgurUpload : public Upload -{ - Q_OBJECT - -public: - - explicit ImgurUpload(QNetworkReply *reply); - - virtual void processReply(const QByteArray &data); -}; - -} - -#endif // LXIMAGE_IMGURUPLOAD_H diff --git a/src/upload/provider.cpp b/src/upload/provider.cpp deleted file mode 100644 index 5e161e9..0000000 --- a/src/upload/provider.cpp +++ /dev/null @@ -1,25 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "provider.h" - -using namespace LxImage; - -QNetworkAccessManager Provider::sManager; diff --git a/src/upload/provider.h b/src/upload/provider.h deleted file mode 100644 index 2c756b3..0000000 --- a/src/upload/provider.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_PROVIDER_H -#define LXIMAGE_PROVIDER_H - -#include -#include -#include - -namespace LxImage { - -class Upload; - -/** - * @brief Base class for providers - */ -class Provider : public QObject -{ - Q_OBJECT - -public: - - /** - * @brief Upload the provided data - * @param device reader for uploaded data from - * @return newly created upload - */ - virtual Upload *upload(QIODevice *device) = 0; - -protected: - - static QNetworkAccessManager sManager; -}; - -} - -#endif // LXIMAGE_PROVIDER_H diff --git a/src/upload/upload.cpp b/src/upload/upload.cpp deleted file mode 100644 index a1b5d6c..0000000 --- a/src/upload/upload.cpp +++ /dev/null @@ -1,58 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include "upload.h" - -using namespace LxImage; - -Upload::Upload(QNetworkReply *reply) - : mReply(reply) -{ - // Reparent the reply to this object - mReply->setParent(this); - - // Emit progress() when upload progress changes - connect(mReply, &QNetworkReply::uploadProgress, [this](qint64 bytesSent, qint64 bytesTotal) { - Q_EMIT progress(static_cast( - static_cast(bytesSent) / static_cast(bytesTotal) * 100.0 - )); - }); - - // Emit error() when a socket error occurs - connect(mReply, static_cast(&QNetworkReply::error), [this](QNetworkReply::NetworkError) { - Q_EMIT error(mReply->errorString()); - }); - - // Process the request when it finishes - connect(mReply, &QNetworkReply::finished, [this]() { - if (mReply->error() == QNetworkReply::NoError) { - processReply(mReply->readAll()); - } - }); - - // Emit finished() when completed() or error() is emitted - connect(this, &Upload::completed, this, &Upload::finished); - connect(this, &Upload::error, this, &Upload::finished); -} - -void Upload::abort() -{ - mReply->abort(); -} diff --git a/src/upload/upload.h b/src/upload/upload.h deleted file mode 100644 index 2ea6084..0000000 --- a/src/upload/upload.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_UPLOAD_H -#define LXIMAGE_UPLOAD_H - -#include -#include - -namespace LxImage { - -/** - * @brief Base class for uploads - */ -class Upload : public QObject -{ - Q_OBJECT - -public: - - /** - * @brief Create an upload - * @param reply network reply - * - * The upload will assume ownership of the network reply and connect to its - * signals, emitting uploadError() when something goes wrong. - */ - explicit Upload(QNetworkReply *reply); - - /** - * @brief Abort the upload - */ - void abort(); - -Q_SIGNALS: - - /** - * @brief Indicate that upload progress has changed - * @param value new progress value - */ - void progress(int value); - - /** - * @brief Indicate that the upload completed - * @param url new URL of the upload - */ - void completed(const QString &url); - - /** - * @brief Indicate that an error occurred - * @param message description of the error - */ - void error(const QString &message); - - /** - * @brief Indicate that the upload finished - * - * This signal is emitted after either completed() or error(). - */ - void finished(); - -protected: - - /** - * @brief Process the data from the reply - * @param data content from the reply - * - * This method should parse the data and either emit the completed() or - * error() signal. - */ - virtual void processReply(const QByteArray &data) = 0; - -private: - - QNetworkReply *mReply; -}; - -} - -#endif // LXIMAGE_UPLOAD_H diff --git a/src/upload/uploaddialog.cpp b/src/upload/uploaddialog.cpp deleted file mode 100644 index c1d87df..0000000 --- a/src/upload/uploaddialog.cpp +++ /dev/null @@ -1,154 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include "imageshackprovider.h" -#include "imgbbprovider.h" -#include "imgurprovider.h" -#include "provider.h" -#include "upload.h" -#include "uploaddialog.h" - -using namespace LxImage; - -ImgurProvider gImgurProvider; -ImgBBProvider gImgBBProvider; -ImageShackProvider gImageShackProvider; - -UploadDialog::UploadDialog(QWidget *parent, const QString &filename) - : QDialog(parent), - mState(SelectProvider), - mFile(filename), - mUpload(nullptr) -{ - ui.setupUi(this); - - // Populate the list of providers - ui.providerComboBox->addItem(tr("Imgur"), QVariant::fromValue(&gImgurProvider)); - ui.providerComboBox->addItem(tr("ImgBB"), QVariant::fromValue(&gImgBBProvider)); - ui.providerComboBox->addItem(tr("ImageShack"), QVariant::fromValue(&gImageShackProvider)); - - updateUi(); -} - -void UploadDialog::on_actionButton_clicked() -{ - switch (mState) { - case SelectProvider: - start(); - break; - case UploadInProgress: - mUpload->abort(); - break; - case Completed: - accept(); - break; - } -} - -void UploadDialog::on_copyButton_clicked() -{ - QGuiApplication::clipboard()->setText(ui.linkLineEdit->text()); -} - -void UploadDialog::start() -{ - // Attempt to open the file - if (!mFile.open(QIODevice::ReadOnly)) { - showError(mFile.errorString()); - return; - } - - // Retrieve the selected provider - Provider *provider = ui.providerComboBox->itemData( - ui.providerComboBox->currentIndex() - ).value(); - - // Create the upload - mUpload = provider->upload(&mFile); - - // Update the progress bar as the upload progresses - connect(mUpload, &Upload::progress, ui.progressBar, &QProgressBar::setValue); - - // If the request completes, show the link to the user - connect(mUpload, &Upload::completed, [this](const QString &url) { - ui.linkLineEdit->setText(url); - ui.linkLineEdit->selectAll(); - - mState = Completed; - updateUi(); - }); - - // If the request fails, show an error - connect(mUpload, &Upload::error, [this](const QString &message) { - showError(message); - }); - - // Destroy the upload when it completes - connect(mUpload, &Upload::finished, [this]() { - mFile.close(); - mUpload->deleteLater(); - mUpload = nullptr; - }); - - mState = UploadInProgress; - updateUi(); -} - -void UploadDialog::updateUi() -{ - // Show the appropriate control given the current state - ui.providerComboBox->setVisible(mState == SelectProvider); - ui.progressBar->setVisible(mState == UploadInProgress); - ui.linkLineEdit->setVisible(mState == Completed); - ui.copyButton->setVisible(mState == Completed); - - // Reset the progress bar to zero - ui.progressBar->setValue(0); - - // Set the correct button text - switch (mState) { - case SelectProvider: - ui.actionButton->setText(tr("Start")); - break; - case UploadInProgress: - ui.actionButton->setText(tr("Stop")); - break; - case Completed: - ui.actionButton->setText(tr("Close")); - break; - } -} - -void UploadDialog::showError(const QString &message) -{ - QMessageBox::critical(this, tr("Error"), message); - - mState = SelectProvider; - updateUi(); -} diff --git a/src/upload/uploaddialog.h b/src/upload/uploaddialog.h deleted file mode 100644 index 3fbb834..0000000 --- a/src/upload/uploaddialog.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - * LXImage-Qt - a simple and fast image viewer - * Copyright (C) 2013 PCMan - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - */ - -#ifndef LXIMAGE_UPLOADDIALOG_H -#define LXIMAGE_UPLOADDIALOG_H - -#include -#include - -#include "ui_uploaddialog.h" - -namespace LxImage { - -class Upload; - -/** - * @brief Dialog for uploading an image - */ -class UploadDialog : public QDialog -{ - Q_OBJECT - -public: - - /** - * @brief Create a dialog for uploading the specified file - * @param parent widget parent - * @param filename absolute path to file - */ - UploadDialog(QWidget *parent, const QString &filename); - -private Q_SLOTS: - - void on_actionButton_clicked(); - void on_copyButton_clicked(); - -private: - - void start(); - void updateUi(); - void showError(const QString &message); - - Ui::UploadDialog ui; - - enum { - SelectProvider, - UploadInProgress, - Completed, - } mState; - - QFile mFile; - - Upload *mUpload; -}; - -} - -#endif // LXIMAGE_UPLOADDIALOG_H diff --git a/src/upload/uploaddialog.ui b/src/upload/uploaddialog.ui deleted file mode 100644 index feafebd..0000000 --- a/src/upload/uploaddialog.ui +++ /dev/null @@ -1,93 +0,0 @@ - - - UploadDialog - - - - 0 - 0 - 300 - 100 - - - - Upload - - - - - - - - - true - - - - - - - - - true - - - - - - - Copy - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - Qt::Horizontal - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - - - - - - -