├── .git-blame-ignore-revs ├── .gitignore ├── .gitlab-ci.yml ├── .kde-ci.yml ├── CMakeLists.txt ├── CMakePresets.json ├── LICENSES └── GPL-2.0-or-later.txt ├── bazaar ├── CMakeLists.txt ├── Messages.sh ├── fileviewbazaarplugin.cpp ├── fileviewbazaarplugin.h └── fileviewbazaarplugin.json ├── dropbox ├── CMakeLists.txt ├── fileviewdropboxplugin.cpp ├── fileviewdropboxplugin.h └── fileviewdropboxplugin.json ├── git ├── CMakeLists.txt ├── Messages.sh ├── checkoutdialog.cpp ├── checkoutdialog.h ├── clonedialog.cpp ├── clonedialog.h ├── commitdialog.cpp ├── commitdialog.h ├── fileviewgitplugin.cpp ├── fileviewgitplugin.h ├── fileviewgitplugin.json ├── fileviewgitpluginsettings.kcfg ├── fileviewgitpluginsettings.kcfgc ├── gitwrapper.cpp ├── gitwrapper.h ├── progressdialog.cpp ├── progressdialog.h ├── pulldialog.cpp ├── pulldialog.h ├── pushdialog.cpp ├── pushdialog.h ├── tagdialog.cpp └── tagdialog.h ├── hg ├── CMakeLists.txt ├── Messages.sh ├── backoutdialog.cpp ├── backoutdialog.h ├── branchdialog.cpp ├── branchdialog.h ├── bundledialog.cpp ├── bundledialog.h ├── clonedialog.cpp ├── clonedialog.h ├── commitdialog.cpp ├── commitdialog.h ├── commitinfowidget.cpp ├── commitinfowidget.h ├── commititemdelegate.cpp ├── commititemdelegate.h ├── config-widgets │ ├── generalconfig.cpp │ ├── generalconfig.h │ ├── ignorewidget.cpp │ ├── ignorewidget.h │ ├── pathconfig.cpp │ ├── pathconfig.h │ ├── pluginsettings.cpp │ └── pluginsettings.h ├── configdialog.cpp ├── configdialog.h ├── createdialog.cpp ├── createdialog.h ├── dialogbase.cpp ├── dialogbase.h ├── exportdialog.cpp ├── exportdialog.h ├── fileviewhgplugin.cpp ├── fileviewhgplugin.h ├── fileviewhgplugin.json ├── fileviewhgpluginsettings.kcfg ├── fileviewhgpluginsettings.kcfgc ├── hgconfig.cpp ├── hgconfig.h ├── hgwrapper.cpp ├── hgwrapper.h ├── importdialog.cpp ├── importdialog.h ├── mergedialog.cpp ├── mergedialog.h ├── pathselector.cpp ├── pathselector.h ├── pulldialog.cpp ├── pulldialog.h ├── pushdialog.cpp ├── pushdialog.h ├── renamedialog.cpp ├── renamedialog.h ├── servedialog.cpp ├── servedialog.h ├── servewrapper.cpp ├── servewrapper.h ├── statuslist.cpp ├── statuslist.h ├── syncdialogbase.cpp ├── syncdialogbase.h ├── tagdialog.cpp ├── tagdialog.h ├── updatedialog.cpp └── updatedialog.h ├── makefileactions ├── CMakeLists.txt ├── Messages.sh ├── makefileactions.cpp ├── makefileactions.h ├── makefileactions.json └── targettree.h ├── mountiso ├── CMakeLists.txt ├── Messages.sh ├── mountisoaction.cpp ├── mountisoaction.h └── mountisoaction.json ├── org.kde.dolphin-plugins.metainfo.xml ├── po ├── ar │ └── mountisoaction.po ├── ast │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── az │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── bg │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── bs │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── ca │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ca@valencia │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── cs │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── da │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── de │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── el │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── en_GB │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── eo │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── es │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── et │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── eu │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── fi │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── fr │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ga │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── gl │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── he │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── hi │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── hu │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ia │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── id │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── ie │ ├── fileviewgitplugin.po │ └── mountisoaction.po ├── is │ └── mountisoaction.po ├── it │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ja │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ka │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── kk │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── ko │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── lt │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── lv │ ├── makefileactions.po │ └── mountisoaction.po ├── mr │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── my │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── nb │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── nds │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── nl │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── nn │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── pa │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── pl │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── pt │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── pt_BR │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ro │ ├── fileviewgitplugin.po │ ├── fileviewsvnplugin.po │ └── mountisoaction.po ├── ru │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── sa │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── sk │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── sl │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── sv │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ta │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── tr │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── ug │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ └── fileviewsvnplugin.po ├── uk │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po ├── vi │ ├── fileviewgitplugin.po │ └── mountisoaction.po ├── zh_CN │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po └── zh_TW │ ├── fileviewbazaarplugin.po │ ├── fileviewgitplugin.po │ ├── fileviewhgplugin.po │ ├── fileviewsvnplugin.po │ ├── makefileactions.po │ └── mountisoaction.po └── svn ├── CMakeLists.txt ├── Messages.sh ├── fileviewsvnplugin.cpp ├── fileviewsvnplugin.h ├── fileviewsvnplugin.json ├── fileviewsvnpluginsettings.kcfg ├── fileviewsvnpluginsettings.kcfgc ├── svncheckoutdialog.cpp ├── svncheckoutdialog.h ├── svncheckoutdialog.ui ├── svncleanupdialog.cpp ├── svncleanupdialog.h ├── svncleanupdialog.ui ├── svncommands.cpp ├── svncommands.h ├── svncommitdialog.cpp ├── svncommitdialog.h ├── svnlogdialog.cpp ├── svnlogdialog.h ├── svnlogdialog.ui ├── svnprogressdialog.cpp ├── svnprogressdialog.h └── svnprogressdialog.ui /.git-blame-ignore-revs: -------------------------------------------------------------------------------- 1 | 54b10699eacf3745c762b6ad069f21e0df308a44 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | CMakeLists.txt.user 2 | /build* 3 | .clang-format 4 | *~ 5 | -------------------------------------------------------------------------------- /.gitlab-ci.yml: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: None 2 | # SPDX-License-Identifier: CC0-1.0 3 | 4 | include: 5 | - project: sysadmin/ci-utilities 6 | file: 7 | - /gitlab-templates/linux-qt6.yml 8 | - /gitlab-templates/linux-qt6-next.yml 9 | - /gitlab-templates/freebsd-qt6.yml 10 | -------------------------------------------------------------------------------- /.kde-ci.yml: -------------------------------------------------------------------------------- 1 | # SPDX-FileCopyrightText: None 2 | # SPDX-License-Identifier: CC0-1.0 3 | 4 | Dependencies: 5 | - 'on': ['@all'] 6 | 'require': 7 | 'frameworks/extra-cmake-modules': '@latest-kf6' 8 | 'frameworks/kconfig': '@latest-kf6' 9 | 'frameworks/kcoreaddons': '@latest-kf6' 10 | 'frameworks/ki18n': '@latest-kf6' 11 | 'frameworks/kxmlgui': '@latest-kf6' 12 | 'frameworks/kio': '@latest-kf6' 13 | 'frameworks/ktextwidgets': '@latest-kf6' 14 | 'frameworks/solid': '@latest-kf6' 15 | 'frameworks/ktexteditor': '@latest-kf6' 16 | 'frameworks/kservice': '@latest-kf6' 17 | 'system/dolphin': '@same' 18 | 19 | Options: 20 | require-passing-tests-on: ['Linux', 'FreeBSD', 'Windows'] 21 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 3.16) 2 | 3 | # Release service version, managed by release script 4 | set(RELEASE_SERVICE_VERSION_MAJOR "25") 5 | set(RELEASE_SERVICE_VERSION_MINOR "07") 6 | set(RELEASE_SERVICE_VERSION_MICRO "70") 7 | 8 | set(RELEASE_SERVICE_VERSION "${RELEASE_SERVICE_VERSION_MAJOR}.${RELEASE_SERVICE_VERSION_MINOR}.${RELEASE_SERVICE_VERSION_MICRO}") 9 | 10 | project(dolphin-plugins VERSION ${RELEASE_SERVICE_VERSION}) 11 | 12 | set(QT_MIN_VERSION "6.5.0") 13 | set(KF_MIN_VERSION "5.240.0") 14 | 15 | # ECM setup 16 | find_package(ECM ${KF_MIN_VERSION} CONFIG REQUIRED) 17 | set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake) 18 | 19 | include(QtVersionOption) 20 | include(ECMSetupVersion) 21 | include(KDEInstallDirs) 22 | include(KDECMakeSettings) 23 | include(KDECompilerSettings NO_POLICY_SCOPE) 24 | 25 | include(ECMDeprecationSettings) 26 | include(ECMOptionalAddSubdirectory) 27 | include(ECMQtDeclareLoggingCategory) 28 | include(FeatureSummary) 29 | 30 | find_package(Qt6 ${QT_MIN_VERSION} REQUIRED COMPONENTS 31 | Core 32 | Widgets 33 | Network 34 | DBus 35 | Concurrent 36 | ) 37 | 38 | find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS 39 | XmlGui 40 | I18n 41 | KIO 42 | TextWidgets 43 | Config 44 | CoreAddons 45 | Solid 46 | ) 47 | 48 | find_package(DolphinVcs REQUIRED) 49 | set_package_properties(DolphinVcs PROPERTIES 50 | DESCRIPTION "the Dolphin version control plugin library" 51 | URL "https://commits.kde.org/dolphin" 52 | TYPE REQUIRED 53 | PURPOSE "Provides the version control plugin interface." 54 | ) 55 | 56 | ecm_set_disabled_deprecation_versions( 57 | QT 6.5 58 | KF 5.240 59 | ) 60 | 61 | ecm_optional_add_subdirectory(svn) 62 | ecm_optional_add_subdirectory(git) 63 | ecm_optional_add_subdirectory(bazaar) 64 | ecm_optional_add_subdirectory(dropbox) 65 | ecm_optional_add_subdirectory(hg) 66 | if(UNIX) 67 | ecm_optional_add_subdirectory(makefileactions) 68 | endif() 69 | if(UNIX AND NOT APPLE) 70 | ecm_optional_add_subdirectory(mountiso) 71 | endif() 72 | 73 | install(FILES org.kde.dolphin-plugins.metainfo.xml 74 | DESTINATION ${KDE_INSTALL_METAINFODIR}) 75 | 76 | ki18n_install(po) 77 | 78 | feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES) 79 | 80 | include(KDEClangFormat) 81 | file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h) 82 | kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 83 | 84 | include(KDEGitCommitHooks) 85 | kde_configure_git_pre_commit_hook(CHECKS CLANG_FORMAT) 86 | -------------------------------------------------------------------------------- /bazaar/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"fileviewbazaarplugin\") 2 | 3 | kcoreaddons_add_plugin(fileviewbazaarplugin SOURCES fileviewbazaarplugin.cpp fileviewbazaarplugin.h INSTALL_NAMESPACE "dolphin/vcs") 4 | 5 | target_link_libraries(fileviewbazaarplugin 6 | KF6::KIOCore 7 | KF6::I18n 8 | KF6::CoreAddons 9 | DolphinVcs 10 | ) 11 | -------------------------------------------------------------------------------- /bazaar/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | $XGETTEXT *.cpp -o $podir/fileviewbazaarplugin.pot 3 | -------------------------------------------------------------------------------- /bazaar/fileviewbazaarplugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "MimeTypes": [ 4 | "text/plain" 5 | ], 6 | "Name": "Bazaar", 7 | "Name[ast]": "Bazaar", 8 | "Name[az]": "Bazaar", 9 | "Name[bg]": "Bazaar", 10 | "Name[ca@valencia]": "Bazaar", 11 | "Name[ca]": "Bazaar", 12 | "Name[cs]": "Bazaar", 13 | "Name[da]": "Bazaar", 14 | "Name[de]": "Bazaar", 15 | "Name[el]": "Bazaar", 16 | "Name[en_GB]": "Bazaar", 17 | "Name[eo]": "Bazaar", 18 | "Name[es]": "Bazaar", 19 | "Name[eu]": "Bazaar", 20 | "Name[fi]": "Bazaar", 21 | "Name[fr]": "Bazaar", 22 | "Name[gl]": "Bazaar", 23 | "Name[he]": "Bazaar", 24 | "Name[hu]": "Bazaar", 25 | "Name[ia]": "Bazaar", 26 | "Name[id]": "Bazaar", 27 | "Name[ie]": "Bazaar", 28 | "Name[is]": "Bazaar", 29 | "Name[it]": "Bazaar", 30 | "Name[ka]": "Bazaar", 31 | "Name[ko]": "Bazaar", 32 | "Name[lv]": "Bazaar", 33 | "Name[nb]": "Bazaar", 34 | "Name[nl]": "Bazaar", 35 | "Name[nn]": "Bazaar", 36 | "Name[pa]": "ਬਜ਼ਾਰ", 37 | "Name[pl]": "Bazaar", 38 | "Name[pt]": "Bazaar", 39 | "Name[pt_BR]": "Bazaar", 40 | "Name[ro]": "Bazaar", 41 | "Name[ru]": "Bazaar", 42 | "Name[sa]": "बाजार", 43 | "Name[sk]": "Bazaar", 44 | "Name[sl]": "Bazaar", 45 | "Name[sv]": "Bazaar", 46 | "Name[tr]": "Bazaar", 47 | "Name[uk]": "Bazaar", 48 | "Name[vi]": "Bazaar", 49 | "Name[x-test]": "xxBazaarxx", 50 | "Name[zh_CN]": "Bazaar", 51 | "Name[zh_TW]": "Bazaar" 52 | }, 53 | "MimeType": "text/plain;" 54 | } 55 | -------------------------------------------------------------------------------- /dropbox/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"fileviewdropboxplugin\") 2 | 3 | kcoreaddons_add_plugin(fileviewdropboxplugin SOURCES fileviewdropboxplugin.cpp fileviewdropboxplugin.h INSTALL_NAMESPACE "dolphin/vcs") 4 | 5 | target_link_libraries(fileviewdropboxplugin 6 | Qt6::Core 7 | Qt6::Widgets 8 | Qt6::Network 9 | KF6::I18n 10 | KF6::XmlGui 11 | KF6::KIOCore 12 | DolphinVcs 13 | ) 14 | -------------------------------------------------------------------------------- /dropbox/fileviewdropboxplugin.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2014 Emmanuel Pescosta 3 | SPDX-FileCopyrightText: 2012 Sergei Stolyarov 4 | SPDX-FileCopyrightText: 2010 Thomas Richard 5 | SPDX-FileCopyrightText: 2009-2010 Peter Penz 6 | 7 | SPDX-License-Identifier: GPL-2.0-or-later 8 | */ 9 | 10 | #ifndef FILEVIEWDROPBOXPLUGIN_H 11 | #define FILEVIEWDROPBOXPLUGIN_H 12 | 13 | #include 14 | 15 | #include 16 | 17 | class QLocalSocket; 18 | 19 | // The dropbox protocol info can be found in the dropboxd-protocol file 20 | // it can be found here https://build.opensuse.org/package/view_file/home:faco84/dolphin-box-plugin/dropboxd-protocol 21 | // Thanks Steffen Schuldenzucker! 22 | 23 | /** 24 | * @brief Dropbox implementation for the KVersionControlPlugin interface. 25 | */ 26 | class FileViewDropboxPlugin : public KVersionControlPlugin 27 | { 28 | Q_OBJECT 29 | 30 | private: 31 | enum SendCommandMode { 32 | WaitForReply, 33 | SendCommandOnly, 34 | }; 35 | 36 | enum SendCommandTimeout { 37 | ShortTimeout, 38 | LongTimeout, 39 | }; 40 | 41 | public: 42 | FileViewDropboxPlugin(QObject *parent, const QVariantList &args); 43 | ~FileViewDropboxPlugin() override; 44 | 45 | QString fileName() const override; 46 | 47 | bool beginRetrieval(const QString &directory) override; 48 | KVersionControlPlugin::ItemVersion itemVersion(const KFileItem &item) const override; 49 | void endRetrieval() override; 50 | 51 | QList versionControlActions(const KFileItemList &items) const override; 52 | QList outOfVersionControlActions(const KFileItemList &items) const override; 53 | 54 | private Q_SLOTS: 55 | void handleContextAction(QAction *action); 56 | 57 | private: 58 | QStringList sendCommand(const QString &command, 59 | const QStringList &paths, 60 | const QPointer &socket, 61 | SendCommandMode mode = SendCommandOnly, 62 | SendCommandTimeout timeout = ShortTimeout) const; 63 | 64 | bool connectWithDropbox(const QPointer &socket, SendCommandTimeout timeout) const; 65 | 66 | private: 67 | class Private; 68 | Private *const d; 69 | 70 | static QMap m_itemVersions; 71 | }; 72 | 73 | #endif // FILEVIEWDROPBOXPLUGIN_H 74 | -------------------------------------------------------------------------------- /dropbox/fileviewdropboxplugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "MimeTypes": [ 4 | "text/plain" 5 | ], 6 | "Name": "Dropbox", 7 | "Name[ast]": "Dropbox", 8 | "Name[az]": "Dropbox", 9 | "Name[bg]": "Dropbox", 10 | "Name[ca@valencia]": "DropBox", 11 | "Name[ca]": "Dropbox", 12 | "Name[cs]": "Dropbox", 13 | "Name[da]": "Dropbox", 14 | "Name[de]": "Dropbox", 15 | "Name[el]": "Dropbox", 16 | "Name[en_GB]": "Dropbox", 17 | "Name[eo]": "Dropbox", 18 | "Name[es]": "Dropbox", 19 | "Name[eu]": "Dropbox", 20 | "Name[fi]": "Dropbox", 21 | "Name[fr]": "DropBox", 22 | "Name[gl]": "Dropbox", 23 | "Name[he]": "Dropbox", 24 | "Name[hu]": "Dropbox", 25 | "Name[ia]": "DropBox", 26 | "Name[id]": "Dropbox", 27 | "Name[ie]": "Dropbox", 28 | "Name[is]": "Dropbox", 29 | "Name[it]": "Dropbox", 30 | "Name[ka]": "Dropbox", 31 | "Name[ko]": "Dropbox", 32 | "Name[lv]": "Dropbox", 33 | "Name[nb]": "Dropbox", 34 | "Name[nl]": "Dropbox", 35 | "Name[nn]": "Dropbox", 36 | "Name[pa]": "ਡਰੌਪਬਾਕਸ", 37 | "Name[pl]": "Dropbox", 38 | "Name[pt]": "Dropbox", 39 | "Name[pt_BR]": "Dropbox", 40 | "Name[ro]": "Dropbox", 41 | "Name[ru]": "Dropbox", 42 | "Name[sa]": "ड्रॉपबॉक्स", 43 | "Name[sk]": "Dropbox", 44 | "Name[sl]": "Dropbox", 45 | "Name[sv]": "Dropbox", 46 | "Name[tr]": "Dropbox", 47 | "Name[uk]": "Dropbox", 48 | "Name[vi]": "Dropbox", 49 | "Name[x-test]": "xxDropboxxx", 50 | "Name[zh_CN]": "Dropbox", 51 | "Name[zh_TW]": "Dropbox" 52 | }, 53 | "MimeType": "text/plain;" 54 | } 55 | -------------------------------------------------------------------------------- /git/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"fileviewgitplugin\") 2 | 3 | kcoreaddons_add_plugin(fileviewgitplugin INSTALL_NAMESPACE "dolphin/vcs") 4 | 5 | ecm_qt_declare_logging_category(fileviewgitplugin 6 | HEADER dolphingit_log.h 7 | IDENTIFIER DolphinGitLog 8 | CATEGORY_NAME org.kde.dolphin.plugins.git 9 | DESCRIPTION "Dolphin Git Plugin" 10 | EXPORT DolphinGit 11 | ) 12 | 13 | target_sources(fileviewgitplugin PRIVATE 14 | fileviewgitplugin.cpp 15 | checkoutdialog.cpp 16 | clonedialog.cpp 17 | commitdialog.cpp 18 | tagdialog.cpp 19 | progressdialog.cpp 20 | pushdialog.cpp 21 | pulldialog.cpp 22 | gitwrapper.cpp 23 | 24 | fileviewgitplugin.h 25 | checkoutdialog.h 26 | clonedialog.h 27 | commitdialog.h 28 | tagdialog.h 29 | progressdialog.h 30 | pushdialog.h 31 | pulldialog.h 32 | gitwrapper.h 33 | ) 34 | 35 | kconfig_add_kcfg_files(fileviewgitplugin 36 | fileviewgitpluginsettings.kcfgc 37 | ) 38 | 39 | target_link_libraries(fileviewgitplugin PRIVATE 40 | Qt6::Core 41 | Qt6::Widgets 42 | Qt6::Concurrent 43 | KF6::ConfigGui 44 | KF6::I18n 45 | KF6::KIOCore 46 | KF6::KIOFileWidgets 47 | KF6::TextWidgets 48 | DolphinVcs 49 | ) 50 | 51 | install(FILES fileviewgitpluginsettings.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR}) 52 | 53 | ecm_qt_install_logging_categories( 54 | EXPORT DolphinGit 55 | FILE dolphingit.categories 56 | DESTINATION ${KDE_INSTALL_LOGGINGCATEGORIESDIR} 57 | ) 58 | -------------------------------------------------------------------------------- /git/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | $EXTRACTRC *.kcfg >> rc.cpp 3 | $XGETTEXT *.cpp -o $podir/fileviewgitplugin.pot 4 | -------------------------------------------------------------------------------- /git/checkoutdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2010 Sebastian Doerner 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef CHECKOUTDIALOG_H 8 | #define CHECKOUTDIALOG_H 9 | 10 | #include 11 | #include 12 | #include 13 | 14 | class QCheckBox; 15 | class QComboBox; 16 | class QDialogButtonBox; 17 | class QGroupBox; 18 | class QLineEdit; 19 | class QRadioButton; 20 | 21 | /** 22 | * @brief The dialog for checking out Branches or Tags in Git. 23 | */ 24 | class CheckoutDialog : public QDialog 25 | { 26 | Q_OBJECT 27 | 28 | public: 29 | explicit CheckoutDialog(QWidget *parent = nullptr); 30 | /** 31 | * Returns the name of the selected tag or branch to be checkout out 32 | * @returns The name of the selected tag or branch 33 | */ 34 | QString checkoutIdentifier() const; 35 | /** 36 | * @returns True if the user selected a forced checkout, false otherwise. 37 | */ 38 | bool force() const; 39 | /** 40 | * @returns The user selected name of the new branch, if a new branch is to be 41 | * created, empty String otherwise. 42 | */ 43 | QString newBranchName() const; 44 | 45 | private Q_SLOTS: 46 | void radioButtonToggled(QWidget *acompanyWidget, const QString &baseBranchName, bool checked); 47 | void newBranchCheckBoxStateToggled(int state); 48 | /** 49 | * Checks whether the values of all relevant widgets are valid. 50 | * Enables or disables the OK button and sets tooltips accordingly. 51 | */ 52 | void setOkButtonState(); 53 | void noteUserEditedNewBranchName(); 54 | /** 55 | * Inserts a default name for the new branch into m_newBranchName unless the user 56 | * has already edited the content. 57 | * @param baseBranchName The base name to derive the new name of. 58 | */ 59 | void setDefaultNewBranchName(const QString &baseBranchName); 60 | 61 | private: 62 | inline void setLineEditErrorModeActive(bool active); 63 | 64 | private: 65 | ///@brief true if the user has manually edited the branchName, false otherwise 66 | bool m_userEditedNewBranchName; 67 | int m_shortIdLength; 68 | QSet m_branchNames; 69 | QPalette m_errorColors; 70 | QDialogButtonBox *m_buttonBox; 71 | QGroupBox *m_branchSelectGroupBox; 72 | QRadioButton *m_branchRadioButton; 73 | QComboBox *m_branchComboBox; 74 | QRadioButton *m_tagRadioButton; 75 | QComboBox *m_tagComboBox; 76 | QRadioButton *m_commitRadioButton; 77 | QLineEdit *m_commitLineEdit; 78 | QCheckBox *m_newBranchCheckBox; 79 | QLineEdit *m_newBranchName; 80 | QCheckBox *m_forceCheckBox; 81 | }; 82 | 83 | #endif // CHECKOUTDIALOG_H 84 | -------------------------------------------------------------------------------- /git/clonedialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2024 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef CLONEDIALOG_H 8 | #define CLONEDIALOG_H 9 | 10 | #include 11 | 12 | class QCheckBox; 13 | class QLineEdit; 14 | class QComboBox; 15 | class QDialogButtonBox; 16 | 17 | /** 18 | * @brief The dialog for clone repository in Git. 19 | */ 20 | class CloneDialog : public QDialog 21 | { 22 | Q_OBJECT 23 | public: 24 | explicit CloneDialog(const QString &contextDir, QWidget *parent = nullptr); 25 | 26 | QString url() const; 27 | QString directory() const; 28 | QString branch() const; 29 | bool recursive() const; 30 | 31 | private Q_SLOTS: 32 | void urlChanged(); 33 | void destinationDirChanged(); 34 | void loadFromClipboard(); 35 | 36 | private: 37 | QString extractRepositoryName(const QString &input); 38 | 39 | QComboBox *m_branch; 40 | QLineEdit *m_url; 41 | QLineEdit *m_dir; 42 | QDialogButtonBox *m_buttonBox; 43 | QCheckBox *m_recursive; 44 | QPushButton *m_okButton; 45 | 46 | QString m_contextDir; 47 | QString m_repositoryName; 48 | }; 49 | 50 | #endif // CLONEDIALOG_H 51 | -------------------------------------------------------------------------------- /git/commitdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2010 Sebastian Doerner 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef COMMITDIALOG_H 8 | #define COMMITDIALOG_H 9 | 10 | #include 11 | 12 | class QCheckBox; 13 | class QDialogButtonBox; 14 | class KTextEdit; 15 | 16 | class CommitDialog : public QDialog 17 | { 18 | Q_OBJECT 19 | 20 | public: 21 | explicit CommitDialog(QWidget *parent = nullptr); 22 | /** 23 | * Returns the commit message given by the user. 24 | * @returns The commit message. 25 | */ 26 | QByteArray commitMessage() const; 27 | /** 28 | * Indicated whether the user wants to amend the last commit. 29 | * @returns True if the last commit is to be amended, false otherwise 30 | */ 31 | bool amend() const; 32 | private Q_SLOTS: 33 | void signOffButtonClicked(); 34 | void amendCheckBoxStateChanged(); 35 | void saveDialogSize(); 36 | void setOkButtonState(); 37 | 38 | private: 39 | KTextEdit *m_commitMessageTextEdit; 40 | QCheckBox *m_amendCheckBox; 41 | QDialogButtonBox *m_buttonBox; 42 | /** 43 | * @brief Holds an alternative message, that is not displayed currently. 44 | * One message is the amend message, the other one for normal commits. 45 | */ 46 | QString m_alternativeMessage; 47 | /// Cache for GitWrapper::userName(); 48 | QString m_userName; 49 | /// Cache for GitWrapper::userEmail(); 50 | QString m_userEmail; 51 | }; 52 | 53 | #endif // COMMITDIALOG_H 54 | -------------------------------------------------------------------------------- /git/fileviewgitplugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "MimeTypes": [ 4 | "text/plain" 5 | ], 6 | "Name": "Git", 7 | "Name[ast]": "Git", 8 | "Name[az]": "Git", 9 | "Name[bg]": "Git", 10 | "Name[ca@valencia]": "Git", 11 | "Name[ca]": "Git", 12 | "Name[cs]": "Git", 13 | "Name[da]": "Git", 14 | "Name[de]": "Git", 15 | "Name[el]": "Git", 16 | "Name[en_GB]": "Git", 17 | "Name[eo]": "Git", 18 | "Name[es]": "Git", 19 | "Name[eu]": "Git", 20 | "Name[fi]": "Git", 21 | "Name[fr]": "Git", 22 | "Name[gl]": "Git", 23 | "Name[he]": "Git", 24 | "Name[hu]": "Git", 25 | "Name[ia]": "Git", 26 | "Name[id]": "Git", 27 | "Name[ie]": "Git", 28 | "Name[is]": "Git", 29 | "Name[it]": "Git", 30 | "Name[ka]": "Git", 31 | "Name[ko]": "Git", 32 | "Name[lv]": "Git", 33 | "Name[my]": "ဂစ်", 34 | "Name[nb]": "Git", 35 | "Name[nl]": "Git", 36 | "Name[nn]": "Git", 37 | "Name[pa]": "Git", 38 | "Name[pl]": "Git", 39 | "Name[pt]": "Git", 40 | "Name[pt_BR]": "Git", 41 | "Name[ro]": "Git", 42 | "Name[ru]": "Git", 43 | "Name[sa]": "गिट्", 44 | "Name[sk]": "Git", 45 | "Name[sl]": "Git", 46 | "Name[sv]": "Git", 47 | "Name[tr]": "Git", 48 | "Name[uk]": "Git", 49 | "Name[vi]": "Git", 50 | "Name[x-test]": "xxGitxx", 51 | "Name[zh_CN]": "Git", 52 | "Name[zh_TW]": "Git" 53 | }, 54 | "MimeType": "text/plain;" 55 | } 56 | -------------------------------------------------------------------------------- /git/fileviewgitpluginsettings.kcfg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 300 9 | 50 10 | 11 | 12 | 13 | 500 14 | 50 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /git/fileviewgitpluginsettings.kcfgc: -------------------------------------------------------------------------------- 1 | File=fileviewgitpluginsettings.kcfg 2 | ClassName=FileViewGitPluginSettings 3 | Singleton=true 4 | Mutators=true 5 | 6 | -------------------------------------------------------------------------------- /git/progressdialog.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2024 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "progressdialog.h" 8 | 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | ProgressDialog::ProgressDialog(QProcess *process, QWidget *parent) 16 | : QDialog(parent, Qt::Dialog) 17 | { 18 | m_text = new QPlainTextEdit; 19 | m_text->setReadOnly(true); 20 | 21 | QVBoxLayout *layout = new QVBoxLayout; 22 | QDialogButtonBox *buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel); 23 | layout->addWidget(m_text); 24 | layout->addWidget(buttonBox); 25 | setLayout(layout); 26 | 27 | /* 28 | * Add actions, establish connections. 29 | */ 30 | connect(buttonBox, &QDialogButtonBox::rejected, this, [this, process]() { 31 | process->terminate(); 32 | disconnect(process); 33 | reject(); 34 | }); 35 | connect(buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept); 36 | connect(process, &QProcess::finished, this, [this, buttonBox](int exitCode, QProcess::ExitStatus exitStatus) { 37 | if (exitCode == EXIT_SUCCESS && exitStatus == QProcess::ExitStatus::NormalExit) { 38 | close(); 39 | } 40 | buttonBox->button(QDialogButtonBox::Ok)->setEnabled(true); 41 | buttonBox->button(QDialogButtonBox::Cancel)->setEnabled(false); 42 | }); 43 | // git commands outputs only to stderr but we connect stdout anyway. 44 | connect(process, &QProcess::readyReadStandardOutput, this, [this, process]() { 45 | const auto input = QString::fromLocal8Bit(process->readAllStandardOutput()); 46 | appendText(input); 47 | }); 48 | connect(process, &QProcess::readyReadStandardError, this, [this, process]() { 49 | const auto input = QString::fromLocal8Bit(process->readAllStandardError()); 50 | appendText(input); 51 | }); 52 | 53 | /* 54 | * Additional setup. 55 | */ 56 | buttonBox->button(QDialogButtonBox::Ok)->setEnabled(false); 57 | setAttribute(Qt::WA_DeleteOnClose); 58 | resize(sizeHint() + QSize{200, 0}); 59 | } 60 | 61 | void ProgressDialog::appendText(const QString &text) 62 | { 63 | const auto list = text.split(QLatin1Char('\r'), Qt::SkipEmptyParts); 64 | m_text->moveCursor(QTextCursor::End); 65 | for (auto &i : std::as_const(list)) { 66 | m_text->moveCursor(QTextCursor::StartOfBlock, QTextCursor::KeepAnchor); 67 | m_text->textCursor().removeSelectedText(); 68 | m_text->insertPlainText(i); 69 | } 70 | } 71 | 72 | #include "moc_progressdialog.cpp" 73 | -------------------------------------------------------------------------------- /git/progressdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2024 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef PROGRESSDIALOG_H 8 | #define PROGRESSDIALOG_H 9 | 10 | #include 11 | 12 | class QProcess; 13 | class QPlainTextEdit; 14 | 15 | /** 16 | * @brief Light-weight dialog for showing progress of git operations. 17 | * 18 | * Dialog connects to a process (in a constructor \p ProgressDialog()), 19 | * shows its stderr and stdout. If the process completes successfully, 20 | * the dialog auto closes. 21 | * If the dialog is rejected it terminates the process (for example, when 22 | * "Cancel" is clicked). 23 | * 24 | * @note git produce only stderr, dialog connects stdout anyway. 25 | */ 26 | class ProgressDialog : public QDialog 27 | { 28 | Q_OBJECT 29 | public: 30 | explicit ProgressDialog(QProcess *process, QWidget *parent = nullptr); 31 | 32 | private: 33 | /** 34 | * Append a text with respect of carriage-return ('\r') symbol. 35 | */ 36 | void appendText(const QString &text); 37 | 38 | QPlainTextEdit *m_text; 39 | }; 40 | 41 | #endif // PROGRESSDIALOG_H 42 | -------------------------------------------------------------------------------- /git/pulldialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2010 Sebastian Doerner 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef PULLDIALOG_H 8 | #define PULLDIALOG_H 9 | 10 | #include 11 | #include 12 | class QComboBox; 13 | class QDialogButtonBox; 14 | 15 | class PullDialog : public QDialog 16 | { 17 | Q_OBJECT 18 | 19 | public: 20 | explicit PullDialog(QWidget *parent = nullptr); 21 | QString source() const; 22 | QString remoteBranch() const; 23 | 24 | private: 25 | QDialogButtonBox *m_buttonBox; 26 | QComboBox *m_remoteComboBox; 27 | QComboBox *m_remoteBranchComboBox; 28 | QHash m_remoteBranches; 29 | private Q_SLOTS: 30 | void remoteSelectionChanged(const QString &newRemote); 31 | }; 32 | 33 | #endif // PULLDIALOG_H 34 | -------------------------------------------------------------------------------- /git/pushdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2010 Sebastian Doerner 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef PUSHDIALOG_H 8 | #define PUSHDIALOG_H 9 | 10 | #include 11 | #include 12 | 13 | class KMessageWidget; 14 | 15 | class QLabel; 16 | class QCheckBox; 17 | class QComboBox; 18 | class QDialogButtonBox; 19 | 20 | class PushDialog : public QDialog 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit PushDialog(QWidget *parent = nullptr); 26 | QString destination() const; 27 | QString localBranch() const; 28 | QString remoteBranch() const; 29 | bool forceWithLease() const; 30 | private Q_SLOTS: 31 | void remoteSelectionChanged(const QString &newRemote); 32 | void localBranchSelectionChanged(const QString &newLocalBranch); 33 | void remoteBranchSelectionChanged(const QString &newRemote); 34 | 35 | private: 36 | QHash m_remoteBranches; 37 | 38 | QComboBox *m_remoteComboBox; 39 | QComboBox *m_localBranchComboBox; 40 | QComboBox *m_remoteBranchComboBox; 41 | QCheckBox *m_forceCheckBox; 42 | QDialogButtonBox *m_buttonBox; 43 | KMessageWidget *m_noRemoteMessage; 44 | }; 45 | 46 | #endif // PUSHDIALOG_H 47 | -------------------------------------------------------------------------------- /git/tagdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2010 Johannes Steffen 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef TAGDIALOG_H 8 | #define TAGDIALOG_H 9 | 10 | #include 11 | #include 12 | 13 | class KTextEdit; 14 | class QComboBox; 15 | class QDialogButtonBox; 16 | class QLineEdit; 17 | class QRadioButton; 18 | 19 | class TagDialog : public QDialog 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | explicit TagDialog(QWidget *parent = nullptr); 25 | /** 26 | * Returns the tag message given by the user. 27 | * @returns The tag message. 28 | */ 29 | QByteArray tagMessage() const; 30 | /** 31 | * Returns the tag name given by the user. 32 | * @return The tag name. 33 | */ 34 | QString tagName() const; 35 | /** 36 | * @returns The name of the branch the tag should point to or HEAD if 37 | the tag should point to the current HEAD. 38 | */ 39 | 40 | QString baseBranch() const; 41 | private Q_SLOTS: 42 | void setOkButtonState(); 43 | 44 | private: 45 | inline void setLineEditErrorModeActive(bool active); 46 | 47 | private: 48 | QSet m_tagNames; 49 | KTextEdit *m_tagMessageTextEdit; 50 | QLineEdit *m_tagNameTextEdit; 51 | QComboBox *m_branchComboBox; 52 | QDialogButtonBox *m_buttonBox; 53 | QRadioButton *branchRadioButton; 54 | QPalette m_errorColors; 55 | }; 56 | 57 | #endif // TAGDIALOG_H 58 | -------------------------------------------------------------------------------- /hg/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | find_package(KF6 ${KF_MIN_VERSION} REQUIRED COMPONENTS 2 | TextEditor 3 | WidgetsAddons 4 | ) 5 | 6 | add_definitions(-DTRANSLATION_DOMAIN=\"fileviewhgplugin\") 7 | 8 | kcoreaddons_add_plugin(fileviewhgplugin INSTALL_NAMESPACE "dolphin/vcs") 9 | 10 | target_sources(fileviewhgplugin PRIVATE 11 | fileviewhgplugin.cpp 12 | renamedialog.cpp 13 | commitdialog.cpp 14 | hgwrapper.cpp 15 | statuslist.cpp 16 | branchdialog.cpp 17 | tagdialog.cpp 18 | updatedialog.cpp 19 | clonedialog.cpp 20 | createdialog.cpp 21 | syncdialogbase.cpp 22 | mergedialog.cpp 23 | pushdialog.cpp 24 | pulldialog.cpp 25 | hgconfig.cpp 26 | configdialog.cpp 27 | commititemdelegate.cpp 28 | commitinfowidget.cpp 29 | pathselector.cpp 30 | bundledialog.cpp 31 | exportdialog.cpp 32 | importdialog.cpp 33 | servedialog.cpp 34 | servewrapper.cpp 35 | backoutdialog.cpp 36 | dialogbase.cpp 37 | config-widgets/generalconfig.cpp 38 | config-widgets/pathconfig.cpp 39 | config-widgets/ignorewidget.cpp 40 | config-widgets/pluginsettings.cpp 41 | 42 | fileviewhgplugin.h 43 | renamedialog.h 44 | commitdialog.h 45 | hgwrapper.h 46 | statuslist.h 47 | branchdialog.h 48 | tagdialog.h 49 | updatedialog.h 50 | clonedialog.h 51 | createdialog.h 52 | syncdialogbase.h 53 | mergedialog.h 54 | pushdialog.h 55 | pulldialog.h 56 | hgconfig.h 57 | configdialog.h 58 | commititemdelegate.h 59 | commitinfowidget.h 60 | pathselector.h 61 | bundledialog.h 62 | exportdialog.h 63 | importdialog.h 64 | servedialog.h 65 | servewrapper.h 66 | backoutdialog.h 67 | dialogbase.h 68 | config-widgets/generalconfig.h 69 | config-widgets/pathconfig.h 70 | config-widgets/ignorewidget.h 71 | config-widgets/pluginsettings.h 72 | ) 73 | 74 | 75 | kconfig_add_kcfg_files(fileviewhgplugin 76 | fileviewhgpluginsettings.kcfgc 77 | ) 78 | 79 | target_link_libraries(fileviewhgplugin PRIVATE 80 | Qt::Core 81 | Qt::Widgets 82 | KF6::KIOCore 83 | KF6::I18n 84 | KF6::CoreAddons 85 | KF6::Service 86 | KF6::WidgetsAddons 87 | KF6::TextEditor 88 | KF6::TextWidgets 89 | DolphinVcs 90 | ) 91 | 92 | install(FILES fileviewhgpluginsettings.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR}) 93 | -------------------------------------------------------------------------------- /hg/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | $EXTRACTRC *.kcfg >> rc.cpp 3 | $XGETTEXT *.cpp *.h -o $podir/fileviewhgplugin.pot 4 | -------------------------------------------------------------------------------- /hg/backoutdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HG_BACKOUT_DIALOG 8 | #define HG_BACKOUT_DIALOG 9 | 10 | #include "dialogbase.h" 11 | 12 | class QGroupBox; 13 | class QCheckBox; 14 | class QLineEdit; 15 | class HgCommitInfoWidget; 16 | 17 | /** 18 | * Implements dialog for Mercurial's backout feature. 19 | */ 20 | class HgBackoutDialog : public DialogBase 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit HgBackoutDialog(QWidget *parent = nullptr); 26 | 27 | public Q_SLOTS: 28 | void done(int r) override; 29 | 30 | private Q_SLOTS: 31 | void saveGeometry(); 32 | void slotSelectBaseChangeset(); 33 | void slotSelectParentChangeset(); 34 | void slotUpdateOkButton(const QString &text); 35 | 36 | private: 37 | void setupUI(); 38 | 39 | /** 40 | * Find appropriate changesets in repository and show them in 41 | * Commit Selector (CommitInfoWidget) 42 | */ 43 | void loadCommits(); 44 | 45 | /** 46 | * Opens a dialog showing all changesets in a list and their respective 47 | * information when highlighted. 48 | */ 49 | QString selectChangeset(); 50 | 51 | private: 52 | QGroupBox *m_mainGroup; 53 | HgCommitInfoWidget *m_commitInfo; 54 | 55 | QPushButton *m_selectBaseCommitButton; 56 | QLineEdit *m_baseRevision; 57 | 58 | QPushButton *m_selectParentCommitButton; 59 | QLineEdit *m_parentRevision; 60 | 61 | QCheckBox *m_optMerge; 62 | }; 63 | 64 | #endif /* HG_BACKOUT_DIALOG */ 65 | -------------------------------------------------------------------------------- /hg/branchdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGBRANCHDIALOG_H 8 | #define HGBRANCHDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | 13 | class KComboBox; 14 | class QLabel; 15 | 16 | /** 17 | * Implements dialog to list & create branches and update/switch working 18 | * directory to different branch. 19 | */ 20 | class HgBranchDialog : public DialogBase 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit HgBranchDialog(QWidget *parent = nullptr); 26 | 27 | public Q_SLOTS: 28 | void slotUpdateDialog(const QString &text); 29 | void slotCreateBranch(); 30 | void slotSwitch(); 31 | 32 | private: 33 | void updateInitialDialog(); 34 | 35 | private: 36 | KComboBox *m_branchComboBox; 37 | QPushButton *m_createBranch; 38 | QPushButton *m_updateBranch; 39 | QLabel *m_currentBranchLabel; 40 | 41 | QStringList m_branchList; 42 | }; 43 | 44 | #endif // HGBRANCHDIALOG_H 45 | -------------------------------------------------------------------------------- /hg/bundledialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGBUNDLEDIALOG_H 8 | #define HGBUNDLEDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | 12 | class QGroupBox; 13 | class QCheckBox; 14 | class QLineEdit; 15 | class HgCommitInfoWidget; 16 | class HgPathSelector; 17 | 18 | /** 19 | * Dialog which implements bundle feature of Mercurial. Bundle enables 20 | * user to creates a file containing all the selected/desired changesets 21 | * in mercurial's internal format rather than patches. 22 | * 23 | * Changesets can either be selected by user or after being compared by 24 | * remote repository selected. 25 | * 26 | */ 27 | class HgBundleDialog : public DialogBase 28 | { 29 | Q_OBJECT 30 | 31 | public: 32 | explicit HgBundleDialog(QWidget *parent = nullptr); 33 | 34 | public Q_SLOTS: 35 | void done(int r) override; 36 | 37 | private Q_SLOTS: 38 | void saveGeometry(); 39 | 40 | /** 41 | * Opens a dialog listing all changeset from which user will select a 42 | * changeset for base revision. 43 | */ 44 | void slotSelectChangeset(); 45 | void slotAllChangesCheckToggled(int state); 46 | 47 | private: 48 | void setupUI(); 49 | 50 | /** 51 | * Creates bundle file. 52 | * 53 | * @param fileName Path to file where bundle will be created. 54 | */ 55 | void createBundle(const QString &fileName); 56 | 57 | /** 58 | * Find all changesets in repository and show them in Commit Selector in 59 | * Base Changeset selector. 60 | */ 61 | void loadCommits(); 62 | 63 | private: 64 | QGroupBox *m_mainGroup; 65 | HgPathSelector *m_pathSelect; 66 | HgCommitInfoWidget *m_commitInfo; 67 | QPushButton *m_selectCommitButton; 68 | QLineEdit *m_baseRevision; 69 | QCheckBox *m_allChangesets; 70 | 71 | // options 72 | QGroupBox *m_optionGroup; 73 | QCheckBox *m_optForce; 74 | QCheckBox *m_optInsecure; 75 | }; 76 | 77 | #endif /* HGBUNDLEDIALOG_H */ 78 | -------------------------------------------------------------------------------- /hg/clonedialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGCLONEDIALOG_H 8 | #define HGCLONEDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | #include 13 | 14 | class QLineEdit; 15 | class KPushButton; 16 | class KTextEdit; 17 | class QStackedLayout; 18 | class QCheckBox; 19 | 20 | // TODO: Enable to enter username/passwords if not found in config as well 21 | // as override within dialog 22 | 23 | /** 24 | * Implements dialog to clone repository. 25 | */ 26 | class HgCloneDialog : public DialogBase 27 | { 28 | Q_OBJECT 29 | 30 | public: 31 | explicit HgCloneDialog(const QString &directory, QWidget *parent = nullptr); 32 | void setWorkingDirectory(const QString &directory); 33 | 34 | private Q_SLOTS: 35 | void saveGeometry(); 36 | 37 | /** 38 | * Enables dialog's Ok button when user has entered some input in 39 | * source LineEdit 40 | */ 41 | void slotUpdateOkButton(); 42 | void slotBrowseDestClicked(); 43 | void slotBrowseSourceClicked(); 44 | void slotCloningStarted(); 45 | void slotCloningFinished(int exitCode, QProcess::ExitStatus); 46 | 47 | /** 48 | * Show output of clone operation in TextEdit component. 49 | */ 50 | void slotUpdateCloneOutput(); 51 | 52 | private: 53 | void done(int r) override; 54 | void browseDirectory(QLineEdit *dest); 55 | void appendOptionArguments(QStringList &args); 56 | 57 | private: 58 | QLineEdit *m_source; 59 | QLineEdit *m_destination; 60 | KPushButton *m_browse_dest; 61 | KPushButton *m_browse_source; 62 | KTextEdit *m_outputEdit; 63 | QStackedLayout *m_stackLayout; 64 | 65 | bool m_cloned; 66 | bool m_terminated; 67 | QString m_workingDirectory; 68 | QProcess m_process; 69 | 70 | // option checkboxes 71 | QCheckBox *m_optNoUpdate; 72 | QCheckBox *m_optUsePull; 73 | QCheckBox *m_optUseUncmprdTrans; 74 | QCheckBox *m_optNoVerifyServCert; 75 | }; 76 | 77 | #endif // HGCLONEDIALOG_H 78 | -------------------------------------------------------------------------------- /hg/commitinfowidget.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGCOMMITINFOWIDGET_H 8 | #define HGCOMMITINFOWIDGET_H 9 | 10 | #include 11 | #include 12 | #include 13 | 14 | namespace KTextEditor 15 | { 16 | class View; 17 | class Document; 18 | }; 19 | 20 | class QListWidget; 21 | class QListWidgetItem; 22 | 23 | /** 24 | * Shows Changesets using a custom deltegate CommitItemDelegate. Shows 25 | * changeset information in a KTextEditor widget when a changeset entry is 26 | * highlighted. 27 | * */ 28 | class HgCommitInfoWidget : public QWidget 29 | { 30 | Q_OBJECT 31 | public: 32 | explicit HgCommitInfoWidget(QWidget *parent = nullptr); 33 | 34 | /** 35 | * Adds a new entry in the ListWidget with the chageset parameters 36 | * provided in its parameter. 37 | * 38 | * @param revision Revision number of changeset 39 | * @param changeset Changeset identification hash (shortened) 40 | * @param author Author of the CommitItemDelegate 41 | * @param log Commit Message of that changeset 42 | * 43 | */ 44 | void addItem(const QString &revision, const QString &changeset, const QString &branch, const QString &author, const QString &log); 45 | 46 | /** 47 | * Adds a new QListWidgetItem into list. Expects the changeset information 48 | * in stored in different roles of data. 49 | * 50 | * DisplayRole => Changeset Identification Hash 51 | * UserRole + 1 => Revision Number 52 | * UserRole + 2 => Branch 53 | * UserRole + 3 => Author 54 | * UserRole + 4 => Log/Commit Message 55 | * 56 | * @param item Pointer to the QListWidgetItem object to be added 57 | */ 58 | void addItem(QListWidgetItem *item); 59 | 60 | /** 61 | * Returns changeset identification hash of selected changeset in ListWidget. 62 | * 63 | * @return String containing the changeset identification hash of selected 64 | * chageset 65 | * 66 | */ 67 | const QString selectedChangeset() const; 68 | 69 | /** 70 | * @return Returns a list of selected changesets 71 | */ 72 | QList selectedItems() const; 73 | 74 | /** 75 | * @return Returns pointer to QListWidgetItem of selected changeset. 76 | */ 77 | QListWidgetItem *currentItem() const; 78 | 79 | /** 80 | * Calls QListWidget::setSelectionMode(QAbstractItemView::SelectionMode) 81 | * on the m_commitListWidget 82 | */ 83 | void setSelectionMode(QAbstractItemView::SelectionMode mode); 84 | 85 | /** 86 | * Clears all entries in m_commitListWidget 87 | */ 88 | void clear() const; 89 | 90 | private Q_SLOTS: 91 | /** 92 | * Show selected changeset information when an entry is selected 93 | */ 94 | void slotUpdateInfo(); 95 | 96 | private: 97 | void setupUI(); 98 | 99 | private: 100 | KTextEditor::View *m_editorView; 101 | KTextEditor::Document *m_editorDoc; 102 | QListWidget *m_commitListWidget; 103 | }; 104 | 105 | #endif /* HGCOMMITINFOWIDGET_H */ 106 | -------------------------------------------------------------------------------- /hg/commititemdelegate.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "commititemdelegate.h" 8 | 9 | #include 10 | #include 11 | 12 | CommitItemDelegate::CommitItemDelegate(QObject *parent) 13 | : QItemDelegate(parent) 14 | { 15 | } 16 | 17 | void CommitItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const 18 | { 19 | QString changeset = index.data(Qt::DisplayRole).toString(); 20 | QString revision = index.data(Qt::UserRole + 1).toString(); 21 | QString branch = index.data(Qt::UserRole + 2).toString(); 22 | QString authorName = index.data(Qt::UserRole + 3).toString(); 23 | QString commitLog = index.data(Qt::UserRole + 4).toString(); 24 | 25 | if (option.state & QStyle::State_Selected) { 26 | painter->fillRect(option.rect, option.palette.color(QPalette::Highlight)); 27 | } 28 | 29 | QFont font = option.font; 30 | QFontMetrics fm(font); 31 | QRect rect = option.rect.adjusted(4, 4, 4, 4); 32 | 33 | QString top; 34 | if (!revision.isEmpty()) { 35 | top = QStringLiteral("%1:").arg(revision); 36 | } 37 | top += changeset; 38 | 39 | if (!branch.isEmpty()) { 40 | top += QStringLiteral(" (%1)").arg(branch); 41 | } 42 | font.setBold(true); 43 | painter->setFont(font); 44 | painter->drawText(rect, Qt::AlignLeft, top); 45 | 46 | font.setPixelSize(0.60f * static_cast(fm.height())); 47 | font.setBold(false); 48 | painter->setFont(font); 49 | rect = rect.adjusted(0, fm.height(), 0, fm.height()); 50 | painter->drawText(rect, Qt::AlignLeft, authorName, &rect); 51 | 52 | int fs = 0.60f * static_cast(fm.height()); 53 | font.setPixelSize(fs); 54 | font.setBold(false); 55 | painter->setFont(font); 56 | rect = rect.adjusted(0, fs + 4, 0, fs + 4); 57 | painter->drawText(rect, Qt::AlignLeft, commitLog, &rect); 58 | } 59 | 60 | QSize CommitItemDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const 61 | { 62 | QSize size = QItemDelegate::sizeHint(option, index); 63 | QFont font = option.font; 64 | font.setBold(true); 65 | QFontMetrics fm(font); 66 | int height = static_cast(option.fontMetrics.height()) * (1.2f) + fm.height() + 15; 67 | size.setHeight(height); 68 | 69 | return size; 70 | } 71 | 72 | #include "moc_commititemdelegate.cpp" 73 | -------------------------------------------------------------------------------- /hg/commititemdelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef COMMITITEMDELEGATE_H 8 | #define COMMITITEMDELEGATE_H 9 | 10 | #include 11 | 12 | /** 13 | * Custom Delegate to show Commit info in three lines 14 | * - Revision:Changeset (branch) 15 | * - Author 16 | * - Commit Log | First Line 17 | */ 18 | class CommitItemDelegate : public QItemDelegate 19 | { 20 | Q_OBJECT 21 | public: 22 | explicit CommitItemDelegate(QObject *parent = nullptr); 23 | void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const override; 24 | QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const override; 25 | }; 26 | 27 | #endif // COMMITITEMDELEGATE_H 28 | -------------------------------------------------------------------------------- /hg/config-widgets/generalconfig.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "generalconfig.h" 8 | 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | HgGeneralConfigWidget::HgGeneralConfigWidget(HgConfig::ConfigType type, QWidget *parent) 17 | : QWidget(parent) 18 | , m_configType(type) 19 | { 20 | setupUI(); 21 | loadConfig(); 22 | } 23 | 24 | void HgGeneralConfigWidget::setupUI() 25 | { 26 | m_userEdit = new QLineEdit; 27 | m_editorEdit = new QLineEdit; 28 | m_mergeEdit = new QLineEdit; 29 | m_verboseCheck = new QCheckBox(xi18nc("@label:checkbox", "Verbose Output")); 30 | 31 | QLabel *userLabel = new QLabel(xi18nc("@label", "Username")); 32 | QLabel *editorLabel = new QLabel(xi18nc("@label", "Default Editor")); 33 | QLabel *mergeLabel = new QLabel(xi18nc("@label", "Default Merge Tool")); 34 | 35 | QGridLayout *mainLayout = new QGridLayout; 36 | mainLayout->addWidget(userLabel, 0, 0); 37 | mainLayout->addWidget(m_userEdit, 0, 1); 38 | mainLayout->addWidget(editorLabel, 1, 0); 39 | mainLayout->addWidget(m_editorEdit, 1, 1); 40 | mainLayout->addWidget(mergeLabel, 2, 0); 41 | mainLayout->addWidget(m_mergeEdit, 2, 1); 42 | mainLayout->addWidget(m_verboseCheck, 3, 0, 2, 0); 43 | mainLayout->setRowStretch(mainLayout->rowCount(), 1); 44 | 45 | setLayout(mainLayout); 46 | } 47 | 48 | void HgGeneralConfigWidget::loadConfig() 49 | { 50 | HgConfig hgc(m_configType); 51 | 52 | m_userEdit->setText(hgc.username()); 53 | m_editorEdit->setText(hgc.editor()); 54 | m_mergeEdit->setText(hgc.merge()); 55 | 56 | QString verbose = hgc.property(QLatin1String("ui"), QLatin1String("verbose")); 57 | if (verbose.isEmpty() || verbose == QStringLiteral("False")) { 58 | m_verboseCheck->setChecked(false); 59 | } else if (verbose == QLatin1String("True")) { 60 | m_verboseCheck->setChecked(true); 61 | } 62 | } 63 | 64 | void HgGeneralConfigWidget::saveConfig() 65 | { 66 | HgConfig hgc(m_configType); 67 | hgc.setUsername(m_userEdit->text()); 68 | hgc.setEditor(m_editorEdit->text()); 69 | hgc.setMerge(m_mergeEdit->text()); 70 | 71 | if (m_verboseCheck->checkState() == Qt::Checked) { 72 | hgc.setProperty(QLatin1String("ui"), QLatin1String("verbose"), QLatin1String("True")); 73 | } else { 74 | hgc.setProperty(QLatin1String("ui"), QLatin1String("verbose"), QLatin1String("False")); 75 | } 76 | } 77 | 78 | #include "moc_generalconfig.cpp" 79 | -------------------------------------------------------------------------------- /hg/config-widgets/generalconfig.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGGENERAL_CONFIG_WIDGET_H 8 | #define HGGENERAL_CONFIG_WIDGET_H 9 | 10 | #include "hgconfig.h" 11 | #include 12 | 13 | class QLineEdit; 14 | class QCheckBox; 15 | 16 | /** 17 | * General configuration options, usually found [ui] group of hgrc file. 18 | * Can be used with both, repository hgrc as well as global hgrc 19 | */ 20 | class HgGeneralConfigWidget : public QWidget 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | /** 26 | * @param type Which configuration file to use, Repo or Global 27 | */ 28 | explicit HgGeneralConfigWidget(HgConfig::ConfigType type, QWidget *parent = nullptr); 29 | 30 | public Q_SLOTS: 31 | void saveConfig(); 32 | void loadConfig(); 33 | 34 | private: 35 | void setupUI(); 36 | 37 | private: 38 | QLineEdit *m_userEdit; 39 | QLineEdit *m_editorEdit; 40 | QLineEdit *m_mergeEdit; 41 | QCheckBox *m_verboseCheck; 42 | 43 | HgConfig::ConfigType m_configType; 44 | }; 45 | 46 | #endif // HGGENERAL_CONFIG_WIDGET_H 47 | -------------------------------------------------------------------------------- /hg/config-widgets/ignorewidget.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGCONFIG_IGNOREWIDGET_H 8 | #define HGCONFIG_IGNOREWIDGET_H 9 | 10 | #include 11 | 12 | class QListWidget; 13 | class QPushButton; 14 | class QInputDialog; 15 | 16 | /** 17 | * Widget to manage ignored files. Used .hgignore file in repository. 18 | * Repository only configuration 19 | */ 20 | class HgIgnoreWidget : public QWidget 21 | { 22 | Q_OBJECT 23 | public: 24 | explicit HgIgnoreWidget(QWidget *parent = nullptr); 25 | 26 | void loadConfig(); 27 | void saveConfig(); 28 | 29 | private Q_SLOTS: 30 | void slotAddFiles(); 31 | void slotAddPattern(); 32 | void slotRemoveEntries(); 33 | void slotEditEntry(); 34 | 35 | private: 36 | void setupUI(); 37 | void setupUntrackedList(); 38 | 39 | private: 40 | QListWidget *m_ignoreTable; 41 | QListWidget *m_untrackedList; 42 | QPushButton *m_addFiles; 43 | QPushButton *m_addPattern; 44 | QPushButton *m_removeEntries; 45 | QPushButton *m_editEntry; 46 | }; 47 | 48 | #endif /* HGCONFIG_IGNOREWIDGET_H */ 49 | -------------------------------------------------------------------------------- /hg/config-widgets/pathconfig.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGPATH_CONFIG_H 8 | #define HGPATH_CONFIG_H 9 | 10 | #include 11 | #include 12 | #include 13 | 14 | class QTableWidget; 15 | class QTableWidgetItem; 16 | class QPushButton; 17 | class QAction; 18 | class QMenu; 19 | 20 | /** 21 | * UI to add, remove and modify paths in repository's hgrc file. Can be used with 22 | * repository hgrc file only. 23 | */ 24 | class HgPathConfigWidget : public QWidget 25 | { 26 | Q_OBJECT 27 | 28 | public: 29 | explicit HgPathConfigWidget(QWidget *parent = nullptr); 30 | 31 | public Q_SLOTS: 32 | void saveConfig(); 33 | void loadConfig(); 34 | 35 | private: 36 | void setupUI(); 37 | 38 | /** 39 | * Prepare context menu and its actions for table widget showing path. 40 | */ 41 | void setupContextMenu(); 42 | 43 | private Q_SLOTS: 44 | /** 45 | * Show context menu and changed enabled status of actions according 46 | * to the position where menu is requested. 47 | */ 48 | void slotContextMenuRequested(const QPoint &pos); 49 | void slotCellChanged(int row, int col); 50 | void slotSelectionChanged(); 51 | 52 | void slotAddPath(); 53 | void slotModifyPath(); 54 | void slotDeletePath(); 55 | 56 | private: 57 | QTableWidget *m_pathsListWidget; 58 | bool m_loadingCell; 59 | bool m_allValidData; 60 | bool m_newAdd; 61 | QString m_oldSelValue; 62 | 63 | QPushButton *m_addPathButton; 64 | QPushButton *m_deletePathButton; 65 | QPushButton *m_modifyPathButton; 66 | 67 | QAction *m_addAction; 68 | QAction *m_modifyAction; 69 | QAction *m_deleteAction; 70 | QMenu *m_contextMenu; 71 | 72 | QMap m_remotePathMap; 73 | QStringList m_removeList; 74 | }; 75 | 76 | #endif // HGPATH_CONFIG_H 77 | -------------------------------------------------------------------------------- /hg/config-widgets/pluginsettings.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "pluginsettings.h" 8 | #include "hgconfig.h" 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | 19 | HgPluginSettingsWidget::HgPluginSettingsWidget(QWidget *parent) 20 | : QWidget(parent) 21 | , m_config(nullptr) 22 | { 23 | setupUI(); 24 | loadConfig(); 25 | 26 | connect(m_diffBrowseButton, SIGNAL(clicked()), this, SLOT(browse_diff())); 27 | } 28 | 29 | HgPluginSettingsWidget::~HgPluginSettingsWidget() 30 | { 31 | delete m_config; 32 | } 33 | 34 | void HgPluginSettingsWidget::saveConfig() 35 | { 36 | KConfigGroup group(m_config, QStringLiteral("diff")); 37 | group.writeEntry(QLatin1String("exec"), m_diffProg->text()); 38 | group.config()->sync(); 39 | } 40 | 41 | void HgPluginSettingsWidget::loadConfig() 42 | { 43 | QString oldPath = QDir::homePath() + QLatin1String("/.dolphin-hg"); 44 | if (QFile::exists(oldPath)) { 45 | // Copy old config file into user .config directory 46 | QFile::copy(oldPath, QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation) + QLatin1String("/dolphin-hg")); 47 | QFile::remove(oldPath); 48 | } 49 | m_config = new KConfig(QLatin1String("dolphin-hg"), KConfig::SimpleConfig, QStandardPaths::GenericConfigLocation); 50 | 51 | KConfigGroup group(m_config, QStringLiteral("diff")); 52 | QString diffExec = group.readEntry(QLatin1String("exec"), QString()).trimmed(); 53 | m_diffProg->setText(diffExec); 54 | } 55 | 56 | void HgPluginSettingsWidget::setupUI() 57 | { 58 | m_diffProg = new QLineEdit; 59 | m_diffBrowseButton = new QPushButton(xi18nc("@label", "Browse")); 60 | QLabel *diffProgLabel = new QLabel(xi18nc("@label", "Visual Diff Executable")); 61 | 62 | QGridLayout *layout = new QGridLayout; 63 | layout->addWidget(diffProgLabel, 0, 0); 64 | layout->addWidget(m_diffProg, 0, 1); 65 | layout->addWidget(m_diffBrowseButton, 0, 2); 66 | layout->setRowStretch(layout->rowCount(), 1); 67 | 68 | setLayout(layout); 69 | } 70 | 71 | void HgPluginSettingsWidget::browse_diff() 72 | { 73 | QString path = QFileDialog::getOpenFileName(); 74 | if (path.isEmpty()) { 75 | return; 76 | } 77 | 78 | m_diffProg->setText(path); 79 | } 80 | 81 | #include "moc_pluginsettings.cpp" 82 | -------------------------------------------------------------------------------- /hg/config-widgets/pluginsettings.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HG_PLUGIN_SETTINGS_WIDGET_H 8 | #define HG_PLUGIN_SETTINGS_WIDGET_H 9 | 10 | #include "hgconfig.h" 11 | #include 12 | 13 | class QLineEdit; 14 | class KConfig; 15 | class QPushButton; 16 | 17 | /** 18 | * Plugin Specific settings. Not those supposed to be saved in 19 | * .hgrc file, but in $HOME/.dolphin-hg 20 | */ 21 | class HgPluginSettingsWidget : public QWidget 22 | { 23 | Q_OBJECT 24 | 25 | public: 26 | explicit HgPluginSettingsWidget(QWidget *parent = nullptr); 27 | ~HgPluginSettingsWidget() override; 28 | 29 | public Q_SLOTS: 30 | void saveConfig(); 31 | void loadConfig(); 32 | 33 | private Q_SLOTS: 34 | void browse_diff(); 35 | 36 | private: 37 | void setupUI(); 38 | 39 | private: 40 | QLineEdit *m_diffProg; 41 | KConfig *m_config; 42 | QPushButton *m_diffBrowseButton; 43 | }; 44 | 45 | #endif // HG_PLUGIN_SETTINGS_WIDGET_H 46 | -------------------------------------------------------------------------------- /hg/configdialog.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "configdialog.h" 8 | #include "fileviewhgpluginsettings.h" 9 | #include "hgwrapper.h" 10 | 11 | #include "config-widgets/generalconfig.h" 12 | #include "config-widgets/ignorewidget.h" 13 | #include "config-widgets/pathconfig.h" 14 | #include "config-widgets/pluginsettings.h" 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | HgConfigDialog::HgConfigDialog(HgConfig::ConfigType type, QWidget *parent) 22 | : KPageDialog(parent) 23 | , m_configType(type) 24 | { 25 | // dialog properties 26 | if (m_configType == HgConfig::RepoConfig) { 27 | this->setWindowTitle(xi18nc("@title:window", "Hg Repository Configuration")); 28 | } else { 29 | this->setWindowTitle(xi18nc("@title:window", "Hg Global Configuration")); 30 | } 31 | this->setStandardButtons(QDialogButtonBox::Ok | QDialogButtonBox::Apply | QDialogButtonBox::Cancel); 32 | 33 | setupUI(); 34 | loadGeometry(); 35 | 36 | connect(this, SIGNAL(finished(int)), this, SLOT(saveGeometry())); 37 | } 38 | 39 | void HgConfigDialog::setupUI() 40 | { 41 | m_generalConfig = new HgGeneralConfigWidget(m_configType); 42 | addPage(m_generalConfig, xi18nc("@label:group", "General Settings")); 43 | 44 | if (m_configType == HgConfig::RepoConfig) { 45 | m_pathConfig = new HgPathConfigWidget; 46 | addPage(m_pathConfig, xi18nc("@label:group", "Repository Paths")); 47 | 48 | m_ignoreWidget = new HgIgnoreWidget; 49 | addPage(m_ignoreWidget, xi18nc("@label:group", "Ignored Files")); 50 | } else if (m_configType == HgConfig::GlobalConfig) { 51 | m_pluginSetting = new HgPluginSettingsWidget; 52 | addPage(m_pluginSetting, xi18nc("@label:group", "Plugin Settings")); 53 | } 54 | } 55 | 56 | void HgConfigDialog::saveSettings() 57 | { 58 | qDebug() << "Saving Mercurial configuration"; 59 | m_generalConfig->saveConfig(); 60 | if (m_configType == HgConfig::RepoConfig) { 61 | m_pathConfig->saveConfig(); 62 | m_ignoreWidget->saveConfig(); 63 | } else if (m_configType == HgConfig::GlobalConfig) { 64 | m_pluginSetting->saveConfig(); 65 | } 66 | } 67 | 68 | void HgConfigDialog::done(int r) 69 | { 70 | if (r == QDialog::Accepted) { 71 | saveSettings(); 72 | QDialog::done(r); 73 | } else { 74 | QDialog::done(r); 75 | } 76 | } 77 | 78 | void HgConfigDialog::loadGeometry() 79 | { 80 | FileViewHgPluginSettings *settings = FileViewHgPluginSettings::self(); 81 | this->resize(QSize(settings->configDialogWidth(), settings->configDialogHeight())); 82 | } 83 | 84 | void HgConfigDialog::saveGeometry() 85 | { 86 | FileViewHgPluginSettings *settings = FileViewHgPluginSettings::self(); 87 | settings->setConfigDialogHeight(this->height()); 88 | settings->setConfigDialogWidth(this->width()); 89 | settings->save(); 90 | } 91 | 92 | #include "moc_configdialog.cpp" 93 | -------------------------------------------------------------------------------- /hg/configdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGCONFIGDIALOG_H 8 | #define HGCONFIGDIALOG_H 9 | 10 | #include "hgconfig.h" 11 | #include 12 | 13 | class HgGeneralConfigWidget; 14 | class HgPathConfigWidget; 15 | class HgIgnoreWidget; 16 | class HgPluginSettingsWidget; 17 | 18 | /** 19 | * Implements a dialog which provides an easy way to edit several 20 | * configuration options for Mercurial and the plugin. 21 | */ 22 | class HgConfigDialog : public KPageDialog 23 | { 24 | Q_OBJECT 25 | 26 | public: 27 | explicit HgConfigDialog(HgConfig::ConfigType type, QWidget *parent = nullptr); 28 | 29 | private: 30 | void done(int r) override; 31 | 32 | // user interface 33 | void setupUI(); 34 | 35 | private Q_SLOTS: 36 | void saveSettings(); 37 | void saveGeometry(); 38 | void loadGeometry(); 39 | 40 | private: 41 | HgGeneralConfigWidget *m_generalConfig; 42 | HgPathConfigWidget *m_pathConfig; 43 | HgIgnoreWidget *m_ignoreWidget; 44 | HgPluginSettingsWidget *m_pluginSetting; 45 | 46 | HgConfig::ConfigType m_configType; 47 | }; 48 | 49 | #endif // HGCONFIGDIALOG_H 50 | -------------------------------------------------------------------------------- /hg/createdialog.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "createdialog.h" 8 | #include "fileviewhgpluginsettings.h" 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | 17 | HgCreateDialog::HgCreateDialog(const QString &directory, QWidget *parent) 18 | : DialogBase(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, parent) 19 | , m_workingDirectory(directory) 20 | { 21 | // dialog properties 22 | this->setWindowTitle(xi18nc("@title:window", "Hg Initialize Repository")); 23 | okButton()->setText(xi18nc("@action:button", "Initialize Repository")); 24 | 25 | ////////////// 26 | // Setup UI // 27 | ////////////// 28 | 29 | m_directory = new QLabel(QLatin1String("") + m_workingDirectory + QLatin1String("")); 30 | m_repoNameEdit = new QLineEdit; 31 | 32 | QHBoxLayout *mainLayout = new QHBoxLayout; 33 | mainLayout->addWidget(m_directory); 34 | mainLayout->addWidget(m_repoNameEdit); 35 | 36 | layout()->insertLayout(0, mainLayout); 37 | m_repoNameEdit->setFocus(); 38 | } 39 | 40 | void HgCreateDialog::done(int r) 41 | { 42 | if (r == QDialog::Accepted) { 43 | QProcess process; 44 | QStringList args; 45 | args << QLatin1String("init"); 46 | if (!m_repoNameEdit->text().isEmpty()) { 47 | args << m_repoNameEdit->text(); 48 | } 49 | process.setWorkingDirectory(m_workingDirectory); 50 | process.start(QLatin1String("hg"), args); 51 | process.waitForFinished(); 52 | 53 | if (process.exitCode() == 0 && process.exitStatus() == QProcess::NormalExit) { 54 | QDialog::done(r); 55 | } else { 56 | KMessageBox::error(this, xi18nc("error message", "Error creating repository!")); 57 | } 58 | } else { 59 | QDialog::done(r); 60 | } 61 | } 62 | 63 | #include "moc_createdialog.cpp" 64 | -------------------------------------------------------------------------------- /hg/createdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGCREATEDIALOG_H 8 | #define HGCREATEDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | 13 | class QLineEdit; 14 | class QLabel; 15 | 16 | /** 17 | * Dialog to initialize new mercurial repository 18 | */ 19 | class HgCreateDialog : public DialogBase 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | explicit HgCreateDialog(const QString &directory, QWidget *parent = nullptr); 25 | 26 | private: 27 | void done(int r) override; 28 | void setWorkingDirectory(const QString &directory); 29 | 30 | private: 31 | QString m_workingDirectory; 32 | QLineEdit *m_repoNameEdit; 33 | QLabel *m_directory; 34 | }; 35 | 36 | #endif // HGCREATEDIALOG_H 37 | -------------------------------------------------------------------------------- /hg/dialogbase.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2015 Tomasz Bojczuk 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "dialogbase.h" 8 | #include 9 | #include 10 | 11 | DialogBase::DialogBase(QDialogButtonBox::StandardButtons buttons, QWidget *parent) 12 | : QDialog(parent) 13 | , m_okButton(nullptr) 14 | , m_cancelButton(nullptr) 15 | { 16 | m_buttonBox = new QDialogButtonBox(this); 17 | if (buttons & QDialogButtonBox::Ok) { 18 | m_okButton = m_buttonBox->addButton(QDialogButtonBox::Ok); 19 | m_okButton->setDefault(true); 20 | } 21 | if (buttons & QDialogButtonBox::Cancel) { 22 | m_cancelButton = m_buttonBox->addButton(QDialogButtonBox::Cancel); 23 | } 24 | 25 | m_layout = new QBoxLayout(QBoxLayout::TopToBottom); 26 | m_layout->addWidget(m_buttonBox); 27 | 28 | setLayout(m_layout); 29 | 30 | connect(m_buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept); 31 | connect(m_buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject); 32 | } 33 | 34 | void DialogBase::keyReleaseEvent(QKeyEvent *event) 35 | { 36 | if (event->key() == Qt::Key_Return && event->modifiers() == Qt::ControlModifier) { 37 | done(Accepted); 38 | } else { 39 | QWidget::keyReleaseEvent(event); 40 | } 41 | } 42 | 43 | #include "moc_dialogbase.cpp" 44 | -------------------------------------------------------------------------------- /hg/dialogbase.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2015 Tomasz Bojczuk 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef DIALOGBASE_H 8 | #define DIALOGBASE_H 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | /** 16 | * QDialog subclass with common method used in the plugin classes. 17 | * It has already initialized layout (@class QBoxLayout), with @p buttonBox(), 18 | * so adding other widgets/layout should be invoked by: 19 | * @p layout()->insert() to keep buttonBox at the bottom. 20 | * It also handles CTRL+Enter shortcut to accept - as old Kdialog did. 21 | */ 22 | class DialogBase : public QDialog 23 | { 24 | Q_OBJECT 25 | 26 | public: 27 | /** 28 | * Creates Dialog window with given buttons types. 29 | * But only OK and Cancel are supported so far 30 | * and available through @p okButton() and @p cancelButton() 31 | */ 32 | explicit DialogBase(QDialogButtonBox::StandardButtons buttons, QWidget *parent = nullptr); 33 | 34 | QPushButton *okButton() 35 | { 36 | return m_okButton; 37 | } 38 | QPushButton *cancelButton() 39 | { 40 | return m_cancelButton; 41 | } 42 | QDialogButtonBox *buttonBox() 43 | { 44 | return m_buttonBox; 45 | } 46 | /** 47 | * Layout of a dialog. By default vertical (@p QBoxLayout::TopToBottom) 48 | * Use layout()->insertLayout(0, someLaayout) or 49 | * layout()->insertWidget(0, someWidget) 50 | * to keep buttonBox at the dialog bottom. 51 | */ 52 | QBoxLayout *layout() 53 | { 54 | return m_layout; 55 | } 56 | 57 | protected: 58 | void keyReleaseEvent(QKeyEvent *event) override; // to handle CTRL+Enter shortcut to accept dialog 59 | 60 | private: 61 | QPushButton *m_okButton; 62 | QPushButton *m_cancelButton; 63 | QDialogButtonBox *m_buttonBox; 64 | QBoxLayout *m_layout; 65 | }; 66 | 67 | #endif // DIALOGBASE_H 68 | -------------------------------------------------------------------------------- /hg/exportdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGEXPORTDIALOG_H 8 | #define HGEXPORTDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | 12 | class HgCommitInfoWidget; 13 | class QCheckBox; 14 | class QGroupBox; 15 | 16 | // TODO: Some helper for writing patterns 17 | // 18 | /** 19 | * Dialog to implement mercurial export feature. Dialogs presents list of 20 | * changesets from which the user will select entries and export a series of 21 | * patch files for each changeset. 22 | */ 23 | class HgExportDialog : public DialogBase 24 | { 25 | Q_OBJECT 26 | 27 | public: 28 | explicit HgExportDialog(QWidget *parent = nullptr); 29 | 30 | public Q_SLOTS: 31 | void done(int r) override; 32 | 33 | private Q_SLOTS: 34 | void saveGeometry(); 35 | 36 | private: 37 | void setupUI(); 38 | void loadCommits(); 39 | 40 | private: 41 | HgCommitInfoWidget *m_commitInfoWidget; 42 | 43 | // options 44 | QGroupBox *m_optionGroup; 45 | QCheckBox *m_optText; 46 | QCheckBox *m_optGit; 47 | QCheckBox *m_optNoDates; 48 | }; 49 | 50 | #endif /* HGEXPORTDIALOG_H */ 51 | -------------------------------------------------------------------------------- /hg/fileviewhgplugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "MimeTypes": [ 4 | "text/plain" 5 | ], 6 | "Name": "Mercurial", 7 | "Name[ast]": "Mercurial", 8 | "Name[az]": "Mercurial", 9 | "Name[bg]": "Mercurial", 10 | "Name[ca@valencia]": "Mercurial", 11 | "Name[ca]": "Mercurial", 12 | "Name[cs]": "Mercurial", 13 | "Name[da]": "Mercurial", 14 | "Name[de]": "Mercurial", 15 | "Name[el]": "Mercurial", 16 | "Name[en_GB]": "Mercurial", 17 | "Name[eo]": "Mercurial", 18 | "Name[es]": "Mercurial", 19 | "Name[eu]": "Mercurial", 20 | "Name[fi]": "Mercurial", 21 | "Name[fr]": "Mercurial", 22 | "Name[gl]": "Mercurial", 23 | "Name[he]": "Mercurial", 24 | "Name[hu]": "Mercurial", 25 | "Name[ia]": "Mercurial", 26 | "Name[id]": "Mercurial", 27 | "Name[ie]": "Mercurial", 28 | "Name[is]": "Mercurial", 29 | "Name[it]": "Mercurial", 30 | "Name[ka]": "Mercurial", 31 | "Name[ko]": "Mercurial", 32 | "Name[lv]": "Mercurial", 33 | "Name[nb]": "Mercurial", 34 | "Name[nl]": "Mercurial", 35 | "Name[nn]": "Mercurial", 36 | "Name[pa]": "ਮਰਕਰੀਅਲ", 37 | "Name[pl]": "Mercurial", 38 | "Name[pt]": "Mercurial", 39 | "Name[pt_BR]": "Mercurial", 40 | "Name[ro]": "Mercurial", 41 | "Name[ru]": "Mercurial", 42 | "Name[sa]": "बुधस्य", 43 | "Name[sk]": "Mercurial", 44 | "Name[sl]": "Mercurial", 45 | "Name[sv]": "Mercurial", 46 | "Name[tr]": "Mercurial", 47 | "Name[uk]": "Mercurial", 48 | "Name[vi]": "Mercurial", 49 | "Name[x-test]": "xxMercurialxx", 50 | "Name[zh_CN]": "Mercurial", 51 | "Name[zh_TW]": "Mercurial" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /hg/fileviewhgpluginsettings.kcfgc: -------------------------------------------------------------------------------- 1 | File=fileviewhgpluginsettings.kcfg 2 | ClassName=FileViewHgPluginSettings 3 | Singleton=true 4 | Mutators=true 5 | -------------------------------------------------------------------------------- /hg/importdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGIMPORTDIALOG_H 8 | #define HGIMPORTDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | 12 | class QListWidget; 13 | class QCheckBox; 14 | class QGroupBox; 15 | 16 | /** 17 | * Implements dialog to import changesets from patch files generated by 18 | * Mercurial's export command 19 | */ 20 | class HgImportDialog : public DialogBase 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit HgImportDialog(QWidget *parent = nullptr); 26 | 27 | public Q_SLOTS: 28 | void done(int r) override; 29 | 30 | private Q_SLOTS: 31 | void saveGeometry(); 32 | void slotAddPatches(); 33 | void slotRemovePatches(); 34 | 35 | private: 36 | void setupUI(); 37 | void getPatchInfo(const QString &fileName); 38 | 39 | private: 40 | QListWidget *m_patchList; 41 | QPushButton *m_addPatches; 42 | QPushButton *m_removePatches; 43 | 44 | // options 45 | QGroupBox *m_optionGroup; 46 | QCheckBox *m_optNoCommit; 47 | QCheckBox *m_optBypass; 48 | QCheckBox *m_optExact; 49 | QCheckBox *m_optForce; 50 | }; 51 | 52 | #endif /* HGIMPORTDIALOG_H */ 53 | -------------------------------------------------------------------------------- /hg/mergedialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGMERGEDIALOG_H 8 | #define HGMERGEDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | 13 | class QLabel; 14 | class HgCommitInfoWidget; 15 | 16 | /** 17 | * Implements dialog to perform merge operations 18 | */ 19 | class HgMergeDialog : public DialogBase 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | explicit HgMergeDialog(QWidget *parent = nullptr); 25 | void done(int r) override; 26 | 27 | private Q_SLOTS: 28 | void saveGeometry(); 29 | 30 | private: 31 | void updateInitialDialog(); 32 | 33 | private: 34 | QLabel *m_currentChangeset; 35 | HgCommitInfoWidget *m_commitInfoWidget; 36 | }; 37 | 38 | #endif // HGMERGEDIALOG_H 39 | -------------------------------------------------------------------------------- /hg/pathselector.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "pathselector.h" 8 | #include "hgconfig.h" 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | 16 | HgPathSelector::HgPathSelector(QWidget *parent) 17 | : QWidget(parent) 18 | { 19 | setupUI(); 20 | reload(); 21 | 22 | // connections 23 | connect(m_selectPathAlias, SIGNAL(currentIndexChanged(int)), this, SLOT(slotChangeEditUrl(int))); 24 | connect(m_selectPathAlias, SIGNAL(highlighted(int)), this, SLOT(slotChangeEditUrl(int))); 25 | } 26 | 27 | void HgPathSelector::setupUI() 28 | { 29 | QHBoxLayout *urlLayout = new QHBoxLayout; 30 | m_selectPathAlias = new KComboBox; 31 | m_urlEdit = new QLineEdit; 32 | m_urlEdit->setReadOnly(true); 33 | 34 | urlLayout->addWidget(m_selectPathAlias); 35 | urlLayout->addWidget(m_urlEdit); 36 | 37 | setLayout(urlLayout); 38 | } 39 | 40 | void HgPathSelector::reload() 41 | { 42 | HgConfig hgc(HgConfig::RepoConfig); 43 | m_pathList = hgc.repoRemotePathList(); 44 | 45 | m_selectPathAlias->clear(); 46 | 47 | QMutableMapIterator it(m_pathList); 48 | while (it.hasNext()) { 49 | it.next(); 50 | if (it.key() == QLatin1String("default")) { 51 | m_selectPathAlias->insertItem(0, it.key()); 52 | } else { 53 | m_selectPathAlias->addItem(it.key()); 54 | } 55 | } 56 | 57 | m_selectPathAlias->addItem(xi18nc("@label:combobox", "edit")); 58 | slotChangeEditUrl(0); 59 | } 60 | 61 | void HgPathSelector::slotChangeEditUrl(int index) 62 | { 63 | if (index == m_selectPathAlias->count() - 1) { /// enter URL manually 64 | m_urlEdit->setReadOnly(false); 65 | m_urlEdit->clear(); 66 | m_urlEdit->setFocus(); 67 | } else { 68 | QString url = m_pathList[m_selectPathAlias->itemText(index)]; 69 | m_urlEdit->setText(url); 70 | m_urlEdit->setReadOnly(true); 71 | } 72 | } 73 | 74 | const QString HgPathSelector::remote() const 75 | { 76 | return (m_selectPathAlias->currentIndex() == m_selectPathAlias->count() - 1) ? m_urlEdit->text() : m_selectPathAlias->currentText(); 77 | } 78 | 79 | #include "moc_pathselector.cpp" 80 | -------------------------------------------------------------------------------- /hg/pathselector.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGPATHSELECTOR_H 8 | #define HGPATHSELECTOR_H 9 | 10 | #include 11 | #include 12 | 13 | class KComboBox; 14 | class QLineEdit; 15 | 16 | /** 17 | * A simple widget which presents a ComboBox to select list of Path aliases 18 | * stored in .hgrc file and show their URL. URL's can be entered manually 19 | * as well. 20 | */ 21 | class HgPathSelector : public QWidget 22 | { 23 | Q_OBJECT 24 | 25 | public: 26 | explicit HgPathSelector(QWidget *parent = nullptr); 27 | 28 | /** 29 | * @return Return QString containing the selected/entered alias/URL 30 | */ 31 | const QString remote() const; 32 | 33 | public Q_SLOTS: 34 | void reload(); 35 | 36 | private: 37 | void setupUI(); 38 | 39 | private Q_SLOTS: 40 | void slotChangeEditUrl(int index); 41 | 42 | private: 43 | QMap m_pathList; 44 | KComboBox *m_selectPathAlias; 45 | QLineEdit *m_urlEdit; 46 | }; 47 | 48 | #endif /* HGPATHSELECTOR_H */ 49 | -------------------------------------------------------------------------------- /hg/pulldialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGPULLDIALOG_H 8 | #define HGPULLDIALOG_H 9 | 10 | #include "syncdialogbase.h" 11 | 12 | class QCheckBox; 13 | class QTableWidget; 14 | class KTextEdit; 15 | class QString; 16 | 17 | /** 18 | * Dialog to implement pull operation 19 | */ 20 | class HgPullDialog : public HgSyncBaseDialog 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit HgPullDialog(QWidget *parent = nullptr); 26 | 27 | private: 28 | void setOptions() override; 29 | void parseUpdateChanges(const QString &input) override; 30 | void appendOptionArguments(QStringList &args) override; 31 | void createChangesGroup() override; 32 | void getHgChangesArguments(QStringList &args) override; 33 | void noChangesMessage() override; 34 | 35 | private Q_SLOTS: 36 | void slotUpdateChangesGeometry(); 37 | void readBigSize() override; 38 | void writeBigSize() override; 39 | 40 | private: 41 | // Options 42 | QCheckBox *m_optUpdate; 43 | QCheckBox *m_optInsecure; 44 | QCheckBox *m_optForce; 45 | QGroupBox *m_optionGroup; 46 | 47 | // incoming Changes 48 | QTableWidget *m_changesList; 49 | }; 50 | 51 | #endif // HGPULLDIALOG_H 52 | -------------------------------------------------------------------------------- /hg/pushdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGPUSHDIALOG_H 8 | #define HGPUSHDIALOG_H 9 | 10 | #include "hgwrapper.h" 11 | #include "syncdialogbase.h" 12 | 13 | class QCheckBox; 14 | class QTableWidget; 15 | class KTextEdit; 16 | class QGroupBox; 17 | 18 | /** 19 | * Dialog to implement Push operation 20 | */ 21 | class HgPushDialog : public HgSyncBaseDialog 22 | { 23 | Q_OBJECT 24 | 25 | public: 26 | explicit HgPushDialog(QWidget *parent = nullptr); 27 | 28 | private: 29 | void setOptions() override; 30 | void createChangesGroup() override; 31 | void parseUpdateChanges(const QString &input) override; 32 | void appendOptionArguments(QStringList &args) override; 33 | void getHgChangesArguments(QStringList &args) override; 34 | void noChangesMessage() override; 35 | 36 | private Q_SLOTS: 37 | void slotOutSelChanged(); 38 | void slotUpdateChangesGeometry(); 39 | void readBigSize() override; 40 | void writeBigSize() override; 41 | 42 | private: 43 | // Options 44 | QCheckBox *m_optAllowNewBranch; 45 | QCheckBox *m_optInsecure; 46 | QCheckBox *m_optForce; 47 | QGroupBox *m_optionGroup; 48 | 49 | // outgoing Changes 50 | QTableWidget *m_outChangesList; 51 | KTextEdit *m_changesetInfo; 52 | }; 53 | 54 | #endif // HGPUSHDIALOG_H 55 | -------------------------------------------------------------------------------- /hg/renamedialog.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "renamedialog.h" 8 | #include "hgwrapper.h" 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | 18 | HgRenameDialog::HgRenameDialog(const KFileItem &source, QWidget *parent) 19 | : DialogBase(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, parent) 20 | , m_source(source.name()) 21 | , m_source_dir(QDir(source.url().fileName()).dirName()) // FIXME seems to be unused at all, anyway be careful porting to pure KF5 22 | // m_source_dir(source.url().directory()) 23 | { 24 | this->setWindowTitle(xi18nc("@title:window", "Hg Rename")); 25 | 26 | okButton()->setText(xi18nc("@action:button", "Rename")); 27 | okButton()->setIcon(QIcon::fromTheme(QStringLiteral("list-rename"))); 28 | 29 | QGridLayout *mainLayout = new QGridLayout(this); 30 | 31 | QLabel *sourceLabel = new QLabel(xi18nc("@label:label to source file", "Source "), this); 32 | QLabel *sourceFileLabel = new QLabel(QLatin1String("") + m_source + QLatin1String("")); 33 | mainLayout->addWidget(sourceLabel, 0, 0); 34 | mainLayout->addWidget(sourceFileLabel, 0, 1); 35 | 36 | QLabel *destinationLabel = new QLabel(xi18nc("@label:rename", "Rename to "), this); 37 | m_destinationFile = new QLineEdit(m_source, this); 38 | mainLayout->addWidget(destinationLabel, 1, 0); 39 | mainLayout->addWidget(m_destinationFile, 1, 1); 40 | 41 | layout()->insertLayout(0, mainLayout); 42 | 43 | m_destinationFile->setFocus(); 44 | m_destinationFile->selectAll(); 45 | 46 | connect(m_destinationFile, &QLineEdit::textChanged, this, &HgRenameDialog::slotTextChanged); 47 | } 48 | 49 | void HgRenameDialog::slotTextChanged(const QString &text) 50 | { 51 | okButton()->setEnabled(text.length() != 0); 52 | } 53 | 54 | void HgRenameDialog::done(int r) 55 | { 56 | if (r == QDialog::Accepted) { 57 | HgWrapper *hgi = HgWrapper::instance(); 58 | hgi->renameFile(source(), destination()); 59 | } 60 | QDialog::done(r); 61 | } 62 | 63 | QString HgRenameDialog::source() const 64 | { 65 | return m_source; 66 | } 67 | 68 | QString HgRenameDialog::destination() const 69 | { 70 | return m_destinationFile->text(); 71 | } 72 | 73 | #include "moc_renamedialog.cpp" 74 | -------------------------------------------------------------------------------- /hg/renamedialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGRENAMEDIALOG_H 8 | #define HGRENAMEDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | 13 | class QLineEdit; 14 | class KFileItem; 15 | class QPushButton; 16 | 17 | /** 18 | * Dialog to rename files Mercurial way 19 | */ 20 | class HgRenameDialog : public DialogBase 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit HgRenameDialog(const KFileItem &source, QWidget *parent = nullptr); 26 | QString source() const; 27 | QString destination() const; 28 | void done(int r) override; 29 | 30 | private Q_SLOTS: 31 | void slotTextChanged(const QString &text); 32 | 33 | private: 34 | QString m_source; 35 | QString m_source_dir; 36 | QLineEdit *m_destinationFile; 37 | }; 38 | 39 | #endif // HGRENAMEDIALOG_H 40 | -------------------------------------------------------------------------------- /hg/servedialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HG_SERVE_DIALOG 8 | #define HG_SERVE_DIALOG 9 | 10 | #include "dialogbase.h" 11 | 12 | class QSpinBox; 13 | class QTextEdit; 14 | class QLabel; 15 | class HgServeWrapper; 16 | 17 | /** 18 | * Implements dialog to Start and Stop Mercurial web server. 19 | * Several server instances can be handled. 20 | */ 21 | class HgServeDialog : public DialogBase 22 | { 23 | Q_OBJECT 24 | 25 | public: 26 | explicit HgServeDialog(QWidget *parent = nullptr); 27 | void setupUI(); 28 | void loadConfig(); 29 | 30 | public Q_SLOTS: 31 | void slotStart(); 32 | void slotStop(); 33 | void slotBrowse(); // opens system defined browser with localhost:m_portNumber->value() 34 | 35 | private Q_SLOTS: 36 | void slotUpdateButtons(); 37 | void slotServerError(); 38 | void saveGeometry(); 39 | 40 | /** 41 | * Append stdout and stderr to m_logEdit 42 | */ 43 | void appendServerOutput(const QString &repoLocation, const QString &line); 44 | 45 | private: 46 | QSpinBox *m_portNumber; 47 | QPushButton *m_startButton; 48 | QPushButton *m_stopButton; 49 | QPushButton *m_browseButton; 50 | QTextEdit *m_logEdit; 51 | QLabel *m_repoPathLabel; 52 | 53 | HgServeWrapper *m_serverWrapper; 54 | }; 55 | 56 | #endif /* HG_SERVE_DIALOG */ 57 | -------------------------------------------------------------------------------- /hg/statuslist.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | SPDX-FileCopyrightText: 2015 Tomasz Bojczuk 4 | 5 | SPDX-License-Identifier: GPL-2.0-or-later 6 | */ 7 | 8 | #ifndef STATUSLIST_H 9 | #define STATUSLIST_H 10 | 11 | #include 12 | #include 13 | 14 | class QTableWidget; 15 | 16 | /** 17 | * Shows a list of files and their corresponding version states in a table. 18 | * Used in commit dialog. 19 | */ 20 | class HgStatusList : public QGroupBox 21 | { 22 | Q_OBJECT 23 | 24 | public: 25 | explicit HgStatusList(QWidget *parent = nullptr); 26 | 27 | /** 28 | * Appends the list of selected files whose changes should be 29 | * committed. If all files are selected, nothing is appended and true 30 | * is returned. If no files are selected, false is returned. 31 | * 32 | * @param files Append all the selected files to this. If all files are 33 | * selected, nothing is appended 34 | * @return If at least one file is selected, true is returned; otherwise 35 | * false. 36 | */ 37 | bool getSelectionForCommit(QStringList &files); 38 | 39 | private Q_SLOTS: 40 | void reloadStatusTable(); 41 | void currentItemChangedSlot(); 42 | void headerClickedSlot(int index); 43 | 44 | Q_SIGNALS: 45 | void itemSelectionChanged(const char status, const QString &fileName); 46 | 47 | private: 48 | QString m_hgBaseDir; 49 | QTableWidget *m_statusTable; 50 | bool m_allWhereChecked; // state of all check boxes 51 | bool m_sortIndex; // true - ascending, false - descending 52 | }; 53 | 54 | #endif // STATUSLIST_H 55 | -------------------------------------------------------------------------------- /hg/syncdialogbase.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGSYNCDIALOGBASE_H 8 | #define HGSYNCDIALOGBASE_H 9 | 10 | #include "hgwrapper.h" 11 | 12 | #include "dialogbase.h" 13 | #include 14 | #include 15 | #include 16 | #include 17 | 18 | class QLabel; 19 | class QCheckBox; 20 | class QGroupBox; 21 | class QProgressBar; 22 | class QTextEdit; 23 | class QComboBox; 24 | class HgPathSelector; 25 | 26 | // TODO: Save/Load dialog geometry 27 | // TODO: HTTPS login 28 | // 29 | 30 | /** 31 | * Abstract class which implements common features of Push and Pull dialog. 32 | * Inherited by HgPushDialog and HgPullDialog. 33 | */ 34 | class HgSyncBaseDialog : public DialogBase 35 | { 36 | Q_OBJECT 37 | 38 | public: 39 | enum DialogType { PushDialog, PullDialog }; 40 | 41 | explicit HgSyncBaseDialog(DialogType dialogType, QWidget *parent = nullptr); 42 | 43 | Q_SIGNALS: 44 | void changeListAvailable(); 45 | 46 | protected: 47 | void done(int r) override; 48 | void setupUI(); 49 | void createOptionGroup(); 50 | void setup(); 51 | void loadSmallSize(); 52 | void loadBigSize(); 53 | /** Changes text of @p m_optionsButton to 'Options >>' (true) or 'Options <<' (false) */ 54 | void switchOptionsButton(bool switchOn); 55 | 56 | virtual void setOptions() = 0; 57 | virtual void createChangesGroup() = 0; 58 | virtual void parseUpdateChanges(const QString &input) = 0; 59 | virtual void appendOptionArguments(QStringList &args) = 0; 60 | virtual void getHgChangesArguments(QStringList &args) = 0; 61 | virtual void noChangesMessage() = 0; 62 | 63 | protected Q_SLOTS: 64 | void slotGetChanges(); 65 | void slotChangesProcessComplete(int exitCode, QProcess::ExitStatus status); 66 | void slotChangesProcessError(); 67 | void slotOperationComplete(int exitCode, QProcess::ExitStatus status); 68 | void slotOperationError(); 69 | void slotUpdateBusy(QProcess::ProcessState state); 70 | void slotWriteBigSize(); 71 | void slotOptionsButtonClick(); 72 | virtual void writeBigSize() = 0; 73 | virtual void readBigSize() = 0; 74 | 75 | protected: 76 | HgPathSelector *m_pathSelector; 77 | QProgressBar *m_statusProg; 78 | bool m_haveChanges; 79 | bool m_terminated; 80 | HgWrapper *m_hgw; 81 | DialogType m_dialogType; 82 | 83 | // Options 84 | QList m_options; 85 | QGroupBox *m_optionGroup; 86 | 87 | // geometry 88 | QSize m_smallSize; 89 | QSize m_bigSize; 90 | 91 | // changes 92 | QPushButton *m_changesButton; 93 | QPushButton *m_optionsButton; 94 | QGroupBox *m_changesGroup; 95 | QProcess m_process; 96 | QProcess m_main_process; // should I use another process? 97 | }; 98 | 99 | #endif // HGSYNCDIALOGBASE_H 100 | -------------------------------------------------------------------------------- /hg/tagdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGTAGDIALOG_H 8 | #define HGTAGDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | 13 | class KComboBox; 14 | 15 | /** 16 | * Dialog to create/delete/list tags and update working directory to revision 17 | * represented by a specific tag. 18 | */ 19 | class HgTagDialog : public DialogBase 20 | { 21 | Q_OBJECT 22 | 23 | public: 24 | explicit HgTagDialog(QWidget *parent = nullptr); 25 | 26 | public Q_SLOTS: 27 | void slotUpdateDialog(const QString &text); 28 | void slotCreateTag(); 29 | void slotSwitch(); 30 | void slotRemoveTag(); 31 | 32 | private: 33 | void updateInitialDialog(); 34 | 35 | private: 36 | KComboBox *m_tagComboBox; 37 | QPushButton *m_createTag; 38 | QPushButton *m_updateTag; 39 | QPushButton *m_removeTag; 40 | QStringList m_tagList; 41 | }; 42 | 43 | #endif // HGTAGDIALOG_H 44 | -------------------------------------------------------------------------------- /hg/updatedialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2011 Vishesh Yadav 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef HGUPDATEDIALOG_H 8 | #define HGUPDATEDIALOG_H 9 | 10 | #include "dialogbase.h" 11 | #include 12 | 13 | class KComboBox; 14 | class QLabel; 15 | class QCheckBox; 16 | 17 | /** 18 | * Dialog to update working directory to specific revision/changeset/branch/tag. 19 | * Also shows working directory summary. 20 | */ 21 | class HgUpdateDialog : public DialogBase 22 | { 23 | Q_OBJECT 24 | 25 | public: 26 | explicit HgUpdateDialog(QWidget *parent = nullptr); 27 | 28 | public Q_SLOTS: 29 | void slotUpdateDialog(int index); 30 | 31 | private: 32 | void done(int r) override; 33 | 34 | private: 35 | enum { ToBranch, ToTag, ToRevision } m_updateTo; 36 | KComboBox *m_selectType; 37 | KComboBox *m_selectFinal; 38 | QLabel *m_currentInfo; 39 | QStringList m_selectList; 40 | QCheckBox *m_discardChanges; 41 | }; 42 | 43 | #endif // HGUPDATEDIALOG_H 44 | -------------------------------------------------------------------------------- /makefileactions/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"makefileactions\") 2 | 3 | kcoreaddons_add_plugin(makefileactions 4 | SOURCES makefileactions.cpp makefileactions.h 5 | INSTALL_NAMESPACE "kf6/kfileitemaction") 6 | 7 | target_link_libraries(makefileactions 8 | KF6::I18n 9 | KF6::KIOWidgets 10 | ) 11 | -------------------------------------------------------------------------------- /makefileactions/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | $XGETTEXT *.cpp -o $podir/makefileactions.pot 3 | -------------------------------------------------------------------------------- /makefileactions/makefileactions.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2022 Pablo Rauzy 3 | * SPDX-License-Identifier: GPL-2.0-or-later 4 | */ 5 | 6 | #ifndef MAKEFILEACTIONS_H 7 | #define MAKEFILEACTIONS_H 8 | 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | 20 | #include 21 | #include 22 | 23 | #include "targettree.h" 24 | 25 | /** 26 | * File item action plugin to execute Makefile targets. 27 | * 28 | * This class adds a "Make…" submenu to Makefiles' context menu which contains one action per target to launch it. 29 | */ 30 | class MakefileActions : public KAbstractFileItemActionPlugin 31 | { 32 | Q_OBJECT 33 | 34 | public: 35 | MakefileActions(QObject *parent, const QVariantList &args); 36 | QList actions(const KFileItemListProperties &fileItemInfos, QWidget *mainWindow) override; 37 | 38 | private: 39 | QStringList m_trustedFiles; 40 | QString m_file; 41 | bool m_openTerminal; 42 | QPointer m_proc; 43 | QString m_runningTarget; 44 | bool m_isMaking; 45 | 46 | static bool isGNUMake(); 47 | QStringList listTargets_GNU(QProcess &proc, const QString &file) const; 48 | QStringList listTargets_BSD(QProcess &proc, const QString &file) const; 49 | 50 | TargetTree targetTree() const; 51 | void buildMenu(QMenu *menu, const TargetTree &targets, QWidget *mainWindow); 52 | void addTarget(QMenu *menu, const TargetTree &target, const QString &title, QWidget *mainWindow); 53 | 54 | public Q_SLOTS: 55 | void makeTarget(const QString &target, QWidget *mainWindow); 56 | }; 57 | 58 | #endif 59 | -------------------------------------------------------------------------------- /makefileactions/makefileactions.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "Icon": "text-x-makefile", 4 | "MimeTypes": [ 5 | "text/x-makefile" 6 | ], 7 | "Name": "Makefile Actions", 8 | "Name[az]": "Fayl yaratma əməlləri", 9 | "Name[bg]": "Makefile действия", 10 | "Name[ca@valencia]": "Accions del «makefile»", 11 | "Name[ca]": "Accions del «makefile»", 12 | "Name[cs]": "Činnosti souboru Makefile", 13 | "Name[da]": "Makefile-Handlinger", 14 | "Name[el]": "Ενέργειες Makefile", 15 | "Name[en_GB]": "Makefile Actions", 16 | "Name[eo]": "Makefile-Agoj", 17 | "Name[es]": "Acciones de Makefile", 18 | "Name[eu]": "«Makefile» ekintzak", 19 | "Name[fi]": "Makefile-toiminnot", 20 | "Name[fr]": "Actions du fichier « Makefile »", 21 | "Name[gl]": "Accións de Makefile", 22 | "Name[he]": "פעולות על Makefile (הנחיות בנייה)", 23 | "Name[hu]": "Makefile műveletek", 24 | "Name[ia]": "Actiones de Makefile", 25 | "Name[is]": "Makefile-aðgerðir", 26 | "Name[it]": "Azioni Makefile", 27 | "Name[ka]": "Makefile-ის ქმედებები", 28 | "Name[ko]": "Makefile 동작", 29 | "Name[lv]": "„Makefile“ darbības", 30 | "Name[nl]": "Acties van Makefile", 31 | "Name[nn]": "Makefile-handlingar", 32 | "Name[pa]": "Makefile ਕਾਰਵਾਈਆਂ", 33 | "Name[pl]": "Działania pliku Makefile", 34 | "Name[pt_BR]": "Makefile Actions", 35 | "Name[ru]": "Сборка файлов", 36 | "Name[sa]": "Makefile क्रियाः", 37 | "Name[sk]": "Akcie makefile", 38 | "Name[sl]": "Makefile dejavnosti", 39 | "Name[sv]": "Makefile-åtgärder", 40 | "Name[ta]": "Makefile செயல்கள்", 41 | "Name[tr]": "Makefile Eylemleri", 42 | "Name[uk]": "Дії Makefile", 43 | "Name[x-test]": "xxMakefile Actionsxx", 44 | "Name[zh_CN]": "Makefile 操作", 45 | "Name[zh_TW]": "Makefile 動作" 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /makefileactions/targettree.h: -------------------------------------------------------------------------------- 1 | /* 2 | * SPDX-FileCopyrightText: 2022 Pablo Rauzy 3 | * SPDX-License-Identifier: GPL-2.0-or-later 4 | */ 5 | 6 | #ifndef MAKEFILEACTIONS_TARGET_H 7 | #define MAKEFILEACTIONS_TARGET_H 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | class TargetTree 14 | { 15 | public: 16 | TargetTree() 17 | : m_isTarget(false){}; 18 | 19 | TargetTree(const QString &prefix, bool isTarget) 20 | : m_prefix(prefix) 21 | , m_isTarget(isTarget){}; 22 | 23 | bool isTarget() const 24 | { 25 | return m_isTarget; 26 | }; 27 | 28 | QString prefix() const 29 | { 30 | return m_prefix; 31 | }; 32 | 33 | QList children() const 34 | { 35 | return m_children; 36 | }; 37 | 38 | bool insert(const QString &prefix, bool isTarget) 39 | { 40 | if (!prefix.startsWith(m_prefix)) { // nothing to do here 41 | return false; 42 | } 43 | if (prefix == m_prefix) { // already there 44 | if (isTarget) { 45 | m_isTarget = true; 46 | } 47 | return true; 48 | } 49 | // can we go deeper? 50 | for (auto &child : m_children) { 51 | if (child.insert(prefix, isTarget)) { 52 | return true; 53 | } 54 | } 55 | // if we couldn't, insert here 56 | m_children.append(TargetTree(prefix, isTarget)); 57 | return true; 58 | }; 59 | 60 | static bool cmp(const TargetTree &a, const TargetTree &b) 61 | { 62 | return (a.m_children.isEmpty() && !b.m_children.isEmpty()) || (a.m_children.isEmpty() && (a.m_prefix < b.m_prefix)) || (a.m_prefix < b.m_prefix); 63 | }; 64 | 65 | friend QDebug operator<<(QDebug dbg, const TargetTree &t) 66 | { 67 | static int indent = 0; 68 | dbg << QString(indent, QLatin1Char(' ')) << t.m_prefix << (t.m_isTarget ? "@\n" : "\n"); 69 | indent += 2; 70 | for (const TargetTree &c : t.m_children) { 71 | dbg << c; 72 | } 73 | indent -= 2; 74 | return dbg; 75 | }; 76 | 77 | private: 78 | QString m_prefix; 79 | bool m_isTarget; 80 | QList m_children; 81 | }; 82 | 83 | #endif 84 | -------------------------------------------------------------------------------- /mountiso/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"mountisoaction\") 2 | 3 | kcoreaddons_add_plugin( 4 | mountisoaction 5 | SOURCES mountisoaction.cpp mountisoaction.h 6 | INSTALL_NAMESPACE "kf6/kfileitemaction") 7 | 8 | target_link_libraries(mountisoaction 9 | Qt6::DBus 10 | KF6::I18n 11 | KF6::KIOWidgets 12 | KF6::Solid 13 | ) 14 | -------------------------------------------------------------------------------- /mountiso/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | $XGETTEXT *.cpp -o $podir/mountisoaction.pot 3 | -------------------------------------------------------------------------------- /mountiso/mountisoaction.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2020 Kwon-Young Choi 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef MOUNTISOACTION_H 8 | #define MOUNTISOACTION_H 9 | 10 | #include 11 | #include 12 | 13 | class QAction; 14 | class QWidget; 15 | 16 | class KFileItemListProperties; 17 | 18 | /** 19 | * File item action plugin to mount and unmount an iso file. 20 | * 21 | * This class adds a mount or unmount entry to an iso file contextual menu. If 22 | * the iso file is already mounted, only the unmount entry will be shown while 23 | * if the iso file is not mounted, only the mount entry will be shown. 24 | * 25 | * The current implementation uses a loop device to mount the iso file. 26 | * 27 | */ 28 | class MountIsoAction : public KAbstractFileItemActionPlugin 29 | { 30 | Q_OBJECT 31 | 32 | public: 33 | MountIsoAction(QObject *parent, const QVariantList &args); 34 | 35 | /** 36 | * Adds a mount or unmount entry to the contextual menu of an iso file. 37 | * 38 | * For a menu entry to be shown, only one file should be selected, the 39 | * mimetype of the file should be "application/x-cd-image" and the file 40 | * should be local. Then, the mount state of the iso file is checked and if 41 | * the iso file is already mounted, we get the corresponding block device. 42 | * If the iso file is not already mounted, we show a mount entry and create 43 | * a callback to mount the iso file using udisksctl. 44 | * If the iso file is already mounted, we show a unmount entry and create a 45 | * callback to unmount the iso file using udisksctl. 46 | */ 47 | QList actions(const KFileItemListProperties &fileItemInfos, QWidget *parentWidget) override; 48 | }; 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /mountiso/mountisoaction.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "Icon": "application-x-cd-image", 4 | "MimeTypes": [ 5 | "application/vnd.efi.iso", 6 | "application/vnd.efi.img", 7 | "application/x-cd-image", 8 | "application/x-raw-disk-image" 9 | ], 10 | "Name": "Mount ISO and disk images", 11 | "Name[az]": "İSO faylını disk surətini qoşmaq", 12 | "Name[bg]": "Монтиране на ISO и дискови изображения", 13 | "Name[ca@valencia]": "Muntatge d'imatges ISO i de disc", 14 | "Name[ca]": "Muntatge d'imatges ISO i de disc", 15 | "Name[cs]": "Připojit ISO a obrazy disku", 16 | "Name[da]": "Montér ISO- og disk-imagefil", 17 | "Name[de]": "ISO- und Datenträger-Abbilder einhängen", 18 | "Name[el]": "Προσάρτηση ISO και εικόνων δίσκων", 19 | "Name[en_GB]": "Mount ISO and disk images", 20 | "Name[eo]": "Munti ISO- kaj disk-binaraĵojn", 21 | "Name[es]": "Montar imágenes ISO y de disco", 22 | "Name[eu]": "Muntatu ISO eta disko irudiak", 23 | "Name[fi]": "Liitä ja irrota ISO-levykuva", 24 | "Name[fr]": "Monter des images « ISO » et de disque", 25 | "Name[gl]": "Monta imaxes ISO e de disco", 26 | "Name[he]": "עיגון ISO ודמויות כוננים", 27 | "Name[hu]": "ISO-fájlok és lemezképek csatolása", 28 | "Name[ia]": "Monta images iso e disco", 29 | "Name[id]": "Kaitkan ISO dan image disk", 30 | "Name[ie]": "Monter ISOs e images de discos", 31 | "Name[is]": "Tengja ISO- og diskmyndir", 32 | "Name[it]": "Monta ISO e immagini di dischi", 33 | "Name[ka]": "ISO და დისკის ასლების მიმაგრება", 34 | "Name[ko]": "ISO 및 디스크 이미지 마운트", 35 | "Name[lt]": "Prijungti ISO ir disko atvaizdžius", 36 | "Name[lv]": "Piemontēt ISO un disku attēlus", 37 | "Name[nb]": "Monter ISO-filer og diskbilder", 38 | "Name[nl]": "Aankoppelen van ISO- en schijfimages", 39 | "Name[nn]": "Monter ISO-filer og diskbilete", 40 | "Name[pa]": "ISO ਅਤੇ ਡਿਸਕ ਈਮੇਜ਼ਾਂ ਨੂੰ ਮਾਊਂਟ ਕਰੋ", 41 | "Name[pl]": "Podpinaj i odpinaj obrazy ISO", 42 | "Name[pt]": "Montar imagens de disco e ISO", 43 | "Name[pt_BR]": "Montar ISO e imagens de disco", 44 | "Name[ro]": "Montează imagini ISO și de disc", 45 | "Name[ru]": "Подключение и отключение образов ISO", 46 | "Name[sa]": "ISO तथा डिस्क इमेज् माउण्ट् कुर्वन्तु", 47 | "Name[sk]": "Pripojiť ISO a diskové obrazy", 48 | "Name[sl]": "Priklopi slike ISO in diskov", 49 | "Name[sv]": "Montera ISO- och diskavbilder", 50 | "Name[ta]": "ISO மற்றும் வட்டு கோப்புகளை ஏற்றும்", 51 | "Name[tr]": "ISO/Disk Kalıplarını Bağla", 52 | "Name[uk]": "Монтування образів ISO і дисків", 53 | "Name[vi]": "Gắn kết ISO và ảnh đĩa", 54 | "Name[x-test]": "xxMount ISO and disk imagesxx", 55 | "Name[zh_CN]": "挂载 ISO 和磁盘映像", 56 | "Name[zh_TW]": "掛載 ISO 與光碟映像檔" 57 | } 58 | } 59 | -------------------------------------------------------------------------------- /po/ar/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Zayed Al-Saidi , 2022. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-10-10 18:58+0400\n" 11 | "Last-Translator: Zayed Al-Saidi \n" 12 | "Language-Team: ar\n" 13 | "Language: ar\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " 18 | "&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "ضم" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "أزل الضم" 31 | -------------------------------------------------------------------------------- /po/ast/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Enol P. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-03-27 23:29+0100\n" 11 | "Last-Translator: Enol P. \n" 12 | "Language-Team: Asturian \n" 13 | "Language: ast\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 24.02.1\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "" 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | 77 | #: makefileactions.cpp:326 78 | #, kde-format 79 | msgid "Open a terminal window" 80 | msgstr "" 81 | 82 | #: makefileactions.cpp:327 83 | #, kde-format 84 | msgid "" 85 | "Open a new terminal window to see the output of making the chosen target." 86 | msgstr "" 87 | 88 | #: makefileactions.cpp:339 89 | #, kde-format 90 | msgid "Cancel running process (%1)" 91 | msgstr "" 92 | 93 | #: makefileactions.cpp:340 94 | #, kde-format 95 | msgid "Interrupt the currently running process (%1)." 96 | msgstr "" 97 | -------------------------------------------------------------------------------- /po/ast/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Enol P. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-03-27 23:30+0100\n" 11 | "Last-Translator: Enol P. \n" 12 | "Language-Team: Asturian \n" 13 | "Language: ast\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 24.02.1\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Montar" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Desmontar" 31 | -------------------------------------------------------------------------------- /po/az/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Xəyyam Qocayev , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-21 18:15+0400\n" 11 | "Last-Translator: Kheyyam Gojayev \n" 12 | "Language-Team: Azerbaijani \n" 13 | "Language: az\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | "X-Generator: Lokalize 21.12.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Qoşun" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Ayırın" 31 | -------------------------------------------------------------------------------- /po/bg/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Yasen Pramatarov , 2022. 5 | # Mincho Kondarev , 2022. 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2022-05-20 12:38+0200\n" 12 | "Last-Translator: Mincho Kondarev \n" 13 | "Language-Team: Bulgarian \n" 14 | "Language: bg\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "X-Generator: Lokalize 22.04.0\n" 19 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Монтиране" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Демонтиране" 32 | -------------------------------------------------------------------------------- /po/ca/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Translation of mountisoaction.po to Catalan 2 | # Copyright (C) 2020-2021 This_file_is_part_of_KDE 3 | # This file is distributed under the license LGPL version 2.1 or 4 | # version 3 or later versions approved by the membership of KDE e.V. 5 | # 6 | # Josep M. Ferrer , 2020. 7 | # Antoni Bella Pérez , 2021. 8 | msgid "" 9 | msgstr "" 10 | "Project-Id-Version: dolphin-plugins\n" 11 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 12 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 13 | "PO-Revision-Date: 2021-12-17 03:06+0100\n" 14 | "Last-Translator: Antoni Bella Pérez \n" 15 | "Language-Team: Catalan \n" 16 | "Language: ca\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: 8bit\n" 20 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 21 | "X-Generator: Lokalize 21.12.0\n" 22 | "X-Accelerator-Marker: &\n" 23 | 24 | #: mountisoaction.cpp:212 25 | #, kde-format 26 | msgctxt "@action:inmenu Action to mount a disk image" 27 | msgid "Mount" 28 | msgstr "Munta" 29 | 30 | #: mountisoaction.cpp:223 31 | #, kde-format 32 | msgctxt "@action:inmenu Action to unmount a disk image" 33 | msgid "Unmount" 34 | msgstr "Desmunta" 35 | -------------------------------------------------------------------------------- /po/ca@valencia/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Translation of mountisoaction.po to Catalan (Valencian) 2 | # Copyright (C) 2020-2021 This_file_is_part_of_KDE 3 | # This file is distributed under the license LGPL version 2.1 or 4 | # version 3 or later versions approved by the membership of KDE e.V. 5 | # 6 | # Josep M. Ferrer , 2020. 7 | # Antoni Bella Pérez , 2021. 8 | msgid "" 9 | msgstr "" 10 | "Project-Id-Version: dolphin-plugins\n" 11 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 12 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 13 | "PO-Revision-Date: 2021-12-17 03:06+0100\n" 14 | "Last-Translator: Antoni Bella Pérez \n" 15 | "Language-Team: Catalan \n" 16 | "Language: ca@valencia\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: 8bit\n" 20 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 21 | "X-Generator: Lokalize 21.12.0\n" 22 | "X-Accelerator-Marker: &\n" 23 | 24 | #: mountisoaction.cpp:212 25 | #, kde-format 26 | msgctxt "@action:inmenu Action to mount a disk image" 27 | msgid "Mount" 28 | msgstr "Munta" 29 | 30 | #: mountisoaction.cpp:223 31 | #, kde-format 32 | msgctxt "@action:inmenu Action to unmount a disk image" 33 | msgid "Unmount" 34 | msgstr "Desmunta" 35 | -------------------------------------------------------------------------------- /po/cs/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Vit Pelcak , 2023. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2023-08-22 09:56+0200\n" 11 | "Last-Translator: Vit Pelcak \n" 12 | "Language-Team: Czech \n" 13 | "Language: cs\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" 18 | "X-Generator: Lokalize 23.04.3\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "Make '%1'%2." 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "Činnosti souboru Makefile" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "&Make…" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | 77 | #: makefileactions.cpp:326 78 | #, kde-format 79 | msgid "Open a terminal window" 80 | msgstr "" 81 | 82 | #: makefileactions.cpp:327 83 | #, kde-format 84 | msgid "" 85 | "Open a new terminal window to see the output of making the chosen target." 86 | msgstr "" 87 | 88 | #: makefileactions.cpp:339 89 | #, kde-format 90 | msgid "Cancel running process (%1)" 91 | msgstr "" 92 | 93 | #: makefileactions.cpp:340 94 | #, kde-format 95 | msgid "Interrupt the currently running process (%1)." 96 | msgstr "" 97 | -------------------------------------------------------------------------------- /po/cs/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Vit Pelcak , 2020, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-17 16:59+0100\n" 11 | "Last-Translator: Vit Pelcak \n" 12 | "Language-Team: Czech \n" 13 | "Language: cs\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" 18 | "X-Generator: Lokalize 21.12.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Připojit" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Odpojit" 31 | -------------------------------------------------------------------------------- /po/de/makefileactions.po: -------------------------------------------------------------------------------- 1 | # German translations for dolphin-plugins package. 2 | # Copyright (C) 2023 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Frederik Schwarzer , 2023. 5 | # 6 | # Automatically generated, 2023. 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: makefileactions\n" 10 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 11 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 12 | "PO-Revision-Date: 2023-08-13 16:04+0200\n" 13 | "Last-Translator: Frederik Schwarzer \n" 14 | "Language-Team: German \n" 15 | "Language: de\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 20 | "X-Generator: Lokalize 23.11.70\n" 21 | 22 | #: makefileactions.cpp:225 23 | #, kde-format 24 | msgid "Make '%1'%2." 25 | msgstr "" 26 | 27 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 28 | #, kde-format 29 | msgid "Makefile Actions" 30 | msgstr "" 31 | 32 | #: makefileactions.cpp:254 33 | #, kde-format 34 | msgid "An error occurred while making target '%1'." 35 | msgstr "" 36 | 37 | #: makefileactions.cpp:262 38 | #, kde-format 39 | msgid "Running process for '%1' successfully stopped." 40 | msgstr "" 41 | 42 | #: makefileactions.cpp:264 43 | #, kde-format 44 | msgid "An error occurred trying to make target '%1'." 45 | msgstr "" 46 | 47 | #: makefileactions.cpp:296 48 | #, kde-format 49 | msgid "&Make…" 50 | msgstr "" 51 | 52 | #: makefileactions.cpp:301 53 | #, kde-format 54 | msgid "Only trusted files can be used by the Makefile Actions plugin." 55 | msgstr "" 56 | 57 | #: makefileactions.cpp:304 58 | #, kde-format 59 | msgid "Trusted file — uncheck to remove trust" 60 | msgstr "" 61 | 62 | #: makefileactions.cpp:304 63 | #, kde-format 64 | msgid "Untrusted file — check to trust" 65 | msgstr "" 66 | 67 | #: makefileactions.cpp:311 68 | #, kde-format 69 | msgid "Dolphin Makefile Plugin" 70 | msgstr "Dolphin-Modul für Makefiles" 71 | 72 | #: makefileactions.cpp:312 73 | #, kde-format 74 | msgid "" 75 | "Are you sure you can trust this file?
Trusted files may execute " 76 | "arbitrary code on context-menu invocation." 77 | msgstr "" 78 | 79 | #: makefileactions.cpp:326 80 | #, kde-format 81 | msgid "Open a terminal window" 82 | msgstr "Ein Terminal-Fenster öffnen" 83 | 84 | #: makefileactions.cpp:327 85 | #, kde-format 86 | msgid "" 87 | "Open a new terminal window to see the output of making the chosen target." 88 | msgstr "" 89 | 90 | #: makefileactions.cpp:339 91 | #, kde-format 92 | msgid "Cancel running process (%1)" 93 | msgstr "Laufenden Prozess beenden (%1)" 94 | 95 | #: makefileactions.cpp:340 96 | #, kde-format 97 | msgid "Interrupt the currently running process (%1)." 98 | msgstr "Den aktuell laufenden Prozess anhalten (%1)" 99 | -------------------------------------------------------------------------------- /po/de/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Burkhard Lück , 2020. 4 | # Frederik Schwarzer , 2022. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: mountisoaction\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2022-03-06 15:54+0100\n" 12 | "Last-Translator: Frederik Schwarzer \n" 13 | "Language-Team: German \n" 14 | "Language: de\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Lokalize 21.12.2\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Einhängen" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Aushängen" 32 | -------------------------------------------------------------------------------- /po/el/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Dimitrys Meliates 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-09-13 18:18+0300\n" 11 | "Last-Translator: Antonis G. \n" 12 | "Language-Team: el \n" 13 | "Language: el\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 24.08.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Προσάρτηση" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Αποσύνδεση" 31 | -------------------------------------------------------------------------------- /po/en_GB/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Steve Allewell , 2020, 2022. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-01-01 15:23+0000\n" 11 | "Last-Translator: Steve Allewell \n" 12 | "Language-Team: British English \n" 13 | "Language: en_GB\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 21.12.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Mount" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Unmount" 31 | -------------------------------------------------------------------------------- /po/eo/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # translation of mountisoaction.po to esperanto 2 | # Copyright (C) 2022 Free Software Foundation, Inc. 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Oliver Kellogg \n" 13 | "Language-Team: Esperanto \n" 14 | "Language: eo\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Munti" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Malmunti" 31 | -------------------------------------------------------------------------------- /po/es/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Spanish translations for mountisoaction.po package. 2 | # Copyright (C) 2020-2025 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Automatically generated, 2020. 5 | # 6 | # SPDX-FileCopyrightText: 2020, 2021, 2025 Eloy Cuadra 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: mountisoaction\n" 10 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 11 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 12 | "PO-Revision-Date: 2025-05-07 18:37+0100\n" 13 | "Last-Translator: Eloy Cuadra \n" 14 | "Language-Team: Spanish \n" 15 | "Language: es\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 20 | "X-Generator: Lokalize 21.12.0\n" 21 | 22 | #: mountisoaction.cpp:212 23 | #, kde-format 24 | msgctxt "@action:inmenu Action to mount a disk image" 25 | msgid "Mount" 26 | msgstr "Montar" 27 | 28 | #: mountisoaction.cpp:223 29 | #, kde-format 30 | msgctxt "@action:inmenu Action to unmount a disk image" 31 | msgid "Unmount" 32 | msgstr "Desmontar" 33 | -------------------------------------------------------------------------------- /po/et/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Marek Laane , 2020. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2020-06-03 19:49+0300\n" 11 | "Last-Translator: Marek Laane \n" 12 | "Language-Team: Estonian \n" 13 | "Language: et\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 19.12.3\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, fuzzy, kde-format 22 | #| msgctxt "@action:inmenu Action to mount an ISO image" 23 | #| msgid "Mount ISO" 24 | msgctxt "@action:inmenu Action to mount a disk image" 25 | msgid "Mount" 26 | msgstr "Ühenda ISO-tõmmis" 27 | 28 | #: mountisoaction.cpp:223 29 | #, fuzzy, kde-format 30 | #| msgctxt "@action:inmenu Action to unmount an ISO image" 31 | #| msgid "Unmount ISO" 32 | msgctxt "@action:inmenu Action to unmount a disk image" 33 | msgid "Unmount" 34 | msgstr "Lahuta ISO-tõmmis" 35 | -------------------------------------------------------------------------------- /po/eu/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Translation for mountisoaction.po to Euskara/Basque (eu). 2 | # Copyright (C) 2020-2022 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # KDE euskaratzeko proiektuko arduraduna . 5 | # 6 | # Translators: 7 | # Iñigo Salvador Azurmendi , 2020, 2022. 8 | msgid "" 9 | msgstr "" 10 | "Project-Id-Version: dolphin-plugins\n" 11 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 12 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 13 | "PO-Revision-Date: 2022-09-11 17:04+0200\n" 14 | "Last-Translator: Iñigo Salvador Azurmendi \n" 15 | "Language-Team: Basque \n" 16 | "Language: eu\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: 8bit\n" 20 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 21 | "X-Generator: Lokalize 22.08.0\n" 22 | 23 | #: mountisoaction.cpp:212 24 | #, kde-format 25 | msgctxt "@action:inmenu Action to mount a disk image" 26 | msgid "Mount" 27 | msgstr "Muntatu" 28 | 29 | #: mountisoaction.cpp:223 30 | #, kde-format 31 | msgctxt "@action:inmenu Action to unmount a disk image" 32 | msgid "Unmount" 33 | msgstr "Desmuntatu" 34 | -------------------------------------------------------------------------------- /po/fi/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Tommi Nieminen , 2023. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2023-08-26 17:42+0300\n" 11 | "Last-Translator: Tommi Nieminen \n" 12 | "Language-Team: Finnish \n" 13 | "Language: fi\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | 19 | #: makefileactions.cpp:225 20 | #, kde-format 21 | msgid "Make '%1'%2." 22 | msgstr "Make '%1'%2." 23 | 24 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 25 | #, kde-format 26 | msgid "Makefile Actions" 27 | msgstr "Makefile-toiminnot" 28 | 29 | #: makefileactions.cpp:254 30 | #, kde-format 31 | msgid "An error occurred while making target '%1'." 32 | msgstr "Rakennettaessa kohdetta ”%1” sattui virhe." 33 | 34 | #: makefileactions.cpp:262 35 | #, kde-format 36 | msgid "Running process for '%1' successfully stopped." 37 | msgstr "Käynnissä olevan prosessin ”%1” pysäyttäminen onnistui." 38 | 39 | #: makefileactions.cpp:264 40 | #, kde-format 41 | msgid "An error occurred trying to make target '%1'." 42 | msgstr "Yritettäessä rakentaa kohdetta ”%1” sattui virhe." 43 | 44 | #: makefileactions.cpp:296 45 | #, kde-format 46 | msgid "&Make…" 47 | msgstr "&Make…" 48 | 49 | #: makefileactions.cpp:301 50 | #, kde-format 51 | msgid "Only trusted files can be used by the Makefile Actions plugin." 52 | msgstr "" 53 | "Vain luotettuja tiedostoja voi käyttää Makefile-toimintoliitännäisellä." 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "Luotettu tiedosto – poista luottamus poistamalla valinta" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "Ei-luotettu tiedosto – merkitse luotetuksi valitsemalla" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "Dolphinin Makefile-liitännäinen" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | "Voitko varmasti luottaa tähän tiedostoon?
Luotetut tiedostot " 77 | "voivat suorittaa satunnaista koodia kontekstivalikosta kutsuttaessa." 78 | 79 | #: makefileactions.cpp:326 80 | #, kde-format 81 | msgid "Open a terminal window" 82 | msgstr "Avaa pääteikkuna" 83 | 84 | #: makefileactions.cpp:327 85 | #, kde-format 86 | msgid "" 87 | "Open a new terminal window to see the output of making the chosen target." 88 | msgstr "Katso valitun kohteen rakentamistulokset avaamalla uusi pääteikkuna." 89 | 90 | #: makefileactions.cpp:339 91 | #, kde-format 92 | msgid "Cancel running process (%1)" 93 | msgstr "Peru käynnissä oleva prosessi (%1)" 94 | 95 | #: makefileactions.cpp:340 96 | #, kde-format 97 | msgid "Interrupt the currently running process (%1)." 98 | msgstr "Keskeytä käynnissä oleva prosessi (%1)." 99 | -------------------------------------------------------------------------------- /po/fi/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Tommi Nieminen , 2020, 2022. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-01-28 18:27+0200\n" 11 | "Last-Translator: Tommi Nieminen \n" 12 | "Language-Team: Finnish \n" 13 | "Language: fi\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | 19 | #: mountisoaction.cpp:212 20 | #, kde-format 21 | msgctxt "@action:inmenu Action to mount a disk image" 22 | msgid "Mount" 23 | msgstr "Liitä" 24 | 25 | #: mountisoaction.cpp:223 26 | #, kde-format 27 | msgctxt "@action:inmenu Action to unmount a disk image" 28 | msgid "Unmount" 29 | msgstr "Irrota" 30 | -------------------------------------------------------------------------------- /po/fr/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Xavier Besnard , 2020, 2021. 2 | msgid "" 3 | msgstr "" 4 | "Project-Id-Version: dolphin-plugins\n" 5 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 6 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 7 | "PO-Revision-Date: 2021-12-27 22:44+0100\n" 8 | "Last-Translator: Xavier Besnard \n" 9 | "Language-Team: French \n" 10 | "Language: fr\n" 11 | "MIME-Version: 1.0\n" 12 | "Content-Type: text/plain; charset=UTF-8\n" 13 | "Content-Transfer-Encoding: 8bit\n" 14 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 15 | "X-Generator: Lokalize 21.12.0\n" 16 | 17 | #: mountisoaction.cpp:212 18 | #, kde-format 19 | msgctxt "@action:inmenu Action to mount a disk image" 20 | msgid "Mount" 21 | msgstr "Monter" 22 | 23 | #: mountisoaction.cpp:223 24 | #, kde-format 25 | msgctxt "@action:inmenu Action to unmount a disk image" 26 | msgid "Unmount" 27 | msgstr "Libérer" 28 | -------------------------------------------------------------------------------- /po/gl/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Adrián Chaves (Gallaecio) , 2023. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2023-06-07 10:10+0200\n" 11 | "Last-Translator: Adrián Chaves (Gallaecio) \n" 12 | "Language-Team: Galician \n" 13 | "Language: gl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 23.04.1\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Montar" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Desmontar" 31 | -------------------------------------------------------------------------------- /po/he/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Yaron Shahrabani 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-04-12 08:36+0300\n" 11 | "Last-Translator: Yaron Shahrabani \n" 12 | "Language-Team: צוות התרגום של KDE ישראל\n" 13 | "Language: he\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && " 18 | "n % 10 == 0) ? 2 : 3));\n" 19 | "X-Generator: Lokalize 23.08.5\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "עיגון" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "ניתוק" 32 | -------------------------------------------------------------------------------- /po/hi/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Hindi translations for dolphin-plugins package. 2 | # Copyright (C) 2024 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Kali , 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2024-12-15 15:58+0530\n" 12 | "Last-Translator: Kali \n" 13 | "Language-Team: Hindi \n" 14 | "Language: hi\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n!=1);\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "" 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | 77 | #: makefileactions.cpp:326 78 | #, kde-format 79 | msgid "Open a terminal window" 80 | msgstr "" 81 | 82 | #: makefileactions.cpp:327 83 | #, kde-format 84 | msgid "" 85 | "Open a new terminal window to see the output of making the chosen target." 86 | msgstr "" 87 | 88 | #: makefileactions.cpp:339 89 | #, kde-format 90 | msgid "Cancel running process (%1)" 91 | msgstr "" 92 | 93 | #: makefileactions.cpp:340 94 | #, kde-format 95 | msgid "Interrupt the currently running process (%1)." 96 | msgstr "" 97 | -------------------------------------------------------------------------------- /po/hi/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Hindi translations for dolphin-plugins package. 2 | # Copyright (C) 2024 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Kali , 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2024-12-15 15:58+0530\n" 12 | "Last-Translator: Kali \n" 13 | "Language-Team: Hindi \n" 14 | "Language: hi\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n!=1);\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "" 31 | -------------------------------------------------------------------------------- /po/hu/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Kristof Kiszel 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-01-25 21:50+0100\n" 11 | "Last-Translator: Kristof Kiszel \n" 12 | "Language-Team: Hungarian \n" 13 | "Language: hu\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | "X-Generator: Lokalize 23.08.4\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Csatolás" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Leválasztás" 31 | -------------------------------------------------------------------------------- /po/ia/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Giovanni Sora , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-19 23:19+0100\n" 11 | "Last-Translator: giovanni \n" 12 | "Language-Team: Interlingua \n" 13 | "Language: ia\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 21.12.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Monta" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Dismonta" 31 | -------------------------------------------------------------------------------- /po/id/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Wantoyo , 2021. 4 | # Aziz Adam Adrian <4.adam.adrian@gmail.com>, 2022. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2022-05-14 13:13+0700\n" 12 | "Last-Translator: Aziz Adam Adrian <4.adam.adrian@gmail.com>\n" 13 | "Language-Team: Indonesian \n" 14 | "Language: id\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Lokalize 22.04.1\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Kaitkan" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Lepas Kaitan" 32 | -------------------------------------------------------------------------------- /po/ie/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2022-11-05 16:54+0700\n" 12 | "Last-Translator: OIS \n" 13 | "Language-Team: Interlingue \n" 14 | "Language: ie\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Poedit 1.8.12\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Monter" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Demonter" 32 | -------------------------------------------------------------------------------- /po/is/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2025 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2025 Sveinn í Felli 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2025-04-07 09:15+0000\n" 11 | "Last-Translator: Sveinn í Felli \n" 12 | "Language-Team: Icelandic\n" 13 | "Language: is\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 23.08.5\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Tengja" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Aftengja" 31 | -------------------------------------------------------------------------------- /po/it/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Vincenzo Reale , 2020, 2021. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-17 14:12+0100\n" 11 | "Last-Translator: Vincenzo Reale \n" 12 | "Language-Team: Italian \n" 13 | "Language: it\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 18 | "X-Generator: Lokalize 21.12.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Monta" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Smonta" 31 | -------------------------------------------------------------------------------- /po/ja/makefileactions.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: dolphin-plugins\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 6 | "PO-Revision-Date: 2023-08-13 17:33-0700\n" 7 | "Last-Translator: Japanese KDE translation team \n" 8 | "Language-Team: Japanese \n" 9 | "Language: ja\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=1; plural=0;\n" 14 | "X-Accelerator-Marker: &\n" 15 | "X-Text-Markup: kde4\n" 16 | 17 | #: makefileactions.cpp:225 18 | #, kde-format 19 | msgid "Make '%1'%2." 20 | msgstr "" 21 | 22 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 23 | #, kde-format 24 | msgid "Makefile Actions" 25 | msgstr "" 26 | 27 | #: makefileactions.cpp:254 28 | #, kde-format 29 | msgid "An error occurred while making target '%1'." 30 | msgstr "" 31 | 32 | #: makefileactions.cpp:262 33 | #, kde-format 34 | msgid "Running process for '%1' successfully stopped." 35 | msgstr "" 36 | 37 | #: makefileactions.cpp:264 38 | #, kde-format 39 | msgid "An error occurred trying to make target '%1'." 40 | msgstr "" 41 | 42 | #: makefileactions.cpp:296 43 | #, kde-format 44 | msgid "&Make…" 45 | msgstr "" 46 | 47 | #: makefileactions.cpp:301 48 | #, kde-format 49 | msgid "Only trusted files can be used by the Makefile Actions plugin." 50 | msgstr "" 51 | 52 | #: makefileactions.cpp:304 53 | #, kde-format 54 | msgid "Trusted file — uncheck to remove trust" 55 | msgstr "" 56 | 57 | #: makefileactions.cpp:304 58 | #, kde-format 59 | msgid "Untrusted file — check to trust" 60 | msgstr "" 61 | 62 | #: makefileactions.cpp:311 63 | #, kde-format 64 | msgid "Dolphin Makefile Plugin" 65 | msgstr "" 66 | 67 | #: makefileactions.cpp:312 68 | #, kde-format 69 | msgid "" 70 | "Are you sure you can trust this file?
Trusted files may execute " 71 | "arbitrary code on context-menu invocation." 72 | msgstr "" 73 | 74 | #: makefileactions.cpp:326 75 | #, kde-format 76 | msgid "Open a terminal window" 77 | msgstr "" 78 | 79 | #: makefileactions.cpp:327 80 | #, kde-format 81 | msgid "" 82 | "Open a new terminal window to see the output of making the chosen target." 83 | msgstr "" 84 | 85 | #: makefileactions.cpp:339 86 | #, kde-format 87 | msgid "Cancel running process (%1)" 88 | msgstr "" 89 | 90 | #: makefileactions.cpp:340 91 | #, kde-format 92 | msgid "Interrupt the currently running process (%1)." 93 | msgstr "" 94 | -------------------------------------------------------------------------------- /po/ja/mountisoaction.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: dolphin-plugins\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 6 | "PO-Revision-Date: 2020-06-07 14:12-0700\n" 7 | "Last-Translator: Japanese KDE translation team \n" 8 | "Language-Team: Japanese \n" 9 | "Language: ja\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=1; plural=0;\n" 14 | "X-Accelerator-Marker: &\n" 15 | "X-Text-Markup: kde4\n" 16 | 17 | #: mountisoaction.cpp:212 18 | #, kde-format 19 | msgctxt "@action:inmenu Action to mount a disk image" 20 | msgid "Mount" 21 | msgstr "" 22 | 23 | #: mountisoaction.cpp:223 24 | #, kde-format 25 | msgctxt "@action:inmenu Action to unmount a disk image" 26 | msgid "Unmount" 27 | msgstr "" 28 | -------------------------------------------------------------------------------- /po/ka/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2022-09-24 18:51+0200\n" 12 | "Last-Translator: Temuri Doghonadze \n" 13 | "Language-Team: Georgian \n" 14 | "Language: ka\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n != 1);\n" 19 | "X-Generator: Poedit 3.1.1\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "მიმაგრება" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "მოხსნა" 32 | -------------------------------------------------------------------------------- /po/ko/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Shinjo Park , 2023. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2023-08-25 21:03+0200\n" 11 | "Last-Translator: Shinjo Park \n" 12 | "Language-Team: Korean \n" 13 | "Language: ko\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Generator: Lokalize 22.12.3\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "'%1'에 Make를 실행합니다%2." 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "Makefile 동작" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "'%1' 대상을 Make하는 중 오류가 발생했습니다." 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "'%1'의 프로세스 실행이 성공적으로 정지되었습니다." 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "'%1' 대상에 Make를 실행하는 중 오류가 발생했습니다." 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "Make(&M)…" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "Makefile 동작 플러그인에서는 신뢰할 수 있는 파일만 사용할 수 있습니다." 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "신뢰할 수 있는 파일 — 체크 해제하여 신뢰 해제" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "신뢰할 수 없는 파일 — 체크하여 신뢰" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "Dolphin Makefile 플러그인" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | "이 파일을 신뢰하시겠습니까?
신뢰하는 파일에서는 상황에 맞는 메뉴 호" 77 | "출 시 임의 코드를 실행할 수 있습니다." 78 | 79 | #: makefileactions.cpp:326 80 | #, kde-format 81 | msgid "Open a terminal window" 82 | msgstr "새 터미널 창 열기" 83 | 84 | #: makefileactions.cpp:327 85 | #, kde-format 86 | msgid "" 87 | "Open a new terminal window to see the output of making the chosen target." 88 | msgstr "새 터미널 창을 열어서 선택한 대상의 Make 출력을 표시합니다." 89 | 90 | #: makefileactions.cpp:339 91 | #, kde-format 92 | msgid "Cancel running process (%1)" 93 | msgstr "실행 중인 프로세스(%1) 취소" 94 | 95 | #: makefileactions.cpp:340 96 | #, kde-format 97 | msgid "Interrupt the currently running process (%1)." 98 | msgstr "현재 실행 중인 프로세스(%1)를 중단합니다." 99 | -------------------------------------------------------------------------------- /po/ko/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Shinjo Park , 2020, 2022. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-02-20 21:51+0100\n" 11 | "Last-Translator: Shinjo Park \n" 12 | "Language-Team: Korean \n" 13 | "Language: ko\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Generator: Lokalize 21.08.1\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "마운트" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "마운트 해제" 31 | -------------------------------------------------------------------------------- /po/lt/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Lithuanian translations for dolphin-plugins package. 2 | # Copyright (C) 2024 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Automatically generated, 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2023-11-09 01:39+0000\n" 12 | "Last-Translator: Automatically generated\n" 13 | "Language-Team: none\n" 14 | "Language: lt\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n%10>=2 && (n%100<10 || n" 19 | "%100>=20) ? 1 : n%10==0 || (n%100>10 && n%100<20) ? 2 : 3);\n" 20 | 21 | #: makefileactions.cpp:225 22 | #, kde-format 23 | msgid "Make '%1'%2." 24 | msgstr "" 25 | 26 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 27 | #, kde-format 28 | msgid "Makefile Actions" 29 | msgstr "" 30 | 31 | #: makefileactions.cpp:254 32 | #, kde-format 33 | msgid "An error occurred while making target '%1'." 34 | msgstr "" 35 | 36 | #: makefileactions.cpp:262 37 | #, kde-format 38 | msgid "Running process for '%1' successfully stopped." 39 | msgstr "" 40 | 41 | #: makefileactions.cpp:264 42 | #, kde-format 43 | msgid "An error occurred trying to make target '%1'." 44 | msgstr "" 45 | 46 | #: makefileactions.cpp:296 47 | #, kde-format 48 | msgid "&Make…" 49 | msgstr "" 50 | 51 | #: makefileactions.cpp:301 52 | #, kde-format 53 | msgid "Only trusted files can be used by the Makefile Actions plugin." 54 | msgstr "" 55 | 56 | #: makefileactions.cpp:304 57 | #, kde-format 58 | msgid "Trusted file — uncheck to remove trust" 59 | msgstr "" 60 | 61 | #: makefileactions.cpp:304 62 | #, kde-format 63 | msgid "Untrusted file — check to trust" 64 | msgstr "" 65 | 66 | #: makefileactions.cpp:311 67 | #, kde-format 68 | msgid "Dolphin Makefile Plugin" 69 | msgstr "" 70 | 71 | #: makefileactions.cpp:312 72 | #, kde-format 73 | msgid "" 74 | "Are you sure you can trust this file?
Trusted files may execute " 75 | "arbitrary code on context-menu invocation." 76 | msgstr "" 77 | 78 | #: makefileactions.cpp:326 79 | #, kde-format 80 | msgid "Open a terminal window" 81 | msgstr "" 82 | 83 | #: makefileactions.cpp:327 84 | #, kde-format 85 | msgid "" 86 | "Open a new terminal window to see the output of making the chosen target." 87 | msgstr "" 88 | 89 | #: makefileactions.cpp:339 90 | #, kde-format 91 | msgid "Cancel running process (%1)" 92 | msgstr "" 93 | 94 | #: makefileactions.cpp:340 95 | #, kde-format 96 | msgid "Interrupt the currently running process (%1)." 97 | msgstr "" 98 | -------------------------------------------------------------------------------- /po/lt/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Lithuanian translations for dolphin-plugins package. 2 | # Copyright (C) 2020 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Automatically generated, 2020. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2024-01-16 01:45+0200\n" 12 | "Last-Translator: Automatically generated\n" 13 | "Language-Team: none\n" 14 | "Language: lt\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : n%10>=2 && (n%100<10 || n" 19 | "%100>=20) ? 1 : n%10==0 || (n%100>10 && n%100<20) ? 2 : 3);\n" 20 | "X-Generator: Poedit 3.0.1\n" 21 | 22 | #: mountisoaction.cpp:212 23 | #, kde-format 24 | msgctxt "@action:inmenu Action to mount a disk image" 25 | msgid "Mount" 26 | msgstr "Prijungti" 27 | 28 | #: mountisoaction.cpp:223 29 | #, kde-format 30 | msgctxt "@action:inmenu Action to unmount a disk image" 31 | msgid "Unmount" 32 | msgstr "Atjungti" 33 | -------------------------------------------------------------------------------- /po/lv/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Toms Trasuns 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-05-28 11:04+0300\n" 11 | "Last-Translator: Toms Trasuns \n" 12 | "Language-Team: Latvian \n" 13 | "Language: lv\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " 18 | "2);\n" 19 | "X-Generator: Lokalize 24.02.2\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Piemontēt" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Atmontēt" 32 | -------------------------------------------------------------------------------- /po/my/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # SOME DESCRIPTIVE TITLE. 2 | # Copyright (C) YEAR This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # FIRST AUTHOR , YEAR. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2021-09-17 17:32+0630\n" 12 | "Last-Translator: \n" 13 | "Language-Team: Burmese \n" 14 | "Language: my\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=1; plural=0;\n" 19 | "X-Generator: Poedit 2.2.1\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, fuzzy, kde-format 23 | #| msgctxt "@action:inmenu Action to mount an ISO image" 24 | #| msgid "Mount ISO" 25 | msgctxt "@action:inmenu Action to mount a disk image" 26 | msgid "Mount" 27 | msgstr "အိုင်အက်စ်အို တပ်ဆင်ထည့်သွင်းမည်" 28 | 29 | #: mountisoaction.cpp:223 30 | #, fuzzy, kde-format 31 | #| msgctxt "@action:inmenu Action to unmount an ISO image" 32 | #| msgid "Unmount ISO" 33 | msgctxt "@action:inmenu Action to unmount a disk image" 34 | msgid "Unmount" 35 | msgstr "အိုင်အက်စ်အို ဖြုတ်ချဖယ်ရှားမည်" 36 | -------------------------------------------------------------------------------- /po/nb/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Translation of mountisoaction to Norwegian Bokmål 2 | # 3 | # John Ivar Eriksen , 2023. 4 | msgid "" 5 | msgstr "" 6 | "Project-Id-Version: dolphin-plugins\n" 7 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 8 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 9 | "PO-Revision-Date: 2023-07-17 11:21+0200\n" 10 | "Last-Translator: John Ivar Eriksen \n" 11 | "Language-Team: Norwegian Bokmål \n" 12 | "Language: nb\n" 13 | "MIME-Version: 1.0\n" 14 | "Content-Type: text/plain; charset=UTF-8\n" 15 | "Content-Transfer-Encoding: 8bit\n" 16 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 17 | "X-Generator: Lokalize 22.12.3\n" 18 | "X-Environment: kde\n" 19 | "X-Accelerator-Marker: &\n" 20 | "X-Text-Markup: kde4\n" 21 | 22 | #: mountisoaction.cpp:212 23 | #, kde-format 24 | msgctxt "@action:inmenu Action to mount a disk image" 25 | msgid "Mount" 26 | msgstr "Monter" 27 | 28 | #: mountisoaction.cpp:223 29 | #, kde-format 30 | msgctxt "@action:inmenu Action to unmount a disk image" 31 | msgid "Unmount" 32 | msgstr "Avmonter" 33 | -------------------------------------------------------------------------------- /po/nl/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Freek de Kruijf , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-17 10:37+0100\n" 11 | "Last-Translator: Freek de Kruijf \n" 12 | "Language-Team: \n" 13 | "Language: nl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 21.12.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Aankoppelen" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Afkoppelen" 31 | -------------------------------------------------------------------------------- /po/nn/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Translation of mountisoaction to Norwegian Nynorsk 2 | # 3 | # Karl Ove Hufthammer , 2020, 2023. 4 | msgid "" 5 | msgstr "" 6 | "Project-Id-Version: dolphin-plugins\n" 7 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 8 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 9 | "PO-Revision-Date: 2023-02-22 22:12+0100\n" 10 | "Last-Translator: Karl Ove Hufthammer \n" 11 | "Language-Team: Norwegian Nynorsk \n" 12 | "Language: nn\n" 13 | "MIME-Version: 1.0\n" 14 | "Content-Type: text/plain; charset=UTF-8\n" 15 | "Content-Transfer-Encoding: 8bit\n" 16 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 17 | "X-Generator: Lokalize 22.12.2\n" 18 | "X-Environment: kde\n" 19 | "X-Accelerator-Marker: &\n" 20 | "X-Text-Markup: kde4\n" 21 | 22 | #: mountisoaction.cpp:212 23 | #, kde-format 24 | msgctxt "@action:inmenu Action to mount a disk image" 25 | msgid "Mount" 26 | msgstr "Monter" 27 | 28 | #: mountisoaction.cpp:223 29 | #, kde-format 30 | msgctxt "@action:inmenu Action to unmount a disk image" 31 | msgid "Unmount" 32 | msgstr "Avmonter" 33 | -------------------------------------------------------------------------------- /po/pa/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # A S Alam , 2020. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2020-12-19 11:10-0800\n" 11 | "Last-Translator: A S Alam \n" 12 | "Language-Team: Punjabi \n" 13 | "Language: pa\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 20.08.1\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, fuzzy, kde-format 22 | #| msgctxt "@action:inmenu Action to mount an ISO image" 23 | #| msgid "Mount ISO" 24 | msgctxt "@action:inmenu Action to mount a disk image" 25 | msgid "Mount" 26 | msgstr "ISO ਮਾਊਂਟ ਕਰੋ" 27 | 28 | #: mountisoaction.cpp:223 29 | #, fuzzy, kde-format 30 | #| msgctxt "@action:inmenu Action to unmount an ISO image" 31 | #| msgid "Unmount ISO" 32 | msgctxt "@action:inmenu Action to unmount a disk image" 33 | msgid "Unmount" 34 | msgstr "ISO ਅਣ-ਮਾਊਂਟ ਕਰੋ" 35 | -------------------------------------------------------------------------------- /po/pl/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Łukasz Wojniłowicz , 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-19 12:29+0100\n" 11 | "Last-Translator: Łukasz Wojniłowicz \n" 12 | "Language-Team: Polish \n" 13 | "Language: pl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " 18 | "|| n%100>=20) ? 1 : 2);\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Podepnij" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Odepnij" 31 | -------------------------------------------------------------------------------- /po/pt/mountisoaction.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: dolphin-plugins\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 6 | "PO-Revision-Date: 2022-03-25 15:10+0000\n" 7 | "Last-Translator: José Nuno Coelho Pires \n" 8 | "Language-Team: Portuguese \n" 9 | "Language: pt\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 14 | 15 | #: mountisoaction.cpp:212 16 | #, kde-format 17 | msgctxt "@action:inmenu Action to mount a disk image" 18 | msgid "Mount" 19 | msgstr "Montar" 20 | 21 | #: mountisoaction.cpp:223 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to unmount a disk image" 24 | msgid "Unmount" 25 | msgstr "Desmontar" 26 | -------------------------------------------------------------------------------- /po/pt_BR/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Luiz Fernando Ranghetti , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-21 09:08-0300\n" 11 | "Last-Translator: Luiz Fernando Ranghetti \n" 12 | "Language-Team: Portuguese \n" 13 | "Language: pt_BR\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 18 | "X-Generator: Lokalize 20.04.2\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Montar" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Desmontar" 31 | -------------------------------------------------------------------------------- /po/ro/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # Sergiu Bivol , 2020, 2022. 4 | # 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-02-05 12:34+0000\n" 11 | "Last-Translator: Sergiu Bivol \n" 12 | "Language-Team: Romanian\n" 13 | "Language: ro\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " 18 | "20)) ? 1 : 2;\n" 19 | "X-Generator: Lokalize 21.12.2\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Montează" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Demontează" 32 | -------------------------------------------------------------------------------- /po/ru/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Alexander Yavorsky , 2020, 2022. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-01-29 13:55+0300\n" 11 | "Last-Translator: Alexander Yavorsky \n" 12 | "Language-Team: Russian \n" 13 | "Language: ru\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n" 18 | "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 19 | "X-Generator: Lokalize 21.12.1\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Подключить образ ISO" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Отключить образ ISO" 32 | -------------------------------------------------------------------------------- /po/sa/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Sanskrit translations for dolphin-plugins package. 2 | # Copyright (C) 2024 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Kali , 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2024-12-13 19:10+0530\n" 12 | "Last-Translator: Kali \n" 13 | "Language-Team: Sanskrit \n" 14 | "Language: sa\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n>2);\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "'%1'%2 कृत्वा ।" 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "Makefile क्रियाः" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "लक्ष्यं '%1' कृत्वा त्रुटिः अभवत् ।" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "'%1' कृते चालनप्रक्रिया सफलतया स्थगितम् ।" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "लक्ष्यं '%1' कर्तुं प्रयतमाने त्रुटिः अभवत् ।" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "&निर्मीयताम्‌…" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "केवलं विश्वसनीयसञ्चिकाः एव Makefile Actions प्लगिन् इत्यनेन उपयोक्तुं शक्यन्ते ।" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "विश्वसनीयसञ्चिका — विश्वासं दूरीकर्तुं अनचेक् कुर्वन्तु" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "अविश्वसनीयसञ्चिका — विश्वासं कर्तुं परीक्ष्यताम्" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "डॉल्फिन मेकफाइल प्लगइन" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | "किं भवान् निश्चिन्तः अस्ति यत् भवान् एतां सञ्चिकां विश्वसितुम् अर्हति?
" 77 | "विश्वसनीयसञ्चिकाः सन्दर्भ-मेनू-आह्वानस्य मनमाना-सङ्केतं निष्पादयितुं शक्नुवन्ति ।" 78 | 79 | #: makefileactions.cpp:326 80 | #, kde-format 81 | msgid "Open a terminal window" 82 | msgstr "एकं टर्मिनल् विण्डो उद्घाटयन्तु" 83 | 84 | #: makefileactions.cpp:327 85 | #, kde-format 86 | msgid "" 87 | "Open a new terminal window to see the output of making the chosen target." 88 | msgstr "चयनितं लक्ष्यं करणस्य आउटपुट् द्रष्टुं नूतनं टर्मिनल् विण्डो उद्घाटयन्तु ।" 89 | 90 | #: makefileactions.cpp:339 91 | #, kde-format 92 | msgid "Cancel running process (%1)" 93 | msgstr "चालनप्रक्रिया रद्दं कुर्वन्तु (%1) ." 94 | 95 | #: makefileactions.cpp:340 96 | #, kde-format 97 | msgid "Interrupt the currently running process (%1)." 98 | msgstr "वर्तमानं प्रचलति प्रक्रियां बाधयन्तु (%1) ।" 99 | -------------------------------------------------------------------------------- /po/sa/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Sanskrit translations for dolphin-plugins package. 2 | # Copyright (C) 2024 This file is copyright: 3 | # This file is distributed under the same license as the dolphin-plugins package. 4 | # Kali , 2024. 5 | # 6 | msgid "" 7 | msgstr "" 8 | "Project-Id-Version: dolphin-plugins\n" 9 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 10 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 11 | "PO-Revision-Date: 2024-12-13 19:10+0530\n" 12 | "Last-Translator: Kali \n" 13 | "Language-Team: Sanskrit \n" 14 | "Language: sa\n" 15 | "MIME-Version: 1.0\n" 16 | "Content-Type: text/plain; charset=UTF-8\n" 17 | "Content-Transfer-Encoding: 8bit\n" 18 | "Plural-Forms: nplurals=2; plural=(n>2);\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "माउण्ट्" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "अनमाउंट" 31 | -------------------------------------------------------------------------------- /po/sk/makefileactions.po: -------------------------------------------------------------------------------- 1 | # translation of makefileactions.po to Slovak 2 | # SPDX-FileCopyrightText: 2023 Roman Paholík 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: makefileactions\n" 6 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 7 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 8 | "PO-Revision-Date: 2023-12-09 09:21+0100\n" 9 | "Last-Translator: Roman Paholik \n" 10 | "Language-Team: Slovak \n" 11 | "Language: sk\n" 12 | "MIME-Version: 1.0\n" 13 | "Content-Type: text/plain; charset=UTF-8\n" 14 | "Content-Transfer-Encoding: 8bit\n" 15 | "X-Generator: Lokalize 23.08.3\n" 16 | "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" 17 | 18 | #: makefileactions.cpp:225 19 | #, kde-format 20 | msgid "Make '%1'%2." 21 | msgstr "Make '%1'%2." 22 | 23 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 24 | #, kde-format 25 | msgid "Makefile Actions" 26 | msgstr "Akcie makefile" 27 | 28 | #: makefileactions.cpp:254 29 | #, kde-format 30 | msgid "An error occurred while making target '%1'." 31 | msgstr "" 32 | 33 | #: makefileactions.cpp:262 34 | #, kde-format 35 | msgid "Running process for '%1' successfully stopped." 36 | msgstr "" 37 | 38 | #: makefileactions.cpp:264 39 | #, kde-format 40 | msgid "An error occurred trying to make target '%1'." 41 | msgstr "" 42 | 43 | #: makefileactions.cpp:296 44 | #, kde-format 45 | msgid "&Make…" 46 | msgstr "&Make…" 47 | 48 | #: makefileactions.cpp:301 49 | #, kde-format 50 | msgid "Only trusted files can be used by the Makefile Actions plugin." 51 | msgstr "" 52 | 53 | #: makefileactions.cpp:304 54 | #, kde-format 55 | msgid "Trusted file — uncheck to remove trust" 56 | msgstr "" 57 | 58 | #: makefileactions.cpp:304 59 | #, kde-format 60 | msgid "Untrusted file — check to trust" 61 | msgstr "" 62 | 63 | #: makefileactions.cpp:311 64 | #, kde-format 65 | msgid "Dolphin Makefile Plugin" 66 | msgstr "" 67 | 68 | #: makefileactions.cpp:312 69 | #, kde-format 70 | msgid "" 71 | "Are you sure you can trust this file?
Trusted files may execute " 72 | "arbitrary code on context-menu invocation." 73 | msgstr "" 74 | 75 | #: makefileactions.cpp:326 76 | #, kde-format 77 | msgid "Open a terminal window" 78 | msgstr "" 79 | 80 | #: makefileactions.cpp:327 81 | #, kde-format 82 | msgid "" 83 | "Open a new terminal window to see the output of making the chosen target." 84 | msgstr "" 85 | 86 | #: makefileactions.cpp:339 87 | #, kde-format 88 | msgid "Cancel running process (%1)" 89 | msgstr "" 90 | 91 | #: makefileactions.cpp:340 92 | #, kde-format 93 | msgid "Interrupt the currently running process (%1)." 94 | msgstr "" 95 | -------------------------------------------------------------------------------- /po/sk/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # translation of mountisoaction.po to Slovak 2 | # Roman Paholík , 2020, 2022. 3 | msgid "" 4 | msgstr "" 5 | "Project-Id-Version: mountisoaction\n" 6 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 7 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 8 | "PO-Revision-Date: 2022-04-08 18:40+0200\n" 9 | "Last-Translator: Roman Paholik \n" 10 | "Language-Team: Slovak \n" 11 | "Language: sk\n" 12 | "MIME-Version: 1.0\n" 13 | "Content-Type: text/plain; charset=UTF-8\n" 14 | "Content-Transfer-Encoding: 8bit\n" 15 | "X-Generator: Lokalize 21.12.3\n" 16 | "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" 17 | 18 | #: mountisoaction.cpp:212 19 | #, kde-format 20 | msgctxt "@action:inmenu Action to mount a disk image" 21 | msgid "Mount" 22 | msgstr "Pripojiť" 23 | 24 | #: mountisoaction.cpp:223 25 | #, kde-format 26 | msgctxt "@action:inmenu Action to unmount a disk image" 27 | msgid "Unmount" 28 | msgstr "Odpojiť" 29 | -------------------------------------------------------------------------------- /po/sl/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Matjaž Jeran , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-20 06:44+0100\n" 11 | "Last-Translator: Matjaž Jeran \n" 12 | "Language-Team: Slovenian \n" 13 | "Language: sl\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "X-Generator: Lokalize 21.04.3\n" 18 | "Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n" 19 | "%100==4 ? 3 : 0);\n" 20 | 21 | #: mountisoaction.cpp:212 22 | #, kde-format 23 | msgctxt "@action:inmenu Action to mount a disk image" 24 | msgid "Mount" 25 | msgstr "Priklopi" 26 | 27 | #: mountisoaction.cpp:223 28 | #, kde-format 29 | msgctxt "@action:inmenu Action to unmount a disk image" 30 | msgid "Unmount" 31 | msgstr "Odklopi" 32 | -------------------------------------------------------------------------------- /po/sv/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Stefan Asserhäll , 2020, 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-17 16:37+0100\n" 11 | "Last-Translator: Stefan Asserhäll \n" 12 | "Language-Team: Swedish \n" 13 | "Language: sv\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 20.08.1\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Montera" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Avmontera" 31 | -------------------------------------------------------------------------------- /po/ta/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2024 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2024 Kishore G 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2024-04-07 16:23+0530\n" 11 | "Last-Translator: Kishore G \n" 12 | "Language-Team: Tamil \n" 13 | "Language: ta\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 24.02.1\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "" 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "நம்பகமான கோப்பு — நம்பகமற்றதாக‍க் குறிக்க தேர்வை நீக்கவும்" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "நம்பகமற்ற கோப்பு — நம்பகமானதாக குறிக்க தேர்ந்தெடுக்கவும்" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | 77 | #: makefileactions.cpp:326 78 | #, kde-format 79 | msgid "Open a terminal window" 80 | msgstr "முனையச் சாளரத்தைத் திற" 81 | 82 | #: makefileactions.cpp:327 83 | #, kde-format 84 | msgid "" 85 | "Open a new terminal window to see the output of making the chosen target." 86 | msgstr "" 87 | 88 | #: makefileactions.cpp:339 89 | #, kde-format 90 | msgid "Cancel running process (%1)" 91 | msgstr "ஓடிக்கொண்டிருக்கும் பணியை ரத்து செய் (%1)" 92 | 93 | #: makefileactions.cpp:340 94 | #, kde-format 95 | msgid "Interrupt the currently running process (%1)." 96 | msgstr "தற்போது ஓடிக்கொண்டிருக்கும் பணியை ரத்து செய் (%1)." 97 | -------------------------------------------------------------------------------- /po/ta/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Kishore G , 2021, 2022. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-04-26 21:15+0530\n" 11 | "Last-Translator: Kishore G \n" 12 | "Language-Team: Tamil \n" 13 | "Language: ta\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=n != 1;\n" 18 | "X-Generator: Lokalize 22.04.0\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "ஏற்று" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "இறக்கு" 31 | -------------------------------------------------------------------------------- /po/tr/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Emir SARI , 2022. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2022-03-11 01:32+0300\n" 11 | "Last-Translator: Emir SARI \n" 12 | "Language-Team: Turkish \n" 13 | "Language: tr\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=2; plural=(n > 1);\n" 18 | "X-Generator: Lokalize 21.12.3\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Bağla" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Bağlantıyı Kes" 31 | -------------------------------------------------------------------------------- /po/uk/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Translation of mountisoaction.po to Ukrainian 2 | # Copyright (C) 2020 This_file_is_part_of_KDE 3 | # This file is distributed under the license LGPL version 2.1 or 4 | # version 3 or later versions approved by the membership of KDE e.V. 5 | # 6 | # Yuri Chornoivan , 2020, 2021. 7 | msgid "" 8 | msgstr "" 9 | "Project-Id-Version: mountisoaction\n" 10 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 11 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 12 | "PO-Revision-Date: 2021-12-17 07:41+0200\n" 13 | "Last-Translator: Yuri Chornoivan \n" 14 | "Language-Team: Ukrainian \n" 15 | "Language: uk\n" 16 | "MIME-Version: 1.0\n" 17 | "Content-Type: text/plain; charset=UTF-8\n" 18 | "Content-Transfer-Encoding: 8bit\n" 19 | "Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n" 20 | "%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" 21 | "X-Generator: Lokalize 20.12.0\n" 22 | 23 | #: mountisoaction.cpp:212 24 | #, kde-format 25 | msgctxt "@action:inmenu Action to mount a disk image" 26 | msgid "Mount" 27 | msgstr "Змонтувати" 28 | 29 | #: mountisoaction.cpp:223 30 | #, kde-format 31 | msgctxt "@action:inmenu Action to unmount a disk image" 32 | msgid "Unmount" 33 | msgstr "Демонтувати" 34 | -------------------------------------------------------------------------------- /po/vi/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) YEAR This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # Phu Hung Nguyen , 2021. 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2021-12-21 17:57+0100\n" 11 | "Last-Translator: Phu Hung Nguyen \n" 12 | "Language-Team: Vietnamese \n" 13 | "Language: vi\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Generator: Lokalize 20.12.2\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "Gắn kết" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "Bỏ gắn kết" 31 | -------------------------------------------------------------------------------- /po/zh_CN/makefileactions.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: kdeorg\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 6 | "PO-Revision-Date: 2024-04-23 19:24\n" 7 | "Last-Translator: \n" 8 | "Language-Team: Chinese Simplified\n" 9 | "Language: zh_CN\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=1; plural=0;\n" 14 | "X-Crowdin-Project: kdeorg\n" 15 | "X-Crowdin-Project-ID: 269464\n" 16 | "X-Crowdin-Language: zh-CN\n" 17 | "X-Crowdin-File: /kf6-trunk/messages/dolphin-plugins/makefileactions.pot\n" 18 | "X-Crowdin-File-ID: 48356\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "编译“%1”%2。" 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "Makefile 操作" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "编译目标“%1”时发生错误。" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "正在为“%1”运行的进程已经成功停止。" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "尝试编译目标“%1”时发生错误。" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "编译(&M)…" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "只有已可信任的文件可以被 Makefile 操作插件使用。" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "已信任文件 — 取消勾选以移除信任" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "不信任文件 — 勾选以添加信任" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "Dolphin Makefile 插件" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | "您确定要信任此文件吗?
已信任的文件可以在右键菜单激活时执行任意代" 77 | "码。" 78 | 79 | #: makefileactions.cpp:326 80 | #, kde-format 81 | msgid "Open a terminal window" 82 | msgstr "打开终端窗口" 83 | 84 | #: makefileactions.cpp:327 85 | #, kde-format 86 | msgid "" 87 | "Open a new terminal window to see the output of making the chosen target." 88 | msgstr "打开一个新的终端窗口以查看编译选定目标的输出信息。" 89 | 90 | #: makefileactions.cpp:339 91 | #, kde-format 92 | msgid "Cancel running process (%1)" 93 | msgstr "取消正在运行的进程 (%1)" 94 | 95 | #: makefileactions.cpp:340 96 | #, kde-format 97 | msgid "Interrupt the currently running process (%1)." 98 | msgstr "中断当前正在运行的进程 (%1)。" 99 | -------------------------------------------------------------------------------- /po/zh_CN/mountisoaction.po: -------------------------------------------------------------------------------- 1 | msgid "" 2 | msgstr "" 3 | "Project-Id-Version: kdeorg\n" 4 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 5 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 6 | "PO-Revision-Date: 2024-04-23 19:24\n" 7 | "Last-Translator: \n" 8 | "Language-Team: Chinese Simplified\n" 9 | "Language: zh_CN\n" 10 | "MIME-Version: 1.0\n" 11 | "Content-Type: text/plain; charset=UTF-8\n" 12 | "Content-Transfer-Encoding: 8bit\n" 13 | "Plural-Forms: nplurals=1; plural=0;\n" 14 | "X-Crowdin-Project: kdeorg\n" 15 | "X-Crowdin-Project-ID: 269464\n" 16 | "X-Crowdin-Language: zh-CN\n" 17 | "X-Crowdin-File: /kf6-trunk/messages/dolphin-plugins/mountisoaction.pot\n" 18 | "X-Crowdin-File-ID: 48350\n" 19 | 20 | #: mountisoaction.cpp:212 21 | #, kde-format 22 | msgctxt "@action:inmenu Action to mount a disk image" 23 | msgid "Mount" 24 | msgstr "挂载" 25 | 26 | #: mountisoaction.cpp:223 27 | #, kde-format 28 | msgctxt "@action:inmenu Action to unmount a disk image" 29 | msgid "Unmount" 30 | msgstr "卸载" 31 | -------------------------------------------------------------------------------- /po/zh_TW/makefileactions.po: -------------------------------------------------------------------------------- 1 | # Copyright (C) 2023 This file is copyright: 2 | # This file is distributed under the same license as the dolphin-plugins package. 3 | # 4 | # SPDX-FileCopyrightText: 2023 Kisaragi Hiu 5 | msgid "" 6 | msgstr "" 7 | "Project-Id-Version: dolphin-plugins\n" 8 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 9 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 10 | "PO-Revision-Date: 2023-11-29 18:34+0900\n" 11 | "Last-Translator: Kisaragi Hiu \n" 12 | "Language-Team: Traditional Chinese \n" 13 | "Language: zh_TW\n" 14 | "MIME-Version: 1.0\n" 15 | "Content-Type: text/plain; charset=UTF-8\n" 16 | "Content-Transfer-Encoding: 8bit\n" 17 | "Plural-Forms: nplurals=1; plural=0;\n" 18 | "X-Generator: Lokalize 23.08.3\n" 19 | 20 | #: makefileactions.cpp:225 21 | #, kde-format 22 | msgid "Make '%1'%2." 23 | msgstr "Make '%1'%2." 24 | 25 | #: makefileactions.cpp:254 makefileactions.cpp:262 makefileactions.cpp:264 26 | #, kde-format 27 | msgid "Makefile Actions" 28 | msgstr "Makefile 動作" 29 | 30 | #: makefileactions.cpp:254 31 | #, kde-format 32 | msgid "An error occurred while making target '%1'." 33 | msgstr "為目標 '%1' 執行 Make 時發生錯誤。" 34 | 35 | #: makefileactions.cpp:262 36 | #, kde-format 37 | msgid "Running process for '%1' successfully stopped." 38 | msgstr "已成功停止 '%1' 的執行中行程。" 39 | 40 | #: makefileactions.cpp:264 41 | #, kde-format 42 | msgid "An error occurred trying to make target '%1'." 43 | msgstr "嘗試為目標 '%1' 執行 Make 時發生錯誤。" 44 | 45 | #: makefileactions.cpp:296 46 | #, kde-format 47 | msgid "&Make…" 48 | msgstr "&Make…" 49 | 50 | #: makefileactions.cpp:301 51 | #, kde-format 52 | msgid "Only trusted files can be used by the Makefile Actions plugin." 53 | msgstr "Makefile 動作外掛程式只會使用受信任的檔案。" 54 | 55 | #: makefileactions.cpp:304 56 | #, kde-format 57 | msgid "Trusted file — uncheck to remove trust" 58 | msgstr "受信任的檔案 — 取消勾選來移除信任" 59 | 60 | #: makefileactions.cpp:304 61 | #, kde-format 62 | msgid "Untrusted file — check to trust" 63 | msgstr "不信任的檔案 — 勾選來信任" 64 | 65 | #: makefileactions.cpp:311 66 | #, kde-format 67 | msgid "Dolphin Makefile Plugin" 68 | msgstr "Dolphin Makefile 外掛程式" 69 | 70 | #: makefileactions.cpp:312 71 | #, kde-format 72 | msgid "" 73 | "Are you sure you can trust this file?
Trusted files may execute " 74 | "arbitrary code on context-menu invocation." 75 | msgstr "" 76 | "您確定可以信任這個檔案嗎?
受信任的檔案可以在內文選單觸發後執行任何" 77 | "程式碼。" 78 | 79 | #: makefileactions.cpp:326 80 | #, kde-format 81 | msgid "Open a terminal window" 82 | msgstr "開啟終端機視窗" 83 | 84 | #: makefileactions.cpp:327 85 | #, kde-format 86 | msgid "" 87 | "Open a new terminal window to see the output of making the chosen target." 88 | msgstr "開啟終端機視窗來檢視為指定目標執行 Make 的輸出。" 89 | 90 | #: makefileactions.cpp:339 91 | #, kde-format 92 | msgid "Cancel running process (%1)" 93 | msgstr "取消執行中行程 (%1)" 94 | 95 | #: makefileactions.cpp:340 96 | #, kde-format 97 | msgid "Interrupt the currently running process (%1)." 98 | msgstr "中斷目前執行中行程 (%1)。" 99 | -------------------------------------------------------------------------------- /po/zh_TW/mountisoaction.po: -------------------------------------------------------------------------------- 1 | # Chinese translations for dolphin-plugins package 2 | # dolphin-plugins 套件的正體中文翻譯. 3 | # Copyright (C) 2022 This file is copyright: 4 | # This file is distributed under the same license as the dolphin-plugins package. 5 | # 6 | # Automatically generated, 2022. 7 | # Kisaragi Hiu , 2023. 8 | msgid "" 9 | msgstr "" 10 | "Project-Id-Version: dolphin-plugins\n" 11 | "Report-Msgid-Bugs-To: https://bugs.kde.org\n" 12 | "POT-Creation-Date: 2024-04-22 00:40+0000\n" 13 | "PO-Revision-Date: 2023-01-21 23:57+0900\n" 14 | "Last-Translator: Kisaragi Hiu \n" 15 | "Language-Team: Traditional Chinese \n" 16 | "Language: zh_TW\n" 17 | "MIME-Version: 1.0\n" 18 | "Content-Type: text/plain; charset=UTF-8\n" 19 | "Content-Transfer-Encoding: 8bit\n" 20 | "Plural-Forms: nplurals=1; plural=0;\n" 21 | "X-Generator: Lokalize 22.12.0\n" 22 | 23 | #: mountisoaction.cpp:212 24 | #, kde-format 25 | msgctxt "@action:inmenu Action to mount a disk image" 26 | msgid "Mount" 27 | msgstr "掛載" 28 | 29 | #: mountisoaction.cpp:223 30 | #, kde-format 31 | msgctxt "@action:inmenu Action to unmount a disk image" 32 | msgid "Unmount" 33 | msgstr "卸載" 34 | -------------------------------------------------------------------------------- /svn/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_definitions(-DTRANSLATION_DOMAIN=\"fileviewsvnplugin\") 2 | 3 | kcoreaddons_add_plugin(fileviewsvnplugin INSTALL_NAMESPACE "dolphin/vcs") 4 | 5 | target_sources(fileviewsvnplugin PRIVATE 6 | fileviewsvnplugin.cpp 7 | svncommands.cpp 8 | svncommitdialog.cpp 9 | svnlogdialog.cpp 10 | svncheckoutdialog.cpp 11 | svnprogressdialog.cpp 12 | svncleanupdialog.cpp 13 | 14 | fileviewsvnplugin.h 15 | svncommands.h 16 | svncommitdialog.h 17 | svnlogdialog.h 18 | svncheckoutdialog.h 19 | svnprogressdialog.h 20 | svncleanupdialog.h 21 | ) 22 | 23 | ki18n_wrap_ui(fileviewsvnplugin 24 | svnlogdialog.ui 25 | svncheckoutdialog.ui 26 | svnprogressdialog.ui 27 | svncleanupdialog.ui 28 | ) 29 | 30 | kconfig_add_kcfg_files(fileviewsvnplugin 31 | fileviewsvnpluginsettings.kcfgc 32 | ) 33 | 34 | target_link_libraries(fileviewsvnplugin 35 | Qt6::Core 36 | Qt6::Widgets 37 | KF6::ConfigGui 38 | KF6::I18n 39 | KF6::KIOCore 40 | KF6::KIOWidgets 41 | DolphinVcs 42 | ) 43 | 44 | install(FILES fileviewsvnpluginsettings.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR}) 45 | -------------------------------------------------------------------------------- /svn/Messages.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | $EXTRACTRC *.kcfg >> rc.cpp 3 | $EXTRACTRC *.ui >> rc.cpp 4 | $XGETTEXT *.cpp -o $podir/fileviewsvnplugin.pot 5 | -------------------------------------------------------------------------------- /svn/fileviewsvnplugin.json: -------------------------------------------------------------------------------- 1 | { 2 | "KPlugin": { 3 | "MimeTypes": [ 4 | "text/plain" 5 | ], 6 | "Name": "Subversion", 7 | "Name[ast]": "Subversion", 8 | "Name[az]": "Subversion", 9 | "Name[bg]": "Subversion", 10 | "Name[ca@valencia]": "Subversion", 11 | "Name[ca]": "Subversion", 12 | "Name[cs]": "Subversion", 13 | "Name[da]": "Subversion", 14 | "Name[de]": "Subversion", 15 | "Name[el]": "Subversion", 16 | "Name[en_GB]": "Subversion", 17 | "Name[eo]": "Subversion", 18 | "Name[es]": "Subversion", 19 | "Name[eu]": "Subversion", 20 | "Name[fi]": "Subversion", 21 | "Name[fr]": "Subversion", 22 | "Name[gl]": "Subversion", 23 | "Name[he]": "Subversion", 24 | "Name[hu]": "Subversion", 25 | "Name[ia]": "Subversion", 26 | "Name[id]": "Subversi", 27 | "Name[ie]": "Subversion", 28 | "Name[is]": "Subversion", 29 | "Name[it]": "Subversion", 30 | "Name[ka]": "Subversion", 31 | "Name[ko]": "Subversion", 32 | "Name[lv]": "Subversion", 33 | "Name[my]": "ဆပ်ဘ်ဗားရှင်း", 34 | "Name[nb]": "Subversion", 35 | "Name[nl]": "Subversion", 36 | "Name[nn]": "Subversion", 37 | "Name[pa]": "ਸਬਵਰਜ਼ਨ", 38 | "Name[pl]": "Subversion", 39 | "Name[pt]": "Subversion", 40 | "Name[pt_BR]": "Subversion", 41 | "Name[ro]": "Subversion", 42 | "Name[ru]": "Subversion", 43 | "Name[sa]": "विध्वंसनम्", 44 | "Name[sk]": "Subversion", 45 | "Name[sl]": "Subversion", 46 | "Name[sv]": "Subversion", 47 | "Name[tr]": "Subversion", 48 | "Name[uk]": "Subversion", 49 | "Name[vi]": "Subversion", 50 | "Name[x-test]": "xxSubversionxx", 51 | "Name[zh_CN]": "Subversion", 52 | "Name[zh_TW]": "Subversion" 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /svn/fileviewsvnpluginsettings.kcfg: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 8 | 9 | 10 | false 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /svn/fileviewsvnpluginsettings.kcfgc: -------------------------------------------------------------------------------- 1 | File=fileviewsvnpluginsettings.kcfg 2 | ClassName=FileViewSvnPluginSettings 3 | Singleton=true 4 | Mutators=true 5 | -------------------------------------------------------------------------------- /svn/svncheckoutdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2020 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef SVNCHECKOUTDIALOG_H 8 | #define SVNCHECKOUTDIALOG_H 9 | 10 | #include 11 | 12 | #include "ui_svncheckoutdialog.h" 13 | 14 | class SvnCheckoutDialog : public QDialog 15 | { 16 | Q_OBJECT 17 | public: 18 | SvnCheckoutDialog(const QString &contextDir, QWidget *parent = nullptr); 19 | virtual ~SvnCheckoutDialog() override; 20 | 21 | QString url() const; 22 | QString directory() const; 23 | bool omitExternals() const; 24 | 25 | public Q_SLOTS: 26 | void on_leRepository_textChanged(const QString &text); 27 | 28 | private: 29 | Ui::SvnCheckoutDialog m_ui; 30 | QString m_dir; 31 | }; 32 | 33 | #endif // SVNCHECKOUTDIALOG_H 34 | -------------------------------------------------------------------------------- /svn/svncheckoutdialog.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | SvnCheckoutDialog 4 | 5 | 6 | 7 | 0 8 | 0 9 | 340 10 | 180 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | SVN Checkout 21 | 22 | 23 | 24 | 25 | 26 | URL of repository: 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | Checkout directory: 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | Omit externals 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | Qt::Horizontal 56 | 57 | 58 | 59 | 148 60 | 20 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | false 69 | 70 | 71 | OK 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | Cancel 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | -------------------------------------------------------------------------------- /svn/svncleanupdialog.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2020 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #include "svncleanupdialog.h" 8 | 9 | #include 10 | #include 11 | #include 12 | 13 | #include "svncommands.h" 14 | 15 | SvnCleanupDialog::SvnCleanupDialog(const QString &workingDir, QWidget *parent) 16 | : QDialog(parent) 17 | { 18 | m_ui.setupUi(this); 19 | 20 | /* 21 | * Add actions, establish connections. 22 | */ 23 | connect(m_ui.buttonCancel, &QPushButton::clicked, this, &QDialog::reject); 24 | QAction *pickDirectory = m_ui.lineEditDirectory->addAction(QIcon::fromTheme(QStringLiteral("folder")), QLineEdit::TrailingPosition); 25 | connect(pickDirectory, &QAction::triggered, this, [this]() { 26 | const QString dir = QFileDialog::getExistingDirectory(this, 27 | i18nc("@title:window", "Choose a directory to clean up"), 28 | m_ui.lineEditDirectory->text(), 29 | QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks); 30 | 31 | if (!dir.isEmpty()) { 32 | m_ui.lineEditDirectory->setText(dir); 33 | } 34 | }); 35 | 36 | /* 37 | * Additional setup. 38 | */ 39 | m_ui.lineEditDirectory->setText(workingDir); 40 | 41 | setAttribute(Qt::WA_DeleteOnClose); 42 | show(); 43 | activateWindow(); 44 | } 45 | 46 | SvnCleanupDialog::~SvnCleanupDialog() = default; 47 | 48 | void SvnCleanupDialog::on_lineEditDirectory_textChanged(const QString &text) 49 | { 50 | m_ui.buttonOk->setEnabled(QFileInfo(text).isDir()); 51 | } 52 | 53 | void SvnCleanupDialog::on_buttonOk_clicked() 54 | { 55 | const QString workDir = m_ui.lineEditDirectory->text(); 56 | const bool removeUnversioned = m_ui.checkBoxUnversioned->isChecked(); 57 | const bool removeIgnored = m_ui.checkBoxIgnored->isChecked(); 58 | const bool includeExternals = m_ui.checkBoxExternals->isChecked(); 59 | 60 | const CommandResult result = SvnCommands::cleanup(workDir, removeUnversioned, removeIgnored, includeExternals); 61 | if (result.success) { 62 | Q_EMIT operationCompletedMessage(i18nc("@info:status", "SVN clean up completed successfully.")); 63 | } else { 64 | Q_EMIT errorMessage(i18nc("@info:status", "SVN clean up failed for %1", workDir)); 65 | qDebug() << result.stdErr; 66 | } 67 | 68 | QDialog::accept(); 69 | } 70 | 71 | #include "moc_svncleanupdialog.cpp" 72 | -------------------------------------------------------------------------------- /svn/svncleanupdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2020 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef SVNCLEANUPDIALOG_H 8 | #define SVNCLEANUPDIALOG_H 9 | 10 | #include 11 | 12 | #include "ui_svncleanupdialog.h" 13 | 14 | /** 15 | * \brief Dialog for SVN cleanup operation. 16 | * 17 | * \note Dialog sets up a Qt::WA_DeleteOnClose attribute so it's delete itself on close. 18 | */ 19 | class SvnCleanupDialog : public QDialog 20 | { 21 | Q_OBJECT 22 | public: 23 | /** 24 | * \param[in] workingDir Directory to call 'svn cleanup' on. 25 | * \param[in,out] parent Parent widget. 26 | */ 27 | SvnCleanupDialog(const QString &workingDir, QWidget *parent = nullptr); 28 | virtual ~SvnCleanupDialog() override; 29 | 30 | public Q_SLOTS: 31 | void on_lineEditDirectory_textChanged(const QString &text); 32 | void on_buttonOk_clicked(); 33 | 34 | Q_SIGNALS: 35 | /** 36 | * Is emitted if an error occuers with a message \a msg. 37 | */ 38 | void errorMessage(const QString &msg); 39 | 40 | /** 41 | * Is emitted for successful operation with a message \a msg. 42 | */ 43 | void operationCompletedMessage(const QString &msg); 44 | 45 | private: 46 | Ui::SvnCleanupDialog m_ui; 47 | }; 48 | 49 | #endif // SVNCLEANUPDIALOG_H 50 | -------------------------------------------------------------------------------- /svn/svncleanupdialog.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | SvnCleanupDialog 4 | 5 | 6 | 7 | 0 8 | 0 9 | 370 10 | 182 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | SVN Cleanup... 21 | 22 | 23 | 24 | 25 | 26 | Clean up directory: 27 | 28 | 29 | 30 | 31 | 32 | 33 | true 34 | 35 | 36 | false 37 | 38 | 39 | 40 | 41 | 42 | 43 | Delete unversioned files and directories 44 | 45 | 46 | 47 | 48 | 49 | 50 | Delete ignored files and directories 51 | 52 | 53 | 54 | 55 | 56 | 57 | Include externals 58 | 59 | 60 | 61 | 62 | 63 | 64 | Qt::Horizontal 65 | 66 | 67 | 68 | 40 69 | 20 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | false 78 | 79 | 80 | OK 81 | 82 | 83 | 84 | 85 | 86 | true 87 | 88 | 89 | true 90 | 91 | 92 | 93 | 94 | 95 | 96 | Cancel 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | -------------------------------------------------------------------------------- /svn/svncommitdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2019-2020 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef SVNCOMMITDIALOG_H 8 | #define SVNCOMMITDIALOG_H 9 | 10 | #include 11 | #include 12 | 13 | #include 14 | 15 | class QPlainTextEdit; 16 | class QTableWidget; 17 | 18 | /** 19 | * \brief SVN Commit dialog class. 20 | */ 21 | class SvnCommitDialog : public QDialog 22 | { 23 | Q_OBJECT 24 | public: 25 | /** 26 | * Constructor. 27 | * 28 | * \param versionInfo Pointer to a current full list of SVN plugin changed files. This pointer 29 | * is saved internaly and used for changes list updates. 30 | * \param context List of dirs and files for which this dialog is shown. Every directory entry 31 | * means "every file in this directory", file stands for a file. This context is used 32 | * like a filter for \p versionInfo to make changes list. 33 | * \param parent Parent widget. 34 | */ 35 | SvnCommitDialog(const QHash *versionInfo, const QStringList &context, QWidget *parent = nullptr); 36 | 37 | virtual ~SvnCommitDialog() override; 38 | 39 | Q_SIGNALS: 40 | /** 41 | * Is emitted for SVN commit. 42 | * 43 | * \param context List of files and dirs for which this commit is applied. This not necessarily 44 | * the same list which passed to the class contructor because some files might be, for 45 | * example, reverted. 46 | * \param msg Commit message. 47 | */ 48 | void commit(const QStringList &context, const QString &msg); 49 | 50 | void revertFiles(const QStringList &filesPath); 51 | void diffFile(const QString &filePath); 52 | void addFiles(const QStringList &filesPath); 53 | 54 | public Q_SLOTS: 55 | void refreshChangesList(); 56 | void show(); 57 | 58 | private Q_SLOTS: 59 | void contextMenu(const QPoint &pos); 60 | 61 | private: 62 | const QHash *m_versionInfoHash; 63 | const QStringList m_context; 64 | QPlainTextEdit *m_editor; 65 | QTableWidget *m_changes; 66 | QAction *m_actRevertFile; 67 | QAction *m_actDiffFile; 68 | QAction *m_actAddFile; 69 | }; 70 | 71 | #endif // SVNCOMMITDIALOG_H 72 | -------------------------------------------------------------------------------- /svn/svnlogdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2019-2020 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef SVNLOGDIALOG_H 8 | #define SVNLOGDIALOG_H 9 | 10 | #include 11 | #include 12 | 13 | #include "svncommands.h" 14 | 15 | #include "ui_svnlogdialog.h" 16 | 17 | class SvnLogDialog : public QDialog 18 | { 19 | Q_OBJECT 20 | public: 21 | SvnLogDialog(const QString &contextDir, QWidget *parent = nullptr); 22 | virtual ~SvnLogDialog() override; 23 | 24 | public Q_SLOTS: 25 | void setCurrentRevision(ulong revision); 26 | void refreshLog(); 27 | void on_tLog_currentCellChanged(int currentRow, int currentColumn, int previousRow, int previousColumn); 28 | 29 | Q_SIGNALS: 30 | void errorMessage(const QString &msg); 31 | void operationCompletedMessage(const QString &msg); 32 | void diffAgainstWorkingCopy(const QString &localFilePath, ulong rev); 33 | void diffBetweenRevs(const QString &remoteFilePath, ulong rev1, ulong rev2); 34 | 35 | private Q_SLOTS: 36 | void showContextMenuLog(const QPoint &pos); 37 | void showContextMenuChangesList(const QPoint &pos); 38 | void updateRepoToRevision(); 39 | void revertRepoToRevision(); 40 | void revertFileToRevision(); 41 | 42 | private: 43 | Ui::SvnLogDialog m_ui; 44 | QSharedPointer> m_log; 45 | const QString m_contextDir; 46 | uint m_logLength; 47 | QAction *m_updateToRev; 48 | QAction *m_revertToRev; 49 | QAction *m_diffFilePrev; 50 | QAction *m_diffFileCurrent; 51 | QAction *m_fileRevertToRev; 52 | }; 53 | 54 | #endif // SVNLOGDIALOG_H 55 | -------------------------------------------------------------------------------- /svn/svnprogressdialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | SPDX-FileCopyrightText: 2019-2020 Nikolai Krasheninnikov 3 | 4 | SPDX-License-Identifier: GPL-2.0-or-later 5 | */ 6 | 7 | #ifndef SVNPROGRESSDIALOG_H 8 | #define SVNPROGRESSDIALOG_H 9 | 10 | #include 11 | 12 | #include "ui_svnprogressdialog.h" 13 | 14 | class QProcess; 15 | 16 | /** 17 | * \brief Dialog for showing SVN operation process. 18 | * 19 | * This dialog connects to the Subversion process (by \p connectToProcess()) and shows its output. 20 | * User has possibility to terminate the process by pressing cancel button. Normally do not need to 21 | * call \p disconnectFromProcess() as it calls automaticaly on connected process finished() signal. 22 | * 23 | * \note This class can call 'svn cleanup' on a Subversion process dir in case of terminating it if 24 | * a working directory were passed to the constructor. 25 | */ 26 | class SvnProgressDialog : public QDialog 27 | { 28 | Q_OBJECT 29 | public: 30 | /** 31 | * \param[in] title Dialog title. 32 | * \param[in] workingDir Directory to call 'svn cleanup' on. Empty for no cleanup. 33 | * \param[in,out] parent Parent widget. 34 | */ 35 | SvnProgressDialog(const QString &title, const QString &workingDir = QString(), QWidget *parent = nullptr); 36 | virtual ~SvnProgressDialog() override; 37 | 38 | /** 39 | * Connects to the process signals, stdout and stderr. 40 | */ 41 | void connectToProcess(QProcess *process); 42 | 43 | /** 44 | * Disconnects from previously connected process, nothing happens either. This function is 45 | * automaticaly called on connected process finished() signal. 46 | */ 47 | void disconnectFromProcess(); 48 | 49 | public Q_SLOTS: 50 | void appendInfoText(const QString &text); 51 | void appendErrorText(const QString &text); 52 | void operationCompeleted(); 53 | 54 | virtual void reject() override; 55 | 56 | private: 57 | Ui::SvnProgressDialog m_ui; 58 | 59 | QMetaObject::Connection m_conCancel; 60 | QMetaObject::Connection m_conCompeted; 61 | QMetaObject::Connection m_conProcessError; 62 | QMetaObject::Connection m_conStdOut; 63 | QMetaObject::Connection m_conStrErr; 64 | 65 | bool m_svnTerminated; 66 | const QString m_workingDir; 67 | }; 68 | 69 | #endif // SVNPROGRESSDIALOG_H 70 | -------------------------------------------------------------------------------- /svn/svnprogressdialog.ui: -------------------------------------------------------------------------------- 1 | 2 | 3 | SvnProgressDialog 4 | 5 | 6 | 7 | 0 8 | 0 9 | 521 10 | 409 11 | 12 | 13 | 14 | 15 | 0 16 | 0 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | true 27 | 28 | 29 | 30 | 31 | 32 | 33 | Cancel 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | false 44 | 45 | 46 | OK 47 | 48 | 49 | 50 | 51 | 52 | true 53 | 54 | 55 | true 56 | 57 | 58 | 59 | 60 | 61 | 62 | Qt::Horizontal 63 | 64 | 65 | 66 | 328 67 | 20 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | --------------------------------------------------------------------------------