commit d15f7705ca0c820dea0d491faf2808c0b7cb459e Author: 谢炜 Date: Thu Jun 2 16:27:49 2022 +0800 Import Upstream version 3.1.0.2022+0310 diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..187a374 --- /dev/null +++ b/AUTHORS @@ -0,0 +1,19 @@ +UKUI: +Hao Lee + +MATE: +Perberos +Steve Zesch +Stefano Karapetsas +Michal Ratajsky + +GNOME Maintainers: +Marc-Andre Lureau +Bastien Nocera + +GNOME Authors: +Andreas Hyden (grecord) +Seth Nickell (gst-mixer) +Ronald Bultje (gst-mixer) +Thomas Vander Stichele (profiles) +William Jon McCann (mate-volume-control) diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/COPYING @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..019ffa6 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,2 @@ +The ChangeLog is auto-generated when releasing. If you are seeing this, use +'git log' for a detailed list of changes. diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..6953c46 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,48 @@ +NULL = + +SUBDIRS = data po man + +DISTCHECK_CONFIGURE_FLAGS = \ + --enable-more-warnings \ + --enable-compile-warnings=maximum \ + --enable-deprecated + +DIST_SUBDIRS = \ + data \ + po \ + man \ + $(NULL) + +EXTRA_DIST = \ + .version \ + autogen.sh \ + configure \ + ChangeLog \ + COPYING \ + COPYING-DOCS \ + build-aux/git-version-gen \ + $(INTLTOOL_BUILT:=.in) \ + $(NULL) + +DISTCLEANFILES = \ + po/.intltool-merge-cache \ + $(NULL) + +ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} + +# see build-aux/git-version-get for details +BUILT_SOURCES = $(top_srcdir)/.version +$(top_srcdir)/.version: + echo $(VERSION) > $@-t && mv $@-t $@ + +# Build ChangeLog from GIT history +ChangeLog: + $(AM_V_GEN) if test -d $(top_srcdir)/.git; then \ + GIT_DIR="$(top_srcdir)/.git" git log --stat > $@; \ + fi + +dist: ChangeLog + +.PHONY: ChangeLog + +-include $(top_srcdir)/git.mk diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..7ef6657 --- /dev/null +++ b/NEWS @@ -0,0 +1,2 @@ +### ukui-media 1.1.0 + Fork mate-media diff --git a/README b/README new file mode 100644 index 0000000..957cd2b --- /dev/null +++ b/README @@ -0,0 +1,11 @@ +These are the media tools for UKUI: + +ukui-volume-control - UKUI volume control application and applet + +Refer to the following files for license information for each sub-component +of ukui-media: + +ukui-volume-control - COPYING +documentation - COPYING-DOCS + +UKUI-Media is a fork of MATE-Media. diff --git a/audio/audio.cpp b/audio/audio.cpp new file mode 100644 index 0000000..b531888 --- /dev/null +++ b/audio/audio.cpp @@ -0,0 +1,97 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "audio.h" +#include "ui_audio.h" + +#include +#include +#include +Audio::Audio() : mFirstLoad(true) +{ +#ifndef QT_NO_TRANSLATION + QString translatorFileName = QLatin1String("qt_"); + translatorFileName += QLocale::system().name(); + QTranslator *pTranslator = new QTranslator(); + if (pTranslator->load(translatorFileName, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) + QApplication::installTranslator(pTranslator); +#endif + QTranslator *translator = new QTranslator(this); + translator->load("/usr/share/ukui-media/translations/audio/" + QLocale::system().name()); + QApplication::installTranslator(translator); + pluginName = tr("Audio"); + pluginType = SYSTEM; +} + +Audio::~Audio() +{ +} + +QString Audio::plugini18nName() +{ + return pluginName; +} + +int Audio::pluginTypes() +{ + return pluginType; +} + +QWidget *Audio::pluginUi() +{ + if (mFirstLoad) { + mFirstLoad = false; + widget = new UkmediaMainWidget; + } + return widget; +} + +bool Audio::isEnable() const +{ + return true; +} + +const QString Audio::name() const +{ + return QStringLiteral("Audio"); +} + +bool Audio::isShowOnHomePage() const +{ + return true; +} + +QIcon Audio::icon() const +{ + return QIcon(); +} + +QString Audio::translationPath() const +{ + return "/usr/share/ukui-media/translations/audio/%1.ts"; +} + +void Audio::initSearchText() +{ + //~ contents_path /UkccPlugin/UkccPlugin + tr("UkccPlugin"); + //~ contents_path /UkccPlugin/ukccplugin test + tr("ukccplugin test"); +} + diff --git a/audio/audio.h b/audio/audio.h new file mode 100644 index 0000000..5ebff19 --- /dev/null +++ b/audio/audio.h @@ -0,0 +1,73 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef AUDIO_H +#define AUDIO_H + +#include +#include +#include +#include +#include "ukmedia_main_widget.h" +#include +#include +#include + +#if defined(LIBUKCC_LIBRARY) +# define LIBUKCC_EXPORT Q_DECL_EXPORT +#else +# define LIBUKCC_EXPORT Q_DECL_IMPORT +#endif + +namespace Ui { +class Audio; +} + +class Audio : public QObject, CommonInterface +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID "org.ukcc.CommonInterface") + Q_INTERFACES(CommonInterface) + +public: + + Audio(); + ~Audio(); + + QString plugini18nName() Q_DECL_OVERRIDE; + int pluginTypes() Q_DECL_OVERRIDE; + QWidget *pluginUi() Q_DECL_OVERRIDE; + bool isEnable() const Q_DECL_OVERRIDE; + const QString name() const Q_DECL_OVERRIDE; + bool isShowOnHomePage() const Q_DECL_OVERRIDE; + QIcon icon() const Q_DECL_OVERRIDE; + QString translationPath() const Q_DECL_OVERRIDE; + +private: + QString pluginName; + int pluginType; + QWidget *widget; + bool mFirstLoad; + +private: + void initSearchText(); // 搜索翻译 +}; + + +#endif // AUDIO_H diff --git a/audio/audio.pro b/audio/audio.pro new file mode 100644 index 0000000..c3bdee0 --- /dev/null +++ b/audio/audio.pro @@ -0,0 +1,86 @@ +#------------------------------------------------- +# +# Project created by QtCreator 2019-05-30T09:45:54 +# +#------------------------------------------------- + +#include(../../../env.pri) + +QT += widgets xml dbus + +TEMPLATE = lib +CONFIG += plugin + +#include($$PROJECT_COMPONENTSOURCE/switchbutton.pri) +#include($$PROJECT_COMPONENTSOURCE/label.pri) + +INCLUDEPATH += ../../.. \ + $$PROJECT_COMPONENTSOURCE \ + +TARGET = $$qtLibraryTarget(audio) +DESTDIR = ../ +target.path = $$[QT_INSTALL_LIBS]/ukui-control-center + +CONFIG += c++11 \ + no_keywords link_pkgconfig + +PKGCONFIG += gio-2.0 \ + libxml-2.0 \ + Qt5Multimedia \ + gsettings-qt \ + libcanberra \ + dconf \ + libpulse \ + libpulse-mainloop-glib +#DEFINES += QT_DEPRECATED_WARNINGS + +SOURCES += \ + audio.cpp \ + ukmedia_input_widget.cpp \ + ukmedia_main_widget.cpp \ + ukmedia_output_widget.cpp \ + ukmedia_sound_effects_widget.cpp \ + ukmedia_volume_control.cpp \ + ukui_custom_style.cpp \ + customstyle.cpp \ + ukmedia_slider_tip_label_helper.cpp \ + ukui_list_widget_item.cpp \ + titlelabel.cpp \ + switchbutton.cpp + +HEADERS += \ + audio.h \ + ukmedia_input_widget.h \ + ukmedia_main_widget.h \ + ukmedia_output_widget.h \ + ukmedia_sound_effects_widget.h \ + ukmedia_volume_control.h \ + ukui_custom_style.h \ + customstyle.h \ + ukmedia_slider_tip_label_helper.h \ + ukui_list_widget_item.h \ + titlelabel.h \ + switchbutton.h + +FORMS += \ + audio.ui + +TRANSLATIONS += \ + translations/zh_CN.ts \ + translations/tr.ts \ + translations/bo.ts + +isEmpty(PREFIX) { + PREFIX = /usr +} + +qm_files.path = $${PREFIX}/share/ukui-media/translations/audio/ +qm_files.files = translations/* + +CONFIG(release, debug|release) { + !system($$PWD/translate_generation.sh): error("Failed to generate translation") +} + + +INSTALLS += target \ + qm_files \ diff --git a/audio/audio.ui b/audio/audio.ui new file mode 100644 index 0000000..b2cbade --- /dev/null +++ b/audio/audio.ui @@ -0,0 +1,49 @@ + + + Audio + + + + 0 + 0 + 800 + 710 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Audio + + + + 0 + + + 0 + + + 0 + + + 32 + + + 48 + + + + + + + diff --git a/audio/customstyle.cpp b/audio/customstyle.cpp new file mode 100644 index 0000000..cf2b78c --- /dev/null +++ b/audio/customstyle.cpp @@ -0,0 +1,371 @@ +#include "customstyle.h" + +#include +#include +#include +#include +CustomStyle::CustomStyle(const QString &proxyStyleName, QObject *parent) : QProxyStyle (proxyStyleName) +{ + Q_UNUSED(parent); + m_helpTip = new SliderTipLabelHelper(this); +} +CustomStyle::~CustomStyle() +{ +} + +void CustomStyle::drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const +{ + if(control == CC_ToolButton) + { + /// 我们需要获取ToolButton的详细信息,通过qstyleoption_cast可以得到 + /// 对应的option,通过拷贝构造函数得到一份备份用于绘制子控件 + /// 我们一般不用在意option是怎么得到的,大部分的Qt控件都能够提供了option的init方法 + + } + return QProxyStyle::drawComplexControl(control, option, painter, widget); +} + +void CustomStyle::drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const +{ + + switch (element) { + case CE_ProgressBar: + { + if (const QStyleOptionProgressBar *pb = qstyleoption_cast(option)) { + QStyleOptionProgressBar subopt = *pb; + subopt.rect = subElementRect(SE_ProgressBarGroove, pb, widget); + proxy()->drawControl(CE_ProgressBarGroove, &subopt, painter, widget); + subopt.rect = subElementRect(SE_ProgressBarContents, pb, widget); + proxy()->drawControl(CE_ProgressBarContents, &subopt, painter, widget); + + //这是这个控件的当前进度的文字,你那边看情况是否需要绘制 + // if (pb->textVisible) { + // subopt.rect = subElementRect(SE_ProgressBarLabel, pb, widget); + // proxy()->drawControl(CE_ProgressBarLabel, &subopt, painter, widget); + // } + return; + } + break; + } + + case CE_ProgressBarGroove: + { + //这是这个控件的背景,你那边看情况是否绘制 + return; + if (const QStyleOptionProgressBar *pbg = qstyleoption_cast(option)) { + const bool enable = pbg->state &State_Enabled; + painter->save(); + painter->setRenderHint(QPainter::Antialiasing, true); + painter->setPen(Qt::NoPen); + painter->setBrush(pbg->palette.brush(enable ? QPalette::Active : QPalette::Disabled, QPalette::Window)); + painter->drawRect(pbg->rect); + painter->restore(); + return; + } + break; + } + + case CE_ProgressBarContents: + { + if (const QStyleOptionProgressBar *bar = qstyleoption_cast(option)) { + if (bar->progress == bar->maximum) + return; + + const bool enable = bar->state & QStyle::State_Enabled; + const bool vertical = bar->orientation == Qt::Vertical; + const bool inverted = bar->invertedAppearance; + qint64 minimum = qint64(bar->minimum); + qint64 maximum = qint64(bar->maximum); + qint64 progress = qint64(bar->progress); + qint64 totalSteps = qMax(Q_INT64_C(1), maximum - minimum); + qint64 progressSteps = progress - bar->minimum; + qint64 progressBarWidth = progressSteps * (vertical ? bar->rect.height() : bar->rect.width()) / totalSteps; + + int ProgressBarItem_Width = 4; + int ProgressBarItem_Distance = 16; + int distance = ProgressBarItem_Distance + ProgressBarItem_Width; + int num = progressBarWidth / distance; + int totalnum = (vertical ? bar->rect.height() : bar->rect.width()) / distance; + + bool reverse = (!vertical && (bar->direction == Qt::RightToLeft)) || vertical; + if (inverted) + reverse = !reverse; + + int ProgressBarItem_Hight = 16; + QRect drawRect(bar->rect); + if (vertical) { + drawRect.setWidth(ProgressBarItem_Hight); + } else { + drawRect.setHeight(ProgressBarItem_Hight); + } + drawRect.moveCenter(bar->rect.center()); + + QRect itemRect(drawRect); + painter->save(); + painter->setPen(Qt::NoPen); + painter->setRenderHints(QPainter::Antialiasing, true); + for (int var = 0; var < totalnum; ++var) { + if (var < num) { + if (enable) + painter->setBrush(bar->palette.brush(QPalette::Active, QPalette::Highlight)); + else + painter->setBrush(bar->palette.color(QPalette::Active, QPalette::Highlight).light(150)); + } else { + painter->setBrush(bar->palette.brush(enable ? QPalette::Active : QPalette::Disabled, QPalette::Button)); + } + + if (vertical) + itemRect.setRect(drawRect.left(), !reverse ? drawRect.top() + var * distance : drawRect.bottom() - ProgressBarItem_Width - var * distance, + drawRect.width(), ProgressBarItem_Width); + else + itemRect.setRect(reverse ? drawRect.right() - ProgressBarItem_Width - var * distance : drawRect.left() + var * distance, drawRect.top(), + ProgressBarItem_Width, drawRect.height()); + painter->drawRoundedRect(itemRect, ProgressBarItem_Width/2, ProgressBarItem_Width/2); + } + painter->restore();; + return; + } + break; + } + + default: + break; + } + + return QProxyStyle::drawControl(element, option, painter, widget); +} + +void CustomStyle::drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const +{ + return QProxyStyle::drawItemPixmap(painter, rectangle, alignment, pixmap); +} + +void CustomStyle::drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole) const +{ + return QProxyStyle::drawItemText(painter, rectangle, alignment, palette, enabled, text, textRole); +} + +//绘制简单的颜色圆角等 +void CustomStyle::drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const +{ + switch (element) { + //绘制 ToolButton + case PE_PanelButtonTool:{ + painter->save(); + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x00)); + painter->drawRoundedRect(option->rect,4,4); + if (option->state & State_MouseOver) { + if (option->state & State_Sunken) { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x14)); + painter->drawRoundedRect(option->rect,4,4); + qDebug() << " 点击按钮"; + } else { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); + painter->drawRoundedRect(option->rect,4,4); + qDebug() << "悬停按钮"; + } + } + painter->restore(); + return; + } + case PE_PanelTipLabel:{ + painter->save(); + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0x00,0xff)); + painter->drawRoundedRect(option->rect,4,4); + painter->restore(); + return; + }break; + case PE_PanelButtonCommand:{ + painter->save(); + painter->setRenderHint(QPainter::TextAntialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x00)); + if (option->state & State_MouseOver) { + if (option->state & State_Sunken) { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0x3d,0x6b,0xe5,0xff)); + painter->drawRoundedRect(option->rect,4,4); + } else { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); + painter->drawRoundedRect(option->rect.adjusted(2,2,-2,-2),4,4); + } + } + painter->restore(); + return; + }break; + } + return QProxyStyle::drawPrimitive(element, option, painter, widget); +} + +QPixmap CustomStyle::generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const +{ + return QProxyStyle::generatedIconPixmap(iconMode, pixmap, option); +} + +QStyle::SubControl CustomStyle::hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget) const +{ + return QProxyStyle::hitTestComplexControl(control, option, position, widget); +} + +QRect CustomStyle::itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const +{ + return QProxyStyle::itemPixmapRect(rectangle, alignment, pixmap); +} + +QRect CustomStyle::itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const +{ + return QProxyStyle::itemTextRect(metrics, rectangle, alignment, enabled, text); +} + +// +int CustomStyle::pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option, const QWidget *widget) const +{ + switch (metric){ + case PM_ProgressBarChunkWidth: + { + int ProgressBarItem_Width = 4; + int ProgressBarItem_Distance = 16; + return ProgressBarItem_Width + ProgressBarItem_Distance; + } + case PM_ToolBarIconSize:{ + return (int)48*qApp->devicePixelRatio(); + } + default: + break; + } + return QProxyStyle::pixelMetric(metric, option, widget); +} + +// +void CustomStyle::polish(QWidget *widget) +{ + if (widget) { + if (widget->inherits("QTipLabel")) { + widget->setAttribute(Qt::WA_TranslucentBackground); + QPainterPath path; + auto rect = widget->rect(); + rect.adjust(0,0,0,0); + path.addRoundedRect(rect,6,6); + widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + } + } + if (widget) { + if (widget->inherits("QLable")) { + const_cast (widget)->setAttribute(Qt::WA_TranslucentBackground); + widget->setAttribute(Qt::WA_TranslucentBackground); + QPainterPath path; + auto rect = widget->rect(); + rect.adjust(0,0,0,0); + path.addRoundedRect(rect,6,6); + widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + } + } + if (widget){ + widget->setAttribute(Qt::WA_Hover); + widget->inherits("QSlider"); + m_helpTip->registerWidget(widget); + widget->installEventFilter(this); + } + + return QProxyStyle::polish(widget); +} + +void CustomStyle::polish(QApplication *application) +{ + return QProxyStyle::polish(application); +} + +// +void CustomStyle::polish(QPalette &palette) +{ + // return QProxyStyle::polish(palette); + // QProxyStyle::polish(palette); + // palette.setBrush(QPalette::Foreground, Qt::black); + QColor lightBlue(200, 0, 0); + palette.setBrush(QPalette::Highlight, lightBlue); +} + +void CustomStyle::unpolish(QWidget *widget) +{ + return QProxyStyle::unpolish(widget); +} + +void CustomStyle::unpolish(QApplication *application) +{ + return QProxyStyle::unpolish(application); +} + +QSize CustomStyle::sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget) const +{ + QSize newSize = contentsSize; + switch (type) { + case CT_ProgressBar: + { + qDebug()<pixelMetric(QStyle::PM_ProgressBarChunkWidth, option, widget); + newSize.setWidth(cw * ProgressBarItem_Num); + return newSize; + } + default: + break; + } + return QProxyStyle::sizeFromContents(type, option, contentsSize, widget); +} + +QIcon CustomStyle::standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const +{ + return QProxyStyle::standardIcon(standardIcon, option, widget); +} + +QPalette CustomStyle::standardPalette() const +{ + return QProxyStyle::standardPalette(); +} + +//如果需要背景透明也许需要用到这个函数 +int CustomStyle::styleHint(QStyle::StyleHint hint, const QStyleOption *option, const QWidget *widget, QStyleHintReturn *returnData) const +{ + switch (hint) { + /// 让ScrollView viewport的绘制区域包含scrollbar和corner widget + /// 这个例子中没有什么作用,如果我们需要绘制一个背景透明的滚动条 + /// 这个style hint对我们的意义应该很大,因为我们希望视图能够帮助 + /// 我们填充滚动条的背景区域,否则当背景透明时底下会出现明显的分割 + + case SH_ScrollView_FrameOnlyAroundContents: { + return false; + } + default: + break; + } + return QProxyStyle::styleHint(hint, option, widget, returnData); +} + +QRect CustomStyle::subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget) const +{ + return QProxyStyle::subControlRect(control, option, subControl, widget); +} + +QRect CustomStyle::subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget) const +{ + switch (element) { + case SE_ProgressBarGroove: + case SE_ProgressBarContents: + return option->rect; + + default: + break; + } + return QProxyStyle::subElementRect(element, option, widget); +} diff --git a/audio/customstyle.h b/audio/customstyle.h new file mode 100644 index 0000000..5ab8fe1 --- /dev/null +++ b/audio/customstyle.h @@ -0,0 +1,158 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include "ukmedia_slider_tip_label_helper.h" +/*! + * \brief The CustomStyle class + * \details + * 自定义QStyle + * 基于QProxyStyle,默认使用QProxyStyle的实例绘制控件,你需要针对某一个控件重新实现若干对应的接口。 + * QProxyStyle可以从现有的qt style实例化,我们只需要知道这个style的名字即可。 + * 这种做法带来了不错的扩展性和自由度,因为我们不需要将某个style的代码直接引入我们的项目中, + * 也能够“继承”这个style类进行二次开发。 + * + * 下面的方法展现了QStyle的所有的接口,使用QStyle进行控件的绘制使得qt应用能够进行风格的切换, + * 从而达到不修改项目源码却对应用外观产生巨大影响的效果。 + * + * \note + * 需要注意QStyle与QSS并不兼容,因为QSS本身其实上也是QStyle的一种实现,对一个控件而言,本身理论上只能 + * 在同一时间调用唯一一个QStyle进行绘制。 + */ +class CustomStyle : public QProxyStyle +{ + Q_OBJECT +public: + explicit CustomStyle(const QString &proxyStyleName = "windows", QObject *parent = nullptr); + ~CustomStyle(); + /*! + * \brief drawComplexControl + * \param control 比如ScrollBar,对应CC枚举类型 + * \param option + * \param painter + * \param widget + * \details + * drawComplexControl用于绘制具有子控件的复杂控件,它本身一般不直接绘制控件, + * 而是通过QStyle的其它方法将复杂控件分解成子控件再调用其它的draw方法绘制。 + * 如果你需要重新实现一个复杂控件的绘制方法,首先考虑的应该是在不改变它原有的绘制流程的情况下, + * 对它调用到的其它方法进行重写。 + * + * 如果你不想使用原有的绘制流程,那你需要重写这个接口,然后自己实现一切, + * 包括背景的绘制,子控件的位置和状态计算,子控件的绘制等。 + * 所以,你需要对这个控件有足够的了解之后再尝试直接重写这个接口。 + */ + virtual void drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget = nullptr) const; + /*! + * \brief drawControl + * \param element 比如按钮,对应CE枚举类型 + * \param option + * \param painter + * \param widget + * \details + * drawControl用于绘制基本控件元素,它本身一般只负责绘制控件的一部分或者一层。 + * 如果你想要知道控件具体如何绘制,你需要同时研究这个控件的源码和QStyle中的源码, + * 因为它们都有可能改变控件的绘制流程。 + * + * QStyle一般会遵循QCommonStyle的绘制流程,QCommenStyle是大部分主流style的最基类, + * 它本身不能完全称之为一个主题,如果你直接使用它,你的控件将不能被正常绘制,因为它有可能只是 + * 在特定的时候执行了特定却未实现的绘制方法,它更像一个框架或者规范。 + */ + virtual void drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; + virtual void drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const; + virtual void drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const; + /*! + * \brief drawPrimitive + * \param element 背景绘制,对应PE枚举类型 + * \param option + * \param painter + * \param widget + * \details + * drawPrimitive用于绘制控件背景,比如按钮和菜单的背景, + * 我们一般需要判断控件的状态来绘制不同的背景, + * 比如按钮的hover和点击效果。 + */ + virtual void drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; + virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const; + virtual QStyle::SubControl hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget = nullptr) const; + virtual QRect itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const; + virtual QRect itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const; + //virtual int layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption *option, const QWidget *widget); + virtual int pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const; + + /*! + * \brief polish + * \param widget + * \details + * polish用于对widget进行预处理,一般我们可以在polish中修改其属性, + * 另外,polish是对动画和特效实现而言十分重要的一个方法, + * 通过polish我们能够使widget和特效和动画形成对应关系。 + */ + virtual void polish(QWidget *widget); + virtual void polish(QApplication *application); + virtual void polish(QPalette &palette); + virtual void unpolish(QWidget *widget); + virtual void unpolish(QApplication *application); + + virtual QSize sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget = nullptr) const; + virtual QIcon standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const; + virtual QPalette standardPalette() const; + /*! + * \brief styleHint + * \param hint 对应的枚举是SH + * \param option + * \param widget + * \param returnData + * \return + * \details + * styleHint比较特殊,通过它我们能够改变一些控件的绘制流程或者方式,比如说QMenu是否可以滚动。 + */ + virtual int styleHint(QStyle::StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr, QStyleHintReturn *returnData = nullptr) const; + /*! + * \brief subControlRect + * \param control + * \param option + * \param subControl + * \param widget + * \return + * \details + * subControlRect返回子控件的位置和大小信息,这个方法一般在内置流程中调用, + * 如果我们要重写某个绘制方法,可能需要用到它 + */ + virtual QRect subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget = nullptr) const; + /*! + * \brief subElementRect + * \param element + * \param option + * \param widget + * \return + * \details + * 与subControlRect类似 + */ + virtual QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget = nullptr) const; + +Q_SIGNALS: + +public Q_SLOTS: +private: + SliderTipLabelHelper *m_helpTip; +}; + +#endif // CUSTOMSTYLE_H diff --git a/audio/switchbutton.cpp b/audio/switchbutton.cpp new file mode 100644 index 0000000..d21970d --- /dev/null +++ b/audio/switchbutton.cpp @@ -0,0 +1,325 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "switchbutton.h" + +#include +#define THEME_QT_SCHEMA "org.ukui.style" +#define THEME_GTK_SCHEMA "org.mate.interface" +#define TIMER_INTERVAL 5 //每隔5ms动画移动一次 +#define MOVING_STEPS 40 //动画总共移动40次 + +SwitchButton::SwitchButton(QWidget *parent) : + QWidget(parent) +{ +// this->resize(QSize(52, 24)); + this->setFixedSize(QSize(50, 24)); + + checked = false; + hover = false; + disabled = false; + isMoving = false; + isAnimation = true; + + space = 4; + rectRadius = height()/2; + + mStep = width()/MOVING_STEPS;//也就是40次动画就可以走完,每次时间间隔是固定的5ms + mStartX = 0; + mEndX= 0; + + mTimer = new QTimer(this); + mTimer->setInterval(TIMER_INTERVAL);//动画更新时间 + connect(mTimer, SIGNAL(timeout()), this, SLOT(updatevalue())); + if(QGSettings::isSchemaInstalled(THEME_GTK_SCHEMA) && QGSettings::isSchemaInstalled(THEME_QT_SCHEMA)) { + QByteArray qtThemeID(THEME_QT_SCHEMA); + QByteArray gtkThemeID(THEME_GTK_SCHEMA); + + m_gtkThemeSetting = new QGSettings(gtkThemeID,QByteArray(),this); + m_qtThemeSetting = new QGSettings(qtThemeID,QByteArray(),this); + + QString style = m_qtThemeSetting->get("styleName").toString(); + changeColor(style); + + connect(m_qtThemeSetting,&QGSettings::changed, [this] (const QString &key) { + QString style = m_qtThemeSetting->get("styleName").toString(); + if (key == "styleName") { + changeColor(style); + } + }); + } +} + +SwitchButton::~SwitchButton() +{ +} + +void SwitchButton::paintEvent(QPaintEvent *){ + + QPainter painter(this); + //启用反锯齿 + painter.setRenderHint(QPainter::Antialiasing, true); + painter.setCompositionMode(QPainter::CompositionMode_Source); + drawBg(&painter); + if(!isAnimation)//动画如果禁用,则圆形滑块isMoving始终为false + isMoving =false; + if(isMoving) + animation(&painter); + drawSlider(&painter); + painter.end(); +} + +void SwitchButton::changeColor(const QString &themes) { + if (hover) { + return ;//在鼠标下,禁止切换颜色鼠标离开时切换颜色 + } + if (themes == "ukui-dark" || themes == "ukui-black") { + bgColorOff = QColor(OFF_BG_DARK_COLOR); + bgColorOn = QColor(ON_BG_DARK_COLOR); + rectColorEnabled = QColor(ENABLE_RECT_DARK_COLOR); + rectColorDisabled = QColor(DISABLE_RECT_DARK_COLOR); + sliderColorDisabled = QColor(DISABLE_RECT_DARK_COLOR); + sliderColorEnabled = QColor(ENABLE_RECT_DARK_COLOR); + bgHoverOnColor = QColor(ON_HOVER_BG_DARK_COLOR); + bgHoverOffColor = QColor(OFF_HOVER_BG_DARK_COLOR); + bgColorDisabled = QColor(DISABLE_DARK_COLOR); + } else { + bgColorOff = QColor(OFF_BG_LIGHT_COLOR); + bgColorOn = QColor(ON_BG_LIGHT_COLOR); + rectColorEnabled = QColor(ENABLE_RECT_LIGHT_COLOR); + rectColorDisabled = QColor(DISABLE_RECT_LIGHT_COLOR); + sliderColorDisabled = QColor(DISABLE_RECT_LIGHT_COLOR); + sliderColorEnabled = QColor(ENABLE_RECT_LIGHT_COLOR); + bgHoverOnColor = QColor(ON_HOVER_BG_LIGHT_COLOR); + bgHoverOffColor = QColor(OFF_HOVER_BG_LIGHT_COLOR); + bgColorDisabled = QColor(DISABLE_LIGHT_COLOR); + } +} + +//动画绘制 +void SwitchButton::animation(QPainter *painter){ + painter->save(); + int h = height(); + int w = width(); + painter->setPen(Qt::NoPen); + //颜色设置 + if(checked){ + //开关在左侧时 + painter->setBrush(bgColorOn); + rect.setRect(0,0,h+mStartX,h); + }else{ + painter->setBrush(bgColorOff); + rect.setRect(mStartX,0,w-mStartX,h); + } + painter->drawRoundedRect(rect,rectRadius,rectRadius); + + painter->restore(); +} + +//绘制背景 +void SwitchButton::drawBg(QPainter *painter){ + int w = width(); + int h = height(); + painter->save(); + painter->setPen(Qt::NoPen); + if (disabled) { + painter->setPen(Qt::NoPen); + painter->setBrush(bgColorDisabled); + } else { + if(checked){ + if(isMoving){ + painter->setBrush(bgColorOff); + rect.setRect(mStartX,0,w-mStartX,h); + }else { + painter->setBrush(bgColorOn); + rect.setRect(0, 0, w, h); + } + }else{ + if(isMoving){ + painter->setBrush(bgColorOn); + rect.setRect(0,0,mStartX+h,h); + } + else { + painter->setBrush(bgColorOff); + rect.setRect(0, 0, w, h); + } + } + } + //半径为高度的一半 + painter->drawRoundedRect(rect,rectRadius,rectRadius); + + painter->restore(); +} + +//绘制滑块,也就是圆形按钮 +void SwitchButton::drawSlider(QPainter *painter){ + painter->save(); + painter->setPen(Qt::NoPen); + + if (!disabled){ + painter->setBrush(sliderColorEnabled); + } + else + painter->setBrush(sliderColorDisabled); + if (disabled) { + if (!checked){ + QRect smallRect(8, height() / 2 - 2, 10 , 4); + painter->drawRoundedRect(smallRect,3,3); + }else{ + QRect smallRect(width() - 8 * 2, height() / 2 - 2, 10 , 4); + painter->drawRoundedRect(smallRect,3,3); + } + } + + QRect rect(0, 0, width(), height()); + int sliderWidth = rect.height() - space * 2; + QRect sliderRect(mStartX + space, space, sliderWidth, sliderWidth); + painter->drawEllipse(sliderRect); + + painter->restore(); +} + +void SwitchButton::mousePressEvent(QMouseEvent *){ + qDebug()<start(); + isMoving = true; + } +} + +void SwitchButton::resizeEvent(QResizeEvent *){ + //每次开始的x坐标都是跳过圆角,从直线的地方开始计算 + mStep = width() / MOVING_STEPS; + + if (checked){ + //circle out +// startX = width() - height() + space; + //circle in + mStartX = width() - height(); + } + else + mStartX = 0; + + rectRadius = height()/2; + update(); +} +void SwitchButton::enterEvent(QEvent *event) { + bgColorOn = bgHoverOnColor; + bgColorOff = bgHoverOffColor; + + hover = true; + update(); + return QWidget::enterEvent(event); +} + +void SwitchButton::leaveEvent(QEvent *event) { + hover = false; + + QString style = m_qtThemeSetting->get("styleName").toString(); + changeColor(style); + + update(); + return QWidget::leaveEvent(event); +} + +//根据事件向左还是向右移动 +void SwitchButton::updatevalue(){ + if (checked) + if (mStartX < mEndX-mStep){ + mStartX = mStartX + mStep; + } + else{ + mStartX = mEndX; + mTimer->stop(); + isMoving = false; + } + else{ + if (mStartX > mEndX+mStep){ + mStartX = mStartX - mStep; + } + else{ + mStartX = mEndX; + mTimer->stop(); + isMoving = false; + } + } + update(); +} + +void SwitchButton::setChecked(bool checked){ + if (this->checked != checked){ + this->checked = checked; + Q_EMIT checkedChanged(checked); + update(); + } + + mStep = width() / MOVING_STEPS; + + if (checked){ + //circle out +// endX = width() - height() + space; + //circle in + mEndX = width() - height(); + } + else{ + mEndX = 0; + } + mTimer->start(); + isMoving = true; +} + +bool SwitchButton::isChecked(){ + return this->checked; +} + +void SwitchButton::setDisabledFlag(bool value) +{ + disabled = value; + update(); +} + +bool SwitchButton::getDisabledFlag() +{ + return disabled; +} + +void SwitchButton::setAnimation(bool on){ + isAnimation = on; +} + diff --git a/audio/switchbutton.h b/audio/switchbutton.h new file mode 100644 index 0000000..c9043f7 --- /dev/null +++ b/audio/switchbutton.h @@ -0,0 +1,119 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef SWITCHBUTTON_H +#define SWITCHBUTTON_H + +#include +#include +#include +#include +#include +#include + +#define OFF_BG_DARK_COLOR "#404040" +#define OFF_HOVER_BG_DARK_COLOR "#666666" +#define ON_BG_DARK_COLOR "#3790FA" +#define ON_HOVER_BG_DARK_COLOR "#40A9FB" +#define DISABLE_DARK_COLOR "#474747" +#define DISABLE_RECT_DARK_COLOR "#6E6E6E" +#define ENABLE_RECT_DARK_COLOR "#FFFFFF" + +#define OFF_BG_LIGHT_COLOR "#E0E0E0" +#define OFF_HOVER_BG_LIGHT_COLOR "#B3B3B3" +#define ON_BG_LIGHT_COLOR "#3790FA" +#define ON_HOVER_BG_LIGHT_COLOR "#40A9FB" +#define DISABLE_LIGHT_COLOR "#E9E9E9" +#define DISABLE_RECT_LIGHT_COLOR "#B3B3B3" +#define ENABLE_RECT_LIGHT_COLOR "#FFFFFF" + + +class SwitchButton : public QWidget +{ + Q_OBJECT + +public: + SwitchButton(QWidget *parent = 0); + ~SwitchButton(); + + void setChecked(bool checked); + void setAnimation(bool on); + + bool isChecked(); + void setDisabledFlag(bool); + bool getDisabledFlag(); +protected: + void mousePressEvent(QMouseEvent *); + void resizeEvent(QResizeEvent *); + void paintEvent(QPaintEvent *); + void enterEvent(QEvent *event); + void leaveEvent(QEvent *event); + + void drawBg(QPainter * painter); + void drawSlider(QPainter * painter); + void changeColor(const QString &themes); + +private: + bool checked; //切换的判断 + bool disabled; + + void animation(QPainter *painter); + QRect rect; + bool isMoving; //滑块动作判断 + bool isAnimation; // 是否允许动画执行 + + QColor bgColorOff; + QColor bgColorOn; + QColor bgHoverOnColor; + QColor bgHoverOffColor; + QColor bgColorDisabled; + + QColor sliderColorEnabled; + QColor sliderColorDisabled; + + + QColor rectColorEnabled; + QColor rectColorDisabled; + + QColor sliderColorOff; + QColor sliderColorOn; + QGSettings *m_qtThemeSetting; + QGSettings *m_gtkThemeSetting; + + int space; //滑块离背景间隔 + int rectRadius; //圆角角度 + + int mStep; //移动步长 + int mStartX; + int mEndX; + + bool hover; + QTimer * mTimer; + + +private Q_SLOTS: + void updatevalue(); + + +Q_SIGNALS: + void checkedChanged(bool checked); + +}; + +#endif // SWITCHBUTTON_H diff --git a/audio/titlelabel.cpp b/audio/titlelabel.cpp new file mode 100644 index 0000000..10ea302 --- /dev/null +++ b/audio/titlelabel.cpp @@ -0,0 +1,46 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#include "titlelabel.h" +#include + +#include +#include +#include + +TitleLabel::TitleLabel(QWidget *parent): + QLabel(parent) +{ + /*初始化字体*/ +// QFont font; +// QGSettings *m_fontSetting = new QGSettings("org.ukui.style"); +// font.setFamily(m_fontSetting->get("systemFont").toString()); +// font.setPixelSize(m_fontSetting->get("systemFontSize").toInt() * 18 / 11); //设置的是pt,按照公式计算为px,标题默认字为18px +// font.setWeight(QFont::Medium); +// this->setFont(font); + this ->setContentsMargins(16,0,0,0); +// delete m_fontSetting; +// m_fontSetting = nullptr; +} + +TitleLabel::~TitleLabel() +{ + +} diff --git a/audio/titlelabel.h b/audio/titlelabel.h new file mode 100644 index 0000000..5e165c3 --- /dev/null +++ b/audio/titlelabel.h @@ -0,0 +1,34 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef TITLE_LABEL_H +#define TITLE_LABEL_H + +#include + +class TitleLabel : public QLabel +{ + Q_OBJECT +public: + TitleLabel(QWidget *parent = nullptr); + ~TitleLabel(); +}; + +#endif // TITLE_LABEL_H + diff --git a/audio/translate_generation.sh b/audio/translate_generation.sh new file mode 100755 index 0000000..72f748b --- /dev/null +++ b/audio/translate_generation.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +ts_list=(`ls translations/*.ts`) +source /etc/os-release +version=(`echo $ID`) + +for ts in "${ts_list[@]}" +do + printf "\nprocess ${ts}\n" + if [ "$version" == "fedora" ] || [ "$version" == "opensuse-leap" ] || [ "$version" == "opensuse-tumbleweed" ];then + lrelease-qt5 "${ts}" + else + lrelease "${ts}" + fi +done diff --git a/audio/translations/bo.ts b/audio/translations/bo.ts new file mode 100644 index 0000000..8fdcec2 --- /dev/null +++ b/audio/translations/bo.ts @@ -0,0 +1,406 @@ + + + + + Audio + + + + Audio + + + + + UkccPlugin + + /UkccPlugin/UkccPlugin + + + + ukccplugin test + + /UkccPlugin/ukccplugin test + + + + QObject + + + + + pa_context_get_server_info() failed + + + + + Card callback failure + + + + + + Sink callback failure + + + + + + Source callback failure + + + + + + Sink input callback failure + + + + + Source output callback failure + + + + + Client callback failure + + + + + Server info callback failure + + + + + Failed to initialize stream_restore extension: %s + + + + + pa_ext_stream_restore_read() failed + + + + + Failed to initialize device manager extension: %s + + + + + pa_ext_device_manager_read() failed + + + + + pa_context_get_sink_info_by_index() failed + + + + + pa_context_get_source_info_by_index() failed + + + + + + pa_context_get_sink_input_info() failed + + + + + pa_context_get_client_info() failed + + + + + pa_context_get_card_info_by_index() failed + + + + + pa_context_subscribe() failed + + + + + pa_context_client_info_list() failed + + + + + pa_context_get_card_info_list() failed + + + + + pa_context_get_sink_info_list() failed + + + + + pa_context_get_source_info_list() failed + + + + + pa_context_get_sink_input_info_list() failed + + + + + pa_context_get_source_output_info_list() failed + + + + + Connection failed, attempting reconnect + + + + + Ukui Media Volume Control + + + + + UkmediaInputWidget + + + Input + + /Audio/Input + + + + Input Device + + /Audio/Input Device + + + + Volume + + /Audio/Volume + + + + Input Level + + /Audio/Input Level + + + + UkmediaMainWidget + + + + + + None + + + + + UkmediaOutputWidget + + + Output + + /Audio/Output + + + + Output Device + + /Audio/Output Device + + + + Master Volume + + /Audio/Master Volume + + + + Balance + + /Audio/Balance + + + + Left + + + + + Right + + + + + UkmediaSoundEffectsWidget + + + System Sound + + + + + Sound Theme + + /Audio/Sound Theme + + + + Alert Sound + + /Audio/Alert Sound + + + + Beep Switch + + /Audio/Beep Switch + + + + Poweroff Music + + /Audio/Poweroff Music + + + + Startup Music + + /Audio/Startup Music + + + + Wakeup Music + + /Audio/Wakeup Music + + + + Volume Change + + /Audio/Volume Change + + + + Logout Music + + /Audio/Logout Music + + + + UkmediaVolumeControl + + + + + + + + + + + pa_context_set_sink_volume_by_index() failed + + + + + pa_context_set_source_mute_by_index() failed + + + + + + pa_context_set_source_output_volume() failed + + + + + pa_context_set_source_output_mute() failed + + + + + pa_context_set_card_profile_by_index() failed + + + + + pa_context_set_default_sink() failed + + + + + + + pa_context_set_default_source() failed + + + + + pa_context_get_source_info_by_name() failed + + + + + pa_context_set_sink_port_by_name() failed + + + + + pa_context_set_source_port_by_name() failed + + + + + (plugged in) + + + + + + (unavailable) + + + + + + (unplugged) + + + + + Failed to read data from stream + + + + + Peak detect + + + + + Failed to create monitoring stream + + + + + Failed to connect monitoring stream + + + + + Ignoring sink-input due to it being designated as an event and thus handled by the Event widget + + + + + Establishing connection to PulseAudio. Please wait... + + + + diff --git a/audio/translations/tr.ts b/audio/translations/tr.ts new file mode 100644 index 0000000..8fdcec2 --- /dev/null +++ b/audio/translations/tr.ts @@ -0,0 +1,406 @@ + + + + + Audio + + + + Audio + + + + + UkccPlugin + + /UkccPlugin/UkccPlugin + + + + ukccplugin test + + /UkccPlugin/ukccplugin test + + + + QObject + + + + + pa_context_get_server_info() failed + + + + + Card callback failure + + + + + + Sink callback failure + + + + + + Source callback failure + + + + + + Sink input callback failure + + + + + Source output callback failure + + + + + Client callback failure + + + + + Server info callback failure + + + + + Failed to initialize stream_restore extension: %s + + + + + pa_ext_stream_restore_read() failed + + + + + Failed to initialize device manager extension: %s + + + + + pa_ext_device_manager_read() failed + + + + + pa_context_get_sink_info_by_index() failed + + + + + pa_context_get_source_info_by_index() failed + + + + + + pa_context_get_sink_input_info() failed + + + + + pa_context_get_client_info() failed + + + + + pa_context_get_card_info_by_index() failed + + + + + pa_context_subscribe() failed + + + + + pa_context_client_info_list() failed + + + + + pa_context_get_card_info_list() failed + + + + + pa_context_get_sink_info_list() failed + + + + + pa_context_get_source_info_list() failed + + + + + pa_context_get_sink_input_info_list() failed + + + + + pa_context_get_source_output_info_list() failed + + + + + Connection failed, attempting reconnect + + + + + Ukui Media Volume Control + + + + + UkmediaInputWidget + + + Input + + /Audio/Input + + + + Input Device + + /Audio/Input Device + + + + Volume + + /Audio/Volume + + + + Input Level + + /Audio/Input Level + + + + UkmediaMainWidget + + + + + + None + + + + + UkmediaOutputWidget + + + Output + + /Audio/Output + + + + Output Device + + /Audio/Output Device + + + + Master Volume + + /Audio/Master Volume + + + + Balance + + /Audio/Balance + + + + Left + + + + + Right + + + + + UkmediaSoundEffectsWidget + + + System Sound + + + + + Sound Theme + + /Audio/Sound Theme + + + + Alert Sound + + /Audio/Alert Sound + + + + Beep Switch + + /Audio/Beep Switch + + + + Poweroff Music + + /Audio/Poweroff Music + + + + Startup Music + + /Audio/Startup Music + + + + Wakeup Music + + /Audio/Wakeup Music + + + + Volume Change + + /Audio/Volume Change + + + + Logout Music + + /Audio/Logout Music + + + + UkmediaVolumeControl + + + + + + + + + + + pa_context_set_sink_volume_by_index() failed + + + + + pa_context_set_source_mute_by_index() failed + + + + + + pa_context_set_source_output_volume() failed + + + + + pa_context_set_source_output_mute() failed + + + + + pa_context_set_card_profile_by_index() failed + + + + + pa_context_set_default_sink() failed + + + + + + + pa_context_set_default_source() failed + + + + + pa_context_get_source_info_by_name() failed + + + + + pa_context_set_sink_port_by_name() failed + + + + + pa_context_set_source_port_by_name() failed + + + + + (plugged in) + + + + + + (unavailable) + + + + + + (unplugged) + + + + + Failed to read data from stream + + + + + Peak detect + + + + + Failed to create monitoring stream + + + + + Failed to connect monitoring stream + + + + + Ignoring sink-input due to it being designated as an event and thus handled by the Event widget + + + + + Establishing connection to PulseAudio. Please wait... + + + + diff --git a/audio/translations/zh_CN.ts b/audio/translations/zh_CN.ts new file mode 100644 index 0000000..b23df83 --- /dev/null +++ b/audio/translations/zh_CN.ts @@ -0,0 +1,406 @@ + + + + + Audio + + + + Audio + 声音 + + + + UkccPlugin + + /UkccPlugin/UkccPlugin + + + + ukccplugin test + + /UkccPlugin/ukccplugin test + + + + QObject + + + + + pa_context_get_server_info() failed + + + + + Card callback failure + + + + + + Sink callback failure + + + + + + Source callback failure + + + + + + Sink input callback failure + + + + + Source output callback failure + + + + + Client callback failure + + + + + Server info callback failure + + + + + Failed to initialize stream_restore extension: %s + + + + + pa_ext_stream_restore_read() failed + + + + + Failed to initialize device manager extension: %s + + + + + pa_ext_device_manager_read() failed + + + + + pa_context_get_sink_info_by_index() failed + + + + + pa_context_get_source_info_by_index() failed + + + + + + pa_context_get_sink_input_info() failed + + + + + pa_context_get_client_info() failed + + + + + pa_context_get_card_info_by_index() failed + + + + + pa_context_subscribe() failed + + + + + pa_context_client_info_list() failed + + + + + pa_context_get_card_info_list() failed + + + + + pa_context_get_sink_info_list() failed + + + + + pa_context_get_source_info_list() failed + + + + + pa_context_get_sink_input_info_list() failed + + + + + pa_context_get_source_output_info_list() failed + + + + + Connection failed, attempting reconnect + + + + + Ukui Media Volume Control + + + + + UkmediaInputWidget + + + Input + 输入 + /Audio/Input + + + + Input Device + 选择输入设备 + /Audio/Input Device + + + + Volume + 音量 + /Audio/Volume + + + + Input Level + 输入反馈 + /Audio/Input Level + + + + UkmediaMainWidget + + + + + + None + + + + + UkmediaOutputWidget + + + Output + 输出 + /Audio/Output + + + + Output Device + 选择输出设备 + /Audio/Output Device + + + + Master Volume + 音量 + /Audio/Master Volume + + + + Balance + 声道平衡 + /Audio/Balance + + + + Left + + + + + Right + + + + + UkmediaSoundEffectsWidget + + + System Sound + 系统音效 + + + + Sound Theme + 音效主题 + /Audio/Sound Theme + + + + Alert Sound + 通知 + /Audio/Alert Sound + + + + Beep Switch + 提示音 + /Audio/Beep Switch + + + + Poweroff Music + 关机 + /Audio/Poweroff Music + + + + Startup Music + 开机 + /Audio/Startup Music + + + + Wakeup Music + 唤醒 + /Audio/Wakeup Music + + + + Volume Change + 音量调节 + /Audio/Volume Change + + + + Logout Music + 注销 + /Audio/Logout Music + + + + UkmediaVolumeControl + + + + + + + + + + + pa_context_set_sink_volume_by_index() failed + + + + + pa_context_set_source_mute_by_index() failed + + + + + + pa_context_set_source_output_volume() failed + + + + + pa_context_set_source_output_mute() failed + + + + + pa_context_set_card_profile_by_index() failed + + + + + pa_context_set_default_sink() failed + + + + + + + pa_context_set_default_source() failed + + + + + pa_context_get_source_info_by_name() failed + + + + + pa_context_set_sink_port_by_name() failed + + + + + pa_context_set_source_port_by_name() failed + + + + + (plugged in) + + + + + + (unavailable) + + + + + + (unplugged) + + + + + Failed to read data from stream + + + + + Peak detect + + + + + Failed to create monitoring stream + + + + + Failed to connect monitoring stream + + + + + Ignoring sink-input due to it being designated as an event and thus handled by the Event widget + + + + + Establishing connection to PulseAudio. Please wait... + + + + diff --git a/audio/ukmedia_input_widget.cpp b/audio/ukmedia_input_widget.cpp new file mode 100644 index 0000000..b35aaaf --- /dev/null +++ b/audio/ukmedia_input_widget.cpp @@ -0,0 +1,155 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "ukmedia_input_widget.h" +#include +#include +#include + +UkmediaInputWidget::UkmediaInputWidget(QWidget *parent) : QWidget(parent) +{ + m_pInputWidget = new QFrame(this); + m_pVolumeWidget = new QFrame(m_pInputWidget); + m_pInputLevelWidget = new QFrame(m_pInputWidget); + m_pInputSlectWidget = new QFrame(m_pInputWidget); + + m_pInputWidget->setFrameShape(QFrame::Shape::Box); + m_pVolumeWidget->setFrameShape(QFrame::Shape::Box); + m_pInputLevelWidget->setFrameShape(QFrame::Shape::Box); + m_pInputSlectWidget->setFrameShape(QFrame::Shape::Box); + + //设置大小 + m_pInputWidget->setMinimumSize(550,183); + m_pInputWidget->setMaximumSize(16777215,183); + m_pVolumeWidget->setMinimumSize(550,60); + m_pVolumeWidget->setMaximumSize(16777215,60); + m_pInputLevelWidget->setMinimumSize(550,60); + m_pInputLevelWidget->setMaximumSize(16777215,60); + m_pInputSlectWidget->setMinimumSize(550,60); + m_pInputSlectWidget->setMaximumSize(16777215,60); + + m_pInputLabel = new TitleLabel(this); + //~ contents_path /Audio/Input + m_pInputLabel->setText(tr("Input")); + m_pInputLabel->setStyleSheet("color: palette(windowText);}"); + + + //~ contents_path /Audio/Input Device + m_pInputDeviceLabel = new QLabel(tr("Input Device"),m_pInputSlectWidget); + m_pInputDeviceSelectBox = new QComboBox(m_pInputSlectWidget); + //~ contents_path /Audio/Volume + m_pIpVolumeLabel = new QLabel(tr("Volume"),m_pVolumeWidget); + m_pInputIconBtn = new UkuiButtonDrawSvg(m_pVolumeWidget); + m_pIpVolumeSlider = new AudioSlider(); + m_pIpVolumePercentLabel = new QLabel(m_pVolumeWidget); + //~ contents_path /Audio/Input Level + m_pInputLevelLabel = new QLabel(tr("Input Level"),m_pInputLevelWidget); + m_pInputLevelProgressBar = new QProgressBar(m_pInputLevelWidget); + + m_pInputLevelProgressBar->setStyle(new CustomStyle); + m_pInputLevelProgressBar->setTextVisible(false); + + m_pIpVolumeSlider->setOrientation(Qt::Horizontal); + m_pIpVolumeSlider->setRange(0,100); + m_pInputIconBtn->setFocusPolicy(Qt::NoFocus); + + + //输入设备添加布局 + m_pInputDeviceLabel->setFixedSize(120,40); + m_pInputDeviceSelectBox->setFixedHeight(40); + QHBoxLayout *inputdeviceSlectLayout = new QHBoxLayout(); + inputdeviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + inputdeviceSlectLayout->addWidget(m_pInputDeviceLabel); + inputdeviceSlectLayout->addItem(new QSpacerItem(113,20,QSizePolicy::Fixed)); + inputdeviceSlectLayout->addWidget(m_pInputDeviceSelectBox); + inputdeviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + inputdeviceSlectLayout->setSpacing(0); + m_pInputSlectWidget->setLayout(inputdeviceSlectLayout); + m_pInputSlectWidget->layout()->setContentsMargins(0,0,0,0); + + //主音量添加布局 + QHBoxLayout *m_pMasterLayout = new QHBoxLayout(m_pVolumeWidget); + m_pIpVolumeLabel->setFixedSize(110,40); + m_pInputIconBtn->setFixedSize(24,24); + m_pIpVolumeSlider->setFixedHeight(55); + m_pIpVolumePercentLabel->setFixedSize(55,20); + m_pIpVolumePercentLabel->setAlignment(Qt::AlignCenter); + m_pMasterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + m_pMasterLayout->addWidget(m_pIpVolumeLabel); + m_pMasterLayout->addItem(new QSpacerItem(123,20,QSizePolicy::Fixed)); + m_pMasterLayout->addWidget(m_pInputIconBtn); + m_pMasterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + m_pMasterLayout->addWidget(m_pIpVolumeSlider); + m_pMasterLayout->addItem(new QSpacerItem(13,20,QSizePolicy::Maximum)); + m_pMasterLayout->addWidget(m_pIpVolumePercentLabel); + m_pMasterLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Maximum)); + m_pMasterLayout->setSpacing(0); + m_pVolumeWidget->setLayout(m_pMasterLayout); + m_pVolumeWidget->layout()->setContentsMargins(0,0,0,0); + + //输入反馈添加布局 + QHBoxLayout *m_pSoundLayout = new QHBoxLayout(m_pInputLevelWidget); + m_pInputLevelLabel->setFixedSize(110,40); + m_pSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + m_pSoundLayout->addWidget(m_pInputLevelLabel); + m_pSoundLayout->addItem(new QSpacerItem(123,20,QSizePolicy::Fixed)); + m_pSoundLayout->addWidget(m_pInputLevelProgressBar); + m_pSoundLayout->addItem(new QSpacerItem(5,20,QSizePolicy::Fixed)); + m_pSoundLayout->setSpacing(0); + m_pInputLevelWidget->setLayout(m_pSoundLayout); + m_pInputLevelWidget->layout()->setContentsMargins(0,0,0,0); + + QFrame *inputselectAndVolume = myLine(); + QFrame *volumeAndInputLevel = myLine(); + + //进行整体布局 + m_pVlayout = new QVBoxLayout(m_pInputWidget); + m_pVlayout->addWidget(m_pInputSlectWidget); + m_pVlayout->addWidget(inputselectAndVolume); + m_pVlayout->addWidget(m_pVolumeWidget); + m_pVlayout->addWidget(volumeAndInputLevel); + m_pVlayout->addWidget(m_pInputLevelWidget); + m_pVlayout->setSpacing(0); + m_pInputWidget->setLayout(m_pVlayout); + m_pInputWidget->layout()->setContentsMargins(0,0,0,0); + + QVBoxLayout *m_pVlayout1 = new QVBoxLayout(this); + m_pVlayout1->addWidget(m_pInputLabel); + m_pVlayout1->addItem(new QSpacerItem(16,4,QSizePolicy::Fixed)); + m_pVlayout1->addWidget(m_pInputWidget); + this->setLayout(m_pVlayout1); + this->layout()->setContentsMargins(0,0,0,0); +} + +QFrame* UkmediaInputWidget::myLine() +{ + QFrame *line = new QFrame(this); + line->setMinimumSize(QSize(0, 1)); + line->setMaximumSize(QSize(16777215, 1)); + line->setLineWidth(0); + line->setFrameShape(QFrame::HLine); + line->setFrameShadow(QFrame::Sunken); + + return line; +} + +UkmediaInputWidget::~UkmediaInputWidget() +{ + +} diff --git a/audio/ukmedia_input_widget.h b/audio/ukmedia_input_widget.h new file mode 100644 index 0000000..31460a2 --- /dev/null +++ b/audio/ukmedia_input_widget.h @@ -0,0 +1,67 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef UKMEDIAINPUTWIDGET_H +#define UKMEDIAINPUTWIDGET_H + +#include +#include +#include +#include +#include "ukmedia_output_widget.h" +#include +#include +#include +#include +#include "ukui_custom_style.h" + +class UkmediaInputWidget : public QWidget +{ + Q_OBJECT +public: + explicit UkmediaInputWidget(QWidget *parent = nullptr); + ~UkmediaInputWidget(); + friend class UkmediaMainWidget; +Q_SIGNALS: + +private: + QFrame* myLine(); + QFrame *m_pInputWidget; + QFrame *m_pVolumeWidget; + QFrame *m_pInputLevelWidget; + + TitleLabel *m_pInputLabel; + QLabel *m_pInputDeviceLabel; + QLabel *m_pIpVolumeLabel; + QLabel *m_pInputLevelLabel; + QLabel *m_pIpVolumePercentLabel; + + UkuiButtonDrawSvg *m_pInputIconBtn; + AudioSlider *m_pIpVolumeSlider; + QProgressBar *m_pInputLevelProgressBar; + + QString sliderQss; + QVBoxLayout *m_pVlayout; + + QComboBox *m_pInputDeviceSelectBox; + QFrame *m_pInputSlectWidget; + +}; + +#endif // UKMEDIAINPUTWIDGET_H diff --git a/audio/ukmedia_main_widget.cpp b/audio/ukmedia_main_widget.cpp new file mode 100644 index 0000000..2816034 --- /dev/null +++ b/audio/ukmedia_main_widget.cpp @@ -0,0 +1,3059 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "ukmedia_main_widget.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#define MATE_DESKTOP_USE_UNSTABLE_API +#define VERSION "1.12.1" +#define GVC_DIALOG_DBUS_NAME "org.mate.VolumeControl" +#define KEY_SOUNDS_SCHEMA "org.ukui.sound" +#define GVC_SOUND_SOUND (xmlChar *) "sound" +#define GVC_SOUND_NAME (xmlChar *) "name" +#define GVC_SOUND_FILENAME (xmlChar *) "filename" +#define SOUND_SET_DIR "/usr/share/ukui-media/sounds" + +#define KEYBINDINGS_CUSTOM_SCHEMA "org.ukui.media.sound" +#define KEYBINDINGS_CUSTOM_DIR "/org/ukui/sound/keybindings/" + +#define MAX_CUSTOM_SHORTCUTS 1000 + +#define FILENAME_KEY "filename" +#define NAME_KEY "name" + +guint appnum = 0; +extern bool isCheckBluetoothInput; + +enum { + SOUND_TYPE_UNSET, + SOUND_TYPE_OFF, + SOUND_TYPE_DEFAULT_FROM_THEME, + SOUND_TYPE_BUILTIN, + SOUND_TYPE_CUSTOM +}; + +UkmediaMainWidget::UkmediaMainWidget(QWidget *parent) + : QWidget(parent) +{ + m_pVolumeControl = new UkmediaVolumeControl; + initWidget(); + + m_pSoundList = new QStringList; + m_pThemeNameList = new QStringList; + m_pThemeDisplayNameList = new QStringList; + m_pSoundNameList = new QStringList; + m_pSoundThemeList = new QStringList; + m_pSoundThemeDirList = new QStringList; + m_pSoundThemeXmlNameList = new QStringList; + + initGsettings(); + setupThemeSelector(this); + updateTheme(this); + //报警声音,从指定路径获取报警声音文件 + populateModelFromDir(this,SOUND_SET_DIR); + //初始化combobox的值 + comboboxCurrentTextInit(); + + time = new QTimer(); + dealSlot();//处理槽函数 +} + +/* + * 初始化界面 + */ +void UkmediaMainWidget::initWidget() +{ + m_pOutputWidget = new UkmediaOutputWidget(); + m_pInputWidget = new UkmediaInputWidget(); + m_pSoundWidget = new UkmediaSoundEffectsWidget(); + cboxfirstEntry = true; + mThemeName = UKUI_THEME_WHITE; + QVBoxLayout *m_pvLayout = new QVBoxLayout(); + m_pvLayout->addWidget(m_pOutputWidget); + m_pvLayout->addWidget(m_pInputWidget); + m_pvLayout->addWidget(m_pSoundWidget); + m_pvLayout->setSpacing(40); + m_pvLayout->addStretch(); + + this->setLayout(m_pvLayout); + this->setMinimumWidth(0); + this->setMaximumWidth(16777215); + this->layout()->setContentsMargins(0,0,0,0); + + //设置滑动条的最大值为100 + m_pInputWidget->m_pIpVolumeSlider->setMaximum(100);//输入音量滑动条 + m_pOutputWidget->m_pOpVolumeSlider->setMaximum(100);//输出音量滑动条 + m_pOutputWidget->m_pOpBalanceSlider->setMaximum(100);//输出音量声道平衡滑动条 + m_pOutputWidget->m_pOpBalanceSlider->setMinimum(-100); + m_pOutputWidget->m_pOpBalanceSlider->setSingleStep(100);//声道平衡步长 + m_pInputWidget->m_pInputLevelProgressBar->setMaximum(101); +} + +QList UkmediaMainWidget::listExistsPath() +{ + char ** childs; + int len; + + DConfClient * client = dconf_client_new(); + childs = dconf_client_list (client, KEYBINDINGS_CUSTOM_DIR, &len); + g_object_unref (client); + + QList vals; + + for (int i = 0; childs[i] != NULL; i++){ + if (dconf_is_rel_dir (childs[i], NULL)){ + char * val = g_strdup (childs[i]); + + vals.append(val); + } + } + g_strfreev (childs); + return vals; +} + +QString UkmediaMainWidget::findFreePath(){ + int i = 0; + char * dir; + bool found; + QList existsdirs; + + existsdirs = listExistsPath(); + + for (; i < MAX_CUSTOM_SHORTCUTS; i++){ + found = true; + dir = QString("custom%1/").arg(i).toLatin1().data(); + for (int j = 0; j < existsdirs.count(); j++) + if (!g_strcmp0(dir, existsdirs.at(j))){ + found = false; + break; + } + if (found) + break; + } + + if (i == MAX_CUSTOM_SHORTCUTS){ + qDebug() << "Keyboard Shortcuts" << "Too many custom shortcuts"; + return ""; + } + + return QString("%1%2").arg(KEYBINDINGS_CUSTOM_DIR).arg(QString(dir)); +} + +void UkmediaMainWidget::addValue(QString name,QString filename) +{ + //在创建setting表时,先判断是否存在该设置,存在时不创建 + QList existsPath = listExistsPath(); + + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + QString filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + + g_warning("full path: %s", allpath); + qDebug() << filenameStr << FILENAME_KEY <set(FILENAME_KEY, filename); + settings->set(NAME_KEY, name); + } +} + +/* + * 初始化gsetting + */ +void UkmediaMainWidget::initGsettings() +{ + //获取声音gsettings值 + m_pSoundSettings = g_settings_new (KEY_SOUNDS_SCHEMA); + + g_signal_connect (G_OBJECT (m_pSoundSettings), + "changed", + G_CALLBACK (onKeyChanged), + this); + //检测系统主题 + if (QGSettings::isSchemaInstalled(UKUI_THEME_SETTING)){ + m_pThemeSetting = new QGSettings(UKUI_THEME_SETTING); + if (m_pThemeSetting->keys().contains("styleName")) { + mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); + } + connect(m_pThemeSetting, SIGNAL(changed(const QString &)),this,SLOT(ukuiThemeChangedSlot(const QString &))); + } + + //检测设计开关机音乐 + if (QGSettings::isSchemaInstalled(UKUI_SWITCH_SETTING)) { + m_pBootSetting = new QGSettings(UKUI_SWITCH_SETTING); + if (m_pBootSetting->keys().contains("startupMusic")) { + bool startup = m_pBootSetting->get(UKUI_STARTUP_MUSIC_KEY).toBool();//开机音乐 + m_pSoundWidget->m_pStartupButton->setChecked(startup); + } + if (m_pBootSetting->keys().contains("poweroffMusic")) { + bool poweroff = m_pBootSetting->get(UKUI_POWEROFF_MUSIC_KEY).toBool();//关机音乐 + m_pSoundWidget->m_pPoweroffButton->setChecked(poweroff); + } + if (m_pBootSetting->keys().contains("logoutMusic")) { + bool logout = m_pBootSetting->get(UKUI_LOGOUT_MUSIC_KEY).toBool();//注销音乐 + m_pSoundWidget->m_pLogoutButton->setChecked(logout); + } + if (m_pBootSetting->keys().contains("weakupMusic")) { + bool m_hasMusic = m_pBootSetting->get(UKUI_WAKEUP_MUSIC_KEY).toBool();//休眠音乐 + m_pSoundWidget->m_pWakeupMusicButton->setChecked(m_hasMusic); + } + connect(m_pBootSetting,SIGNAL(changed(const QString &)),this,SLOT(bootMusicSettingsChanged())); + } + bool status = g_settings_get_boolean(m_pSoundSettings, EVENT_SOUNDS_KEY); + m_pSoundWidget->m_pAlertSoundSwitchButton->setChecked(status); + if(m_pSoundWidget->m_pAlertSoundSwitchButton->isChecked()) + { + m_pSoundWidget->m_pAlertSoundWidget->show(); + m_pSoundWidget->m_pVolumeChangeWidget->show(); + m_pSoundWidget->m_pThemeWidget->show(); + m_pSoundWidget->line1->show(); + m_pSoundWidget->line2->show(); + m_pSoundWidget->line3->show(); + } + else { + m_pSoundWidget->m_pAlertSoundWidget->hide(); + m_pSoundWidget->m_pVolumeChangeWidget->hide(); + m_pSoundWidget->m_pThemeWidget->hide(); + m_pSoundWidget->line1->hide(); + m_pSoundWidget->line2->hide(); + m_pSoundWidget->line3->hide(); + } +} + +/* + * 处理槽函数 + */ +void UkmediaMainWidget::dealSlot() +{ + QTimer::singleShot(200, this, SLOT(initVoulmeSlider())); + connect(m_pInputWidget->m_pInputIconBtn,SIGNAL(clicked()),this,SLOT(inputMuteButtonSlot())); + connect(m_pOutputWidget->m_pOutputIconBtn,SIGNAL(clicked()),this,SLOT(outputMuteButtonSlot())); + connect(m_pSoundWidget->m_pStartupButton,SIGNAL(checkedChanged(bool)),this,SLOT(startupButtonSwitchChangedSlot(bool))); + connect(m_pSoundWidget->m_pPoweroffButton,SIGNAL(checkedChanged(bool)),this,SLOT(poweroffButtonSwitchChangedSlot(bool))); + connect(m_pSoundWidget->m_pLogoutButton,SIGNAL(checkedChanged(bool)),this,SLOT(logoutMusicButtonSwitchChangedSlot(bool))); + connect(m_pSoundWidget->m_pWakeupMusicButton,SIGNAL(checkedChanged(bool)),this,SLOT(wakeButtonSwitchChangedSlot(bool))); + connect(m_pSoundWidget->m_pAlertSoundSwitchButton,SIGNAL(checkedChanged(bool)),this,SLOT(alertSoundButtonSwitchChangedSlot(bool))); + //输出音量控制 + //输出滑动条音量控制 + timeSlider = new QTimer(this); + connect(timeSlider,SIGNAL(timeout()),this,SLOT(timeSliderSlot())); + //输出滑动条改变 + connect(m_pOutputWidget->m_pOpVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT(outputWidgetSliderChangedSlot(int))); +// connect(m_pOutputWidget->m_pOpVolumeSlider,&AudioSlider::silderPressSignal,this,[=](){ +// mousePress = true; +// mouseReleaseState = false; +// }); +// connect(m_pOutputWidget->m_pOpVolumeSlider,&AudioSlider::silderReleaseSignal,this,[=](){ +// mouseReleaseState = true; +// }); + //输入滑动条音量控制 + connect(m_pInputWidget->m_pIpVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT(inputWidgetSliderChangedSlot(int))); + //输入等级 + connect(m_pVolumeControl,SIGNAL(peakChangedSignal(double)),this,SLOT(peakVolumeChangedSlot(double))); + + connect(m_pVolumeControl,SIGNAL(updatePortSignal()),this,SLOT(updateCboxDevicePort()));//测试Combobox!!!!!!!!!!! + + connect(m_pVolumeControl,SIGNAL(deviceChangedSignal()),this,SLOT(updateComboboxListWidgetItemSlot())); + //切换输出设备或者音量改变时需要同步更新音量 + connect(m_pVolumeControl,&UkmediaVolumeControl::updateVolume,this,[=](int value,bool state){ + qDebug() << "Sink Volume Changed" << value << paVolumeToValue(value) << state; + QString percent = QString::number(paVolumeToValue(value)); + float balanceVolume = m_pVolumeControl->getBalanceVolume(); + + m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent+"%"); + m_pOutputWidget->m_pOpVolumeSlider->blockSignals(true); + m_pOutputWidget->m_pOpBalanceSlider->blockSignals(true); + m_pOutputWidget->m_pOpBalanceSlider->setValue(balanceVolume*100); + m_pOutputWidget->m_pOpVolumeSlider->setValue(paVolumeToValue(value)); + + m_pOutputWidget->m_pOpVolumeSlider->blockSignals(false); + m_pOutputWidget->m_pOpBalanceSlider->blockSignals(false); + initOutputComboboxItem(); + themeChangeIcons(); + }); + connect(m_pVolumeControl,&UkmediaVolumeControl::updateSourceVolume,this,[=](int value,bool state){ + qDebug() << "Source Volume Changed" << value << paVolumeToValue(value) << state; + QString percent = QString::number(paVolumeToValue(value)); + + m_pInputWidget->m_pIpVolumePercentLabel->setText(percent+"%"); + + m_pInputWidget->m_pIpVolumeSlider->blockSignals(true); + m_pInputWidget->m_pIpVolumeSlider->setValue(paVolumeToValue(value)); + m_pInputWidget->m_pIpVolumeSlider->blockSignals(false); + + //当所有可用的输入设备全部移除,台式机才会出现该情况 + if(strstr(m_pVolumeControl->defaultSourceName,"monitor")) + m_pInputWidget->m_pInputLevelProgressBar->setValue(0); + + initInputComboboxItem(); + themeChangeIcons(); + }); + + connect(m_pOutputWidget->m_pOpBalanceSlider,SIGNAL(valueChanged(int)),this,SLOT(balanceSliderChangedSlot(int))); + //点击报警音量时播放报警声音 + connect(m_pSoundWidget->m_pAlertSoundCombobox,SIGNAL(currentIndexChanged(int)),this,SLOT(comboxIndexChangedSlot(int))); + connect(m_pSoundWidget->m_pLagoutCombobox ,SIGNAL(currentIndexChanged(int)),this,SLOT(comboxIndexChangedSlot(int))); + connect(m_pSoundWidget->m_pSoundThemeCombobox,SIGNAL(currentIndexChanged(int)),this,SLOT(themeComboxIndexChangedSlot(int))); + connect(m_pSoundWidget->m_pVolumeChangeCombobox,SIGNAL(currentIndexChanged (int)),this,SLOT(volumeChangedComboboxChangeSlot(int))); + + //输入输出Combobox槽函数的设置 + connect(m_pOutputWidget->m_pDeviceSelectBox,SIGNAL(currentIndexChanged(int)),this,SLOT(cboxoutputListWidgetCurrentRowChangedSlot(int))); + connect(m_pInputWidget->m_pInputDeviceSelectBox,SIGNAL(currentIndexChanged(int)),this,SLOT(cboxinputListWidgetCurrentRowChangedSlot(int))); +} + +/* + * 初始化滑动条的值 + */ +void UkmediaMainWidget::initVoulmeSlider() +{ + int sinkVolume = paVolumeToValue(m_pVolumeControl->getSinkVolume()); + int sourceVolume = paVolumeToValue(m_pVolumeControl->getSourceVolume()); + QString percent = QString::number(sinkVolume); + float balanceVolume = m_pVolumeControl->getBalanceVolume(); + qDebug() <<"initVolumeSlider" << "sourceVolume" << sourceVolume << "sinkVolume" << sinkVolume; + m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent+"%"); + percent = QString::number(sourceVolume); + m_pInputWidget->m_pIpVolumePercentLabel->setText(percent+"%"); + m_pOutputWidget->m_pOpVolumeSlider->blockSignals(true); + m_pOutputWidget->m_pOpBalanceSlider->blockSignals(true); + m_pInputWidget->m_pIpVolumeSlider->blockSignals(true); + m_pOutputWidget->m_pOpBalanceSlider->setValue(balanceVolume*100); + m_pOutputWidget->m_pOpVolumeSlider->setValue(sinkVolume); + m_pInputWidget->m_pIpVolumeSlider->setValue(sourceVolume); + m_pOutputWidget->m_pOpVolumeSlider->blockSignals(false); + m_pOutputWidget->m_pOpBalanceSlider->blockSignals(false); + m_pInputWidget->m_pIpVolumeSlider->blockSignals(false); + initOutputComboboxItem(); + initInputComboboxItem(); + themeChangeIcons(); + +} + +void UkmediaMainWidget::themeChangeIcons() +{ + int nInputValue = paVolumeToValue(m_pVolumeControl->getSourceVolume()); + int nOutputValue = paVolumeToValue(m_pVolumeControl->getSinkVolume()); + bool inputStatus = m_pVolumeControl->getSourceMute(); + bool outputStatus = m_pVolumeControl->getSinkMute(); + + qDebug() << "themeChangeIcons" << nInputValue << inputStatus; + inputVolumeDarkThemeImage(nInputValue,inputStatus); + outputVolumeDarkThemeImage(nOutputValue,outputStatus); + m_pOutputWidget->m_pOutputIconBtn->repaint(); + m_pInputWidget->m_pInputIconBtn->repaint(); + +} + +/* + * 滑动条值转换成音量值 + */ +int UkmediaMainWidget::valueToPaVolume(int value) +{ + return value / UKMEDIA_VOLUME_NORMAL * PA_VOLUME_NORMAL; +} + +/* + * 音量值转换成滑动条值 + */ +int UkmediaMainWidget::paVolumeToValue(int value) +{ + return (value / PA_VOLUME_NORMAL * UKMEDIA_VOLUME_NORMAL) + 0.5; +} + + +QPixmap UkmediaMainWidget::drawDarkColoredPixmap(const QPixmap &source) +{ +// QColor currentcolor=HighLightEffect::getCurrentSymbolicColor(); + QColor gray(255,255,255); + QImage img = source.toImage(); + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { + color.setRed(0); + color.setGreen(0); + color.setBlue(0); + img.setPixelColor(x, y, color); + } + else { + color.setRed(0); + color.setGreen(0); + color.setBlue(0); + img.setPixelColor(x, y, color); + } + } + } + } + return QPixmap::fromImage(img); +} + +QPixmap UkmediaMainWidget::drawLightColoredPixmap(const QPixmap &source) +{ +// QColor currentcolor=HighLightEffect::getCurrentSymbolicColor(); + QColor gray(255,255,255); + QColor standard (0,0,0); + QImage img = source.toImage(); + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { + color.setRed(255); + color.setGreen(255); + color.setBlue(255); + img.setPixelColor(x, y, color); + } + else { + color.setRed(255); + color.setGreen(255); + color.setBlue(255); + img.setPixelColor(x, y, color); + } + } + } + } + return QPixmap::fromImage(img); +} + +/* + * 初始化combobox的值 + */ +void UkmediaMainWidget::comboboxCurrentTextInit() +{ + QList existsPath = listExistsPath(); + + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + QString filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + int index = 0; + for (int i=0;icount();i++) { + QString str = m_pSoundList->at(i); + if (str.contains(filenameStr,Qt::CaseSensitive)) { + index = i; + break; + } + } + if (nameStr == "alert-sound") { + QString displayName = m_pSoundNameList->at(index); + m_pSoundWidget->m_pAlertSoundCombobox->setCurrentText(displayName); + continue; + } + if (nameStr == "window-close") { + QString displayName = m_pSoundNameList->at(index); + continue; + } + else if (nameStr == "volume-changed") { + QString displayName = m_pSoundNameList->at(index); + m_pSoundWidget->m_pVolumeChangeCombobox->setCurrentText(displayName); + continue; + } + else if (nameStr == "system-setting") { + QString displayName = m_pSoundNameList->at(index); + continue; + } + } + else { + continue; + } + } +} + +/* + * 是否播放开机音乐 + */ +void UkmediaMainWidget::startupButtonSwitchChangedSlot(bool status) +{ + bool bBootStatus = true; + if (m_pBootSetting->keys().contains("startupMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_STARTUP_MUSIC_KEY).toBool(); + if (bBootStatus != status) { + m_pBootSetting->set(UKUI_STARTUP_MUSIC_KEY,status); + } + } +} + +/* + * 是否播放关机音乐 + */ +void UkmediaMainWidget::poweroffButtonSwitchChangedSlot(bool status) +{ + bool bBootStatus = true; + if (m_pBootSetting->keys().contains("poweroffMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_POWEROFF_MUSIC_KEY).toBool(); + if (bBootStatus != status) { + m_pBootSetting->set(UKUI_POWEROFF_MUSIC_KEY,status); + } + } +} + +/* + * 是否播放注销音乐 + */ +void UkmediaMainWidget::logoutMusicButtonSwitchChangedSlot(bool status) +{ + bool bBootStatus = true; + if (m_pBootSetting->keys().contains("logoutMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_LOGOUT_MUSIC_KEY).toBool(); + if (bBootStatus != status) { + m_pBootSetting->set(UKUI_LOGOUT_MUSIC_KEY,status); + } + } +} + +/* + * 是否播放唤醒音乐 + */ +void UkmediaMainWidget::wakeButtonSwitchChangedSlot(bool status) +{ + bool bBootStatus = true; + if (m_pBootSetting->keys().contains("weakupMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_WAKEUP_MUSIC_KEY).toBool(); + if (bBootStatus != status) { + m_pBootSetting->set(UKUI_WAKEUP_MUSIC_KEY,status); + } + } +} + +/* + * 提示音的开关 + */ +void UkmediaMainWidget::alertSoundButtonSwitchChangedSlot(bool status) +{ + g_settings_set_boolean (m_pSoundSettings, EVENT_SOUNDS_KEY, status); + + if (status == true) { + m_pSoundWidget->m_pAlertSoundWidget->show(); + m_pSoundWidget->m_pVolumeChangeWidget->show(); + m_pSoundWidget->m_pThemeWidget->show(); + m_pSoundWidget->line1->show(); + m_pSoundWidget->line2->show(); + m_pSoundWidget->line3->show(); + } + else { + m_pSoundWidget->m_pAlertSoundWidget->hide(); + m_pSoundWidget->m_pVolumeChangeWidget->hide(); + m_pSoundWidget->m_pThemeWidget->hide(); + m_pSoundWidget->line1->hide(); + m_pSoundWidget->line2->hide(); + m_pSoundWidget->line3->hide(); + } +} + +void UkmediaMainWidget::bootMusicSettingsChanged() +{ + bool bBootStatus = true; + bool status; + if (m_pBootSetting->keys().contains("startupMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_STARTUP_MUSIC_KEY).toBool(); + if (status != bBootStatus ) { + m_pSoundWidget->m_pStartupButton->setChecked(bBootStatus); + } + } + if (m_pBootSetting->keys().contains("poweroffMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_POWEROFF_MUSIC_KEY).toBool(); + if (status != bBootStatus ) { + m_pSoundWidget->m_pPoweroffButton->setChecked(bBootStatus); + } + } + if (m_pBootSetting->keys().contains("logoutMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_LOGOUT_MUSIC_KEY).toBool(); + if (status != bBootStatus ) { + m_pSoundWidget->m_pLogoutButton->setChecked(bBootStatus); + } + } + if (m_pBootSetting->keys().contains("weakupMusic")) { + bBootStatus = m_pBootSetting->get(UKUI_WAKEUP_MUSIC_KEY).toBool(); + if (status != bBootStatus ) { + m_pSoundWidget->m_pWakeupMusicButton->setChecked(bBootStatus); + } + } +} + + +/* + * 系统主题更改 + */ +void UkmediaMainWidget::ukuiThemeChangedSlot(const QString &themeStr) +{ + if (m_pThemeSetting->keys().contains("styleName")) { + mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); + } + int nInputValue = getInputVolume(); + int nOutputValue = getOutputVolume(); + bool inputStatus = m_pVolumeControl->getSourceMute(); + bool outputStatus = m_pVolumeControl->getSinkMute(); + inputVolumeDarkThemeImage(nInputValue,inputStatus); + outputVolumeDarkThemeImage(nOutputValue,outputStatus); + m_pOutputWidget->m_pOutputIconBtn->repaint(); +// m_pSoundWidget->m_pAlertIconBtn->repaint(); + m_pInputWidget->m_pInputIconBtn->repaint(); +} + +/* + * 获取输入音量值 + */ +int UkmediaMainWidget::getInputVolume() +{ + return m_pInputWidget->m_pIpVolumeSlider->value(); +} + +/* + * 获取输出音量值 + */ +int UkmediaMainWidget::getOutputVolume() +{ + return m_pOutputWidget->m_pOpVolumeSlider->value(); +} + +/* + * 深色主题时输出音量图标 + */ +void UkmediaMainWidget::outputVolumeDarkThemeImage(int value,bool status) +{ + QImage image; + QColor color = QColor(0,0,0,216); + if (mThemeName == UKUI_THEME_WHITE || mThemeName == "ukui-default") { + color = QColor(0,0,0,216); + } + else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-dark") { + color = QColor(255,255,255,216); + } + m_pOutputWidget->m_pOutputIconBtn->mColor = color; + if (status) { + image = QIcon::fromTheme("audio-volume-muted-symbolic").pixmap(24,24).toImage(); + } + else if (value <= 0) { + image = QIcon::fromTheme("audio-volume-muted-symbolic").pixmap(24,24).toImage(); + } + else if (value > 0 && value <= 33) { + image = QIcon::fromTheme("audio-volume-low-symbolic").pixmap(24,24).toImage(); + } + else if (value >33 && value <= 66) { + image = QIcon::fromTheme("audio-volume-medium-symbolic").pixmap(24,24).toImage(); + } + else { + image = QIcon::fromTheme("audio-volume-high-symbolic").pixmap(24,24).toImage(); + } + m_pOutputWidget->m_pOutputIconBtn->mImage = image; + +} + +/* + * 输入音量图标 + */ +void UkmediaMainWidget::inputVolumeDarkThemeImage(int value,bool status) +{ + QImage image; + QColor color = QColor(0,0,0,190); + if (mThemeName == UKUI_THEME_WHITE || mThemeName == "ukui-default") { + color = QColor(0,0,0,190); + } + else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-dark") { + color = QColor(255,255,255,190); + } + m_pInputWidget->m_pInputIconBtn->mColor = color; + if (status) { + image = QIcon::fromTheme("microphone-sensitivity-muted-symbolic").pixmap(24,24).toImage(); + } + else if (value <= 0) { + image = QIcon::fromTheme("microphone-sensitivity-muted-symbolic").pixmap(24,24).toImage(); + } + else if (value > 0 && value <= 33) { + image = QIcon::fromTheme("microphone-sensitivity-low-symbolic").pixmap(24,24).toImage(); + } + else if (value >33 && value <= 66) { + image = QIcon::fromTheme("microphone-sensitivity-medium-symbolic").pixmap(24,24).toImage(); + } + else { + image = QIcon::fromTheme("microphone-sensitivity-high-symbolic").pixmap(24,24).toImage(); + } + m_pInputWidget->m_pInputIconBtn->mImage = image; +} + + +void UkmediaMainWidget::onKeyChanged (GSettings *settings,gchar *key,UkmediaMainWidget *m_pWidget) +{ + Q_UNUSED(settings); + g_debug("on key changed"); + if (!strcmp (key, EVENT_SOUNDS_KEY) || + !strcmp (key, SOUND_THEME_KEY) || + !strcmp (key, INPUT_SOUNDS_KEY)) { + updateTheme (m_pWidget); + } +} + +/* + * 更新主题 + */ +void UkmediaMainWidget::updateTheme (UkmediaMainWidget *m_pWidget) +{ + g_debug("update theme"); + char *pThemeName; + gboolean feedBackEnabled; + gboolean eventsEnabled; + feedBackEnabled = g_settings_get_boolean(m_pWidget->m_pSoundSettings, INPUT_SOUNDS_KEY); + eventsEnabled = g_settings_get_boolean(m_pWidget->m_pSoundSettings,EVENT_SOUNDS_KEY); +// eventsEnabled = FALSE; + if (eventsEnabled) { + pThemeName = g_settings_get_string (m_pWidget->m_pSoundSettings, SOUND_THEME_KEY); + } else { + pThemeName = g_strdup (NO_SOUNDS_THEME_NAME); + } + qDebug() << "updateTheme" << pThemeName; + //设置combox的主题 + setComboxForThemeName (m_pWidget, pThemeName); + updateAlertsFromThemeName (m_pWidget, pThemeName); +} + +/* + * 设置主题名到combox + */ +void UkmediaMainWidget::setupThemeSelector (UkmediaMainWidget *m_pWidget) +{ + g_debug("setup theme selector"); + GHashTable *hash; + const char * const *dataDirs; + const char *m_pDataDir; + char *dir; + guint i; + + /* Add the theme names and their display name to a hash table, + * makes it easy to avoid duplicate themes */ + hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free); + + dataDirs = g_get_system_data_dirs (); + for (i = 0; dataDirs[i] != nullptr; i++) { + dir = g_build_filename (dataDirs[i], "sounds", nullptr); + soundThemeInDir (m_pWidget,hash, dir); + } + + m_pDataDir = g_get_user_data_dir (); + dir = g_build_filename (m_pDataDir, "sounds", nullptr); + soundThemeInDir (m_pWidget,hash, dir); + + /* If there isn't at least one theme, make everything + * insensitive, LAME! */ + if (g_hash_table_size (hash) == 0) { + g_warning ("Bad setup, install the freedesktop sound theme"); + g_hash_table_destroy (hash); + return; + } + /* Add the themes to a combobox */ + g_hash_table_destroy (hash); +} + +/* + * 主题名所在目录 + */ +void UkmediaMainWidget::soundThemeInDir (UkmediaMainWidget *m_pWidget,GHashTable *hash,const char *dir) +{ + Q_UNUSED(hash); + qDebug() << "sound theme in dir" << dir; + GDir *d; + const char *m_pName; + d = g_dir_open (dir, 0, nullptr); + if (d == nullptr) { + return; + } + while ((m_pName = g_dir_read_name (d)) != nullptr) { + char *m_pDirName, *m_pIndex, *m_pIndexName; + /* Look for directories */ + m_pDirName = g_build_filename (dir, m_pName, nullptr); + if (g_file_test (m_pDirName, G_FILE_TEST_IS_DIR) == FALSE) { + continue; + } + + /* Look for index files */ + m_pIndex = g_build_filename (m_pDirName, "index.theme", nullptr); + + /* Check the name of the theme in the index.theme file */ + m_pIndexName = loadIndexThemeName (m_pIndex, nullptr); + if (m_pIndexName == nullptr) { + continue; + } + + gchar * themeName = g_settings_get_string (m_pWidget->m_pSoundSettings, SOUND_THEME_KEY); + //设置主题到combox中 + qDebug() << "sound theme in dir" << "displayname:" << m_pIndexName << "theme name:" << m_pName << "theme:"<< themeName; + //屏蔽ubuntu custom 主题 + if (m_pName && !strstr(m_pName,"ubuntu") && !strstr(m_pName,"freedesktop") && !strstr(m_pName,"custom")) { + m_pWidget->m_pThemeDisplayNameList->append(m_pIndexName); + m_pWidget->m_pThemeNameList->append(m_pName); + m_pWidget->m_pSoundWidget->m_pSoundThemeCombobox->addItem(m_pIndexName); + + } + } + g_dir_close (d); +} + +/* + * 加载下标的主题名 + */ +char *UkmediaMainWidget::loadIndexThemeName (const char *index,char **parent) +{ + g_debug("load index theme name"); + GKeyFile *file; + char *indexname = nullptr; + gboolean hidden; + + file = g_key_file_new (); + if (g_key_file_load_from_file (file, index, G_KEY_FILE_KEEP_TRANSLATIONS, nullptr) == FALSE) { + g_key_file_free (file); + return nullptr; + } + /* Don't add hidden themes to the list */ + hidden = g_key_file_get_boolean (file, "Sound Theme", "Hidden", nullptr); + if (!hidden) { + indexname = g_key_file_get_locale_string (file,"Sound Theme","Name",nullptr,nullptr); + /* Save the parent theme, if there's one */ + if (parent != nullptr) { + *parent = g_key_file_get_string (file,"Sound Theme","Inherits",nullptr); + } + } + g_key_file_free (file); + return indexname; +} + +/* + * 设置combox的主题名 + */ +void UkmediaMainWidget::setComboxForThemeName (UkmediaMainWidget *m_pWidget,const char *name) +{ + g_debug("set combox for theme name"); + gboolean found; + int count = 0; + /* If the name is empty, use "freedesktop" */ + if (name == nullptr || *name == '\0') { + name = "freedesktop"; + } + QString value; + int index = -1; + while(!found) { + value = m_pWidget->m_pThemeNameList->at(count); + found = (value != "" && value == name); + count++; + if( count >= m_pWidget->m_pThemeNameList->size() || found) { + count = 0; + break; + } + } + if (m_pWidget->m_pThemeNameList->contains(name)) { + index = m_pWidget->m_pThemeNameList->indexOf(name); + value = m_pWidget->m_pThemeNameList->at(index); + m_pWidget->m_pSoundWidget->m_pSoundThemeCombobox->setCurrentIndex(index); + } + /* When we can't find the theme we need to set, try to set the default + * one "freedesktop" */ + if (found) { + } else if (strcmp (name, "freedesktop") != 0) {//设置为默认的主题 + qDebug() << "设置为默认的主题" << "freedesktop"; + g_debug ("not found, falling back to fdo"); + setComboxForThemeName (m_pWidget, "freedesktop"); + } +} + +/* + * 更新报警音 + */ +void UkmediaMainWidget::updateAlertsFromThemeName (UkmediaMainWidget *m_pWidget,const gchar *m_pName) +{ + g_debug("update alerts from theme name"); + if (strcmp (m_pName, CUSTOM_THEME_NAME) != 0) { + /* reset alert to default */ + updateAlert (m_pWidget, DEFAULT_ALERT_ID); + } else { + int sound_type; + char *linkname; + linkname = nullptr; + sound_type = getFileType ("bell-terminal", &linkname); + g_debug ("Found link: %s", linkname); + if (sound_type == SOUND_TYPE_CUSTOM) { + updateAlert (m_pWidget, linkname); + } + } +} + +/* + 更新报警声音 +*/ +void UkmediaMainWidget::updateAlert (UkmediaMainWidget *pWidget,const char *alertId) +{ + Q_UNUSED(alertId) + g_debug("update alert"); + QString themeStr; + char *theme; + char *parent; + gboolean is_custom; + gboolean is_default; + gboolean add_custom = false; + gboolean remove_custom = false; + QString nameStr; + int index = -1; + /* Get the current theme's name, and set the parent */ + index = pWidget->m_pSoundWidget->m_pSoundThemeCombobox->currentIndex(); + if (index != -1) { + themeStr = pWidget->m_pThemeNameList->at(index); + nameStr = pWidget->m_pThemeNameList->at(index); + } + else { + themeStr = "freedesktop"; + nameStr = "freedesktop"; + } + QByteArray ba = themeStr.toLatin1(); + theme = ba.data(); + + QByteArray baParent = nameStr.toLatin1(); + parent = baParent.data(); + + is_custom = strcmp (theme, CUSTOM_THEME_NAME) == 0; + is_default = strcmp (alertId, DEFAULT_ALERT_ID) == 0; + + if (! is_custom && is_default) { + /* remove custom just in case */ + remove_custom = TRUE; + } else if (! is_custom && ! is_default) { + createCustomTheme (parent); + saveAlertSounds(pWidget->m_pSoundWidget->m_pSoundThemeCombobox, alertId); + add_custom = TRUE; + } else if (is_custom && is_default) { + saveAlertSounds(pWidget->m_pSoundWidget->m_pSoundThemeCombobox, alertId); + /* after removing files check if it is empty */ + if (customThemeDirIsEmpty ()) { + remove_custom = TRUE; + } + } else if (is_custom && ! is_default) { + saveAlertSounds(pWidget->m_pSoundWidget->m_pSoundThemeCombobox, alertId); + } + + if (add_custom) { + setComboxForThemeName (pWidget, CUSTOM_THEME_NAME); + } else if (remove_custom) { + setComboxForThemeName (pWidget, parent); + } +} + +/* + 获取声音文件类型 +*/ +int UkmediaMainWidget::getFileType (const char *sound_name,char **linked_name) +{ + g_debug("get file type"); + char *name, *filename; + *linked_name = nullptr; + name = g_strdup_printf ("%s.disabled", sound_name); + filename = customThemeDirPath (name); + if (g_file_test (filename, G_FILE_TEST_IS_REGULAR) != FALSE) { + return SOUND_TYPE_OFF; + } + /* We only check for .ogg files because those are the + * only ones we create */ + name = g_strdup_printf ("%s.ogg", sound_name); + filename = customThemeDirPath (name); + g_free (name); + + if (g_file_test (filename, G_FILE_TEST_IS_SYMLINK) != FALSE) { + *linked_name = g_file_read_link (filename, nullptr); + g_free (filename); + return SOUND_TYPE_CUSTOM; + } + g_free (filename); + return SOUND_TYPE_BUILTIN; +} + +/* + 自定义主题路径 +*/ +char *UkmediaMainWidget::customThemeDirPath (const char *child) +{ + g_debug("custom theme dir path"); + static char *dir = nullptr; + const char *data_dir; + + if (dir == nullptr) { + data_dir = g_get_user_data_dir (); + dir = g_build_filename (data_dir, "sounds", CUSTOM_THEME_NAME, nullptr); + } + if (child == nullptr) + return g_strdup (dir); + + return g_build_filename (dir, child, nullptr); +} + +/* + 获取报警声音文件的路径 +*/ +void UkmediaMainWidget::populateModelFromDir (UkmediaMainWidget *m_pWidget,const char *dirname)//从目录查找报警声音文件 +{ + g_debug("populate model from dir"); + GDir *d; + const char *name; + char *path; + d = g_dir_open (dirname, 0, nullptr); + if (d == nullptr) { + return; + } + while ((name = g_dir_read_name (d)) != nullptr) { + + if (! g_str_has_suffix (name, ".xml")) { + continue; + } + QString themeName = name; + QStringList temp = themeName.split("-"); + themeName = temp.at(0); + if (!m_pWidget->m_pSoundThemeList->contains(themeName)) { + m_pWidget->m_pSoundThemeList->append(themeName); + m_pWidget->m_pSoundThemeDirList->append(dirname); + m_pWidget->m_pSoundThemeXmlNameList->append(name); + } + path = g_build_filename (dirname, name, nullptr); + } + char *pThemeName = g_settings_get_string (m_pWidget->m_pSoundSettings, SOUND_THEME_KEY); + int themeIndex; + if(m_pWidget->m_pSoundThemeList->contains(pThemeName)) { + themeIndex = m_pWidget->m_pSoundThemeList->indexOf(pThemeName); + if (themeIndex < 0 ) + return; + + } + else { + themeIndex = 1; + } + + QString dirName = m_pWidget->m_pSoundThemeDirList->at(themeIndex); + QString xmlName = m_pWidget->m_pSoundThemeXmlNameList->at(themeIndex); + path = g_build_filename (dirName.toLatin1().data(), xmlName.toLatin1().data(), nullptr); + m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->blockSignals(true); + m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->clear(); + m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->blockSignals(false); + + populateModelFromFile (m_pWidget, path); + //初始化声音主题 + + g_free (path); + g_dir_close (d); +} + +/* + 获取报警声音文件 +*/ +void UkmediaMainWidget::populateModelFromFile (UkmediaMainWidget *m_pWidget,const char *filename) +{ + g_debug("populate model from file"); + xmlDocPtr doc; + xmlNodePtr root; + xmlNodePtr child; + gboolean exists; + + exists = g_file_test (filename, G_FILE_TEST_EXISTS); + if (! exists) { + return; + } + doc = xmlParseFile (filename); + if (doc == nullptr) { + return; + } + root = xmlDocGetRootElement (doc); + for (child = root->children; child; child = child->next) { + if (xmlNodeIsText (child)) { + continue; + } + if (xmlStrcmp (child->name, GVC_SOUND_SOUND) != 0) { + continue; + } + populateModelFromNode (m_pWidget, child); + } + xmlFreeDoc (doc); +} + +/* + 从节点查找声音文件并加载到组合框中 +*/ +void UkmediaMainWidget::populateModelFromNode (UkmediaMainWidget *m_pWidget,xmlNodePtr node) +{ + g_debug("populate model from node"); + xmlNodePtr child; + xmlChar *filename; + xmlChar *name; + + filename = nullptr; + name = xmlGetAndTrimNames (node); + for (child = node->children; child; child = child->next) { + if (xmlNodeIsText (child)) { + continue; + } + + if (xmlStrcmp (child->name, GVC_SOUND_FILENAME) == 0) { + filename = xmlNodeGetContent (child); + } else if (xmlStrcmp (child->name, GVC_SOUND_NAME) == 0) { + /* EH? should have been trimmed */ + } + } + + gchar * themeName = g_settings_get_string (m_pWidget->m_pSoundSettings, SOUND_THEME_KEY); + + //将找到的声音文件名设置到combox中 + if (filename != nullptr && name != nullptr) { + m_pWidget->m_pSoundList->append((const char *)filename); + m_pWidget->m_pSoundNameList->append((const char *)name); + m_pWidget->m_pSoundWidget->m_pAlertSoundCombobox->addItem((char *)name); + m_pWidget->m_pSoundWidget->m_pLagoutCombobox->addItem((char *)name); + m_pWidget->m_pSoundWidget->m_pVolumeChangeCombobox->addItem((char *)name); + } + xmlFree (filename); + xmlFree (name); +} + +/* Adapted from yelp-toc-pager.c */ +xmlChar *UkmediaMainWidget::xmlGetAndTrimNames (xmlNodePtr node) +{ + g_debug("xml get and trim names"); + xmlNodePtr cur; + xmlChar *keep_lang = nullptr; + xmlChar *value; + int j, keep_pri = INT_MAX; + const gchar * const * langs = g_get_language_names (); + + value = nullptr; + for (cur = node->children; cur; cur = cur->next) { + if (! xmlStrcmp (cur->name, GVC_SOUND_NAME)) { + xmlChar *cur_lang = nullptr; + int cur_pri = INT_MAX; + cur_lang = xmlNodeGetLang (cur); + + if (cur_lang) { + for (j = 0; langs[j]; j++) { + if (g_str_equal (cur_lang, langs[j])) { + cur_pri = j; + break; + } + } + } else { + cur_pri = INT_MAX - 1; + } + + if (cur_pri <= keep_pri) { + if (keep_lang) + xmlFree (keep_lang); + if (value) + xmlFree (value); + + value = xmlNodeGetContent (cur); + + keep_lang = cur_lang; + keep_pri = cur_pri; + } else { + if (cur_lang) + xmlFree (cur_lang); + } + } + } + + /* Delete all GVC_SOUND_NAME nodes */ + cur = node->children; + while (cur) { + xmlNodePtr p_this = cur; + cur = cur->next; + if (! xmlStrcmp (p_this->name, GVC_SOUND_NAME)) { + xmlUnlinkNode (p_this); + xmlFreeNode (p_this); + } + } + return value; +} + +/* + * 播放报警声音 +*/ +void UkmediaMainWidget::playAlretSoundFromPath (UkmediaMainWidget *w,QString path) +{ + g_debug("play alert sound from path"); + + gchar * themeName = g_settings_get_string (w->m_pSoundSettings, SOUND_THEME_KEY); + + if (strcmp (path.toLatin1().data(), DEFAULT_ALERT_ID) == 0) { + if (themeName != NULL) { + caPlayForWidget (w, 0, + CA_PROP_APPLICATION_NAME, _("Sound Preferences"), + CA_PROP_EVENT_ID, "bell-window-system", + CA_PROP_CANBERRA_XDG_THEME_NAME, themeName, + CA_PROP_EVENT_DESCRIPTION, _("Testing event sound"), + CA_PROP_CANBERRA_CACHE_CONTROL, "never", + CA_PROP_APPLICATION_ID, "org.mate.VolumeControl", + #ifdef CA_PROP_CANBERRA_ENABLE + CA_PROP_CANBERRA_ENABLE, "1", + #endif + NULL); + } else { + caPlayForWidget (w, 0, + CA_PROP_APPLICATION_NAME, _("Sound Preferences"), + CA_PROP_EVENT_ID, "bell-window-system", + CA_PROP_EVENT_DESCRIPTION, _("Testing event sound"), + CA_PROP_CANBERRA_CACHE_CONTROL, "never", + CA_PROP_APPLICATION_ID, "org.mate.VolumeControl", + #ifdef CA_PROP_CANBERRA_ENABLE + CA_PROP_CANBERRA_ENABLE, "1", + #endif + NULL); + } + } else { + caPlayForWidget (w, 0, + CA_PROP_APPLICATION_NAME, _("Sound Preferences"), + CA_PROP_MEDIA_FILENAME, path.toLatin1().data(), + CA_PROP_EVENT_DESCRIPTION, _("Testing event sound"), + CA_PROP_CANBERRA_CACHE_CONTROL, "never", + CA_PROP_APPLICATION_ID, "org.mate.VolumeControl", + #ifdef CA_PROP_CANBERRA_ENABLE + CA_PROP_CANBERRA_ENABLE, "1", + #endif + NULL); + } +} + +/* + 点击combox播放声音 +*/ +void UkmediaMainWidget::comboxIndexChangedSlot(int index) +{ + g_debug("combox index changed slot"); + QString sound_name = m_pSoundList->at(index); + updateAlert(this,sound_name.toLatin1().data()); + playAlretSoundFromPath(this,sound_name); + + QString fileName = m_pSoundList->at(index); + QStringList list = fileName.split("/"); + QString soundName = list.at(list.count()-1); + QStringList eventIdList = soundName.split("."); + QString eventId = eventIdList.at(0); + QList existsPath = listExistsPath(); + + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); +// QString filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "alert-sound") { + settings->set(FILENAME_KEY,eventId); + return; + } + } + else { + continue; + } + } + +} + +/* + 设置窗口关闭的提示音 +*/ +void UkmediaMainWidget::windowClosedComboboxChangedSlot(int index) +{ + QString fileName = m_pSoundList->at(index); + QStringList list = fileName.split("/"); + QString soundName = list.at(list.count()-1); + QStringList eventIdList = soundName.split("."); + QString eventId = eventIdList.at(0); + QList existsPath = listExistsPath(); + + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); +// QString filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "window-close") { + settings->set(FILENAME_KEY,eventId); + return; + } + } + else { + continue; + } + } +} + +/* + 设置音量改变的提示声音 +*/ +void UkmediaMainWidget::volumeChangedComboboxChangeSlot(int index) +{ + QString sound_name = m_pSoundList->at(index); +// updateAlert(this,sound_name.toLatin1().data()); + playAlretSoundFromPath(this,sound_name); + + QString fileName = m_pSoundList->at(index); + QStringList list = fileName.split("/"); + QString soundName = list.at(list.count()-1); + QStringList eventIdList = soundName.split("."); + QString eventId = eventIdList.at(0); + QList existsPath = listExistsPath(); + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); +// QString filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "volume-changed") { + settings->set(FILENAME_KEY,eventId); + return; + } + } + else { + continue; + } + } +} + +void UkmediaMainWidget::settingMenuComboboxChangedSlot(int index) +{ + QString fileName = m_pSoundList->at(index); + QStringList list = fileName.split("/"); + QString soundName = list.at(list.count()-1); + QStringList eventIdList = soundName.split("."); + QString eventId = eventIdList.at(0); + QList existsPath = listExistsPath(); + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "system-setting") { + settings->set(FILENAME_KEY,eventId); + return; + } + } + else { + continue; + } + } +} + +/* + 点击输入音量按钮静音 +*/ +void UkmediaMainWidget::inputMuteButtonSlot() +{ + m_pVolumeControl->setSourceMute(!m_pVolumeControl->sourceMuted); + inputVolumeDarkThemeImage(paVolumeToValue(m_pVolumeControl->sourceVolume),!m_pVolumeControl->sourceMuted); + m_pOutputWidget->m_pOutputIconBtn->repaint(); +} + +/* + 点击输出音量按钮静音 +*/ +void UkmediaMainWidget::outputMuteButtonSlot() +{ + m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); + outputVolumeDarkThemeImage(paVolumeToValue(m_pVolumeControl->sinkVolume),!m_pVolumeControl->sinkMuted); + m_pOutputWidget->m_pOutputIconBtn->repaint(); +} + + +/* + 点击声音主题实现主题切换 +*/ +void UkmediaMainWidget::themeComboxIndexChangedSlot(int index) +{ + Q_UNUSED(index); + g_debug("theme combox index changed slot"); + if (index == -1) { + return; + } + //设置系统主题 + QString theme = m_pThemeNameList->at(index); + QByteArray ba = theme.toLatin1(); + const char *m_pThemeName = ba.data(); + + if (strcmp(m_pThemeName,"freedesktop") == 0) { + int index = 0; + for (int i=0;icount();i++) { + QString str = m_pSoundList->at(i); + if (str.contains("gudou",Qt::CaseSensitive)) { + index = i; + break; + } + } + + QString displayName = m_pSoundNameList->at(index); + m_pSoundWidget->m_pAlertSoundCombobox->setCurrentText(displayName); + } + + QString dirName = m_pSoundThemeDirList->at(index); + int themeIndex = m_pSoundThemeList->indexOf(m_pThemeName); + if (themeIndex < 0 ) + return; + qDebug() << "index changed:" << m_pSoundThemeXmlNameList->at(themeIndex) << m_pThemeNameList->at(index) << m_pThemeName << dirName.toLatin1().data() ;//<< path; + QString xmlName = m_pSoundThemeXmlNameList->at(themeIndex); + const gchar *path = g_build_filename (dirName.toLatin1().data(), xmlName.toLatin1().data(), nullptr); + m_pSoundList->clear(); + m_pSoundNameList->clear(); + m_pSoundWidget->m_pAlertSoundCombobox->blockSignals(true); + m_pSoundWidget->m_pLagoutCombobox->blockSignals(true); + m_pSoundWidget->m_pVolumeChangeCombobox->blockSignals(true); + m_pSoundWidget->m_pAlertSoundCombobox->clear(); + m_pSoundWidget->m_pLagoutCombobox->clear(); + m_pSoundWidget->m_pVolumeChangeCombobox->clear(); + m_pSoundWidget->m_pAlertSoundCombobox->blockSignals(false); + m_pSoundWidget->m_pLagoutCombobox->blockSignals(false); + m_pSoundWidget->m_pVolumeChangeCombobox->blockSignals(false); + populateModelFromFile (this, path); + + /* special case for no sounds */ + if (strcmp (m_pThemeName, NO_SOUNDS_THEME_NAME) == 0) { + //设置提示音关闭 + g_settings_set_boolean (m_pSoundSettings, EVENT_SOUNDS_KEY, FALSE); + return; + } else { + g_settings_set_boolean (m_pSoundSettings, EVENT_SOUNDS_KEY, TRUE); + } + +} + +/* + 滚动输出音量滑动条 +*/ +void UkmediaMainWidget::outputWidgetSliderChangedSlot(int value) +{ + int volume = valueToPaVolume(value); + m_pVolumeControl->getDefaultSinkIndex(); + m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); + qDebug() << "outputWidgetSliderChangedSlot" << value <m_pOpVolumePercentLabel->setText(percent); + m_pOutputWidget->m_pOutputIconBtn->repaint(); + +} + +void UkmediaMainWidget::timeSliderSlot() +{ + if(mouseReleaseState){ + int value = m_pOutputWidget->m_pOpVolumeSlider->value(); + + QString percent; + bool status = false; + percent = QString::number(value); + int volume = value*65536/100; + if (value <= 0) { + status = true; + + percent = QString::number(0); + } + else { + if (firstEnterSystem) { + + } + else { + + } + } + firstEnterSystem = false; + outputVolumeDarkThemeImage(value,status); + percent.append("%"); + m_pOutputWidget->m_pOpVolumePercentLabel->setText(percent); + m_pOutputWidget->m_pOutputIconBtn->repaint(); + + mouseReleaseState = false; + mousePress = false; + timeSlider->stop(); + } + else{ + timeSlider->start(50); + } +} + +/* + 滚动输入滑动条 +*/ +void UkmediaMainWidget::inputWidgetSliderChangedSlot(int value) +{ + int volume = valueToPaVolume(value); + m_pVolumeControl->getDefaultSinkIndex(); + m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,volume); + qDebug() << "inputWidgetSliderChangedSlot" << value <sourceMuted); + m_pInputWidget->m_pInputIconBtn->repaint(); + QString percent = QString::number(value); + percent.append("%"); + m_pInputWidget->m_pInputIconBtn->repaint(); + m_pInputWidget->m_pIpVolumePercentLabel->setText(percent); +} + +/* + * 平衡值改变 + */ +void UkmediaMainWidget::balanceSliderChangedSlot(int value) +{ + gdouble volume = value/100.0; + value = valueToPaVolume(m_pOutputWidget->m_pOpVolumeSlider->value()); + m_pVolumeControl->setBalanceVolume(m_pVolumeControl->sinkIndex,value,volume); + qDebug() << "balanceSliderChangedSlot" <= 0) { + m_pInputWidget->m_pInputLevelProgressBar->setEnabled(true); + //因为有些电脑MIC增益太大会引起反馈条消失先暂时固定最大值为101 + //int value = qRound(v * m_pInputWidget->m_pInputLevelProgressBar->maximum()); + int value = qRound(v * 100); + m_pInputWidget->m_pInputLevelProgressBar->setValue(value); + } else { + m_pInputWidget->m_pInputLevelProgressBar->setEnabled(false); + m_pInputWidget->m_pInputLevelProgressBar->setValue(0); + } +} + +gboolean UkmediaMainWidget::saveAlertSounds (QComboBox *combox,const char *id) +{ + const char *sounds[3] = { "bell-terminal", "bell-window-system", NULL }; + char *path; + + if (strcmp (id, DEFAULT_ALERT_ID) == 0) { + deleteOldFiles (sounds); + deleteDisabledFiles (sounds); + } else { + deleteOldFiles (sounds); + deleteDisabledFiles (sounds); + addCustomFile (sounds, id); + } + + /* And poke the directory so the theme gets updated */ + path = customThemeDirPath(NULL); + if (utime (path, NULL) != 0) { + g_warning ("Failed to update mtime for directory '%s': %s", + path, g_strerror (errno)); + } + g_free (path); + + return FALSE; +} + +void UkmediaMainWidget::deleteOldFiles (const char **sounds) +{ + guint i; + for (i = 0; sounds[i] != NULL; i++) { + deleteOneFile (sounds[i], "%s.ogg"); + } +} + +void UkmediaMainWidget::deleteOneFile (const char *sound_name, const char *pattern) +{ + GFile *file; + char *name, *filename; + + name = g_strdup_printf (pattern, sound_name); + filename = customThemeDirPath(name); + g_free (name); + file = g_file_new_for_path (filename); + g_free (filename); + cappletFileDeleteRecursive (file, NULL); + g_object_unref (file); +} + +void UkmediaMainWidget::deleteDisabledFiles (const char **sounds) +{ + guint i; + for (i = 0; sounds[i] != NULL; i++) { + deleteOneFile (sounds[i], "%s.disabled"); + } +} + +void UkmediaMainWidget::addCustomFile (const char **sounds, const char *filename) +{ + guint i; + + for (i = 0; sounds[i] != NULL; i++) { + GFile *file; + char *name, *path; + + /* We use *.ogg because it's the first type of file that + * libcanberra looks at */ + name = g_strdup_printf ("%s.ogg", sounds[i]); + path = customThemeDirPath(name); + g_free (name); + /* In case there's already a link there, delete it */ + g_unlink (path); + file = g_file_new_for_path (path); + g_free (path); + + /* Create the link */ + g_file_make_symbolic_link (file, filename, NULL, NULL); + g_object_unref (file); + } +} + +/** + * A utility routine to delete files and/or directories, + * including non-empty directories. + **/ +gboolean UkmediaMainWidget::cappletFileDeleteRecursive (GFile *file, GError **error) +{ + GFileInfo *info; + GFileType type; + + g_return_val_if_fail (error == NULL || *error == NULL, FALSE); + + info = g_file_query_info (file, + G_FILE_ATTRIBUTE_STANDARD_TYPE, + G_FILE_QUERY_INFO_NONE, + NULL, error); + if (info == NULL) { + return FALSE; + } + + type = g_file_info_get_file_type (info); + g_object_unref (info); + + if (type == G_FILE_TYPE_DIRECTORY) { + return directoryDeleteRecursive (file, error); + } + else { + return g_file_delete (file, NULL, error); + } +} + +gboolean UkmediaMainWidget::directoryDeleteRecursive (GFile *directory, GError **error) +{ + GFileEnumerator *enumerator; + GFileInfo *info; + gboolean success = TRUE; + + enumerator = g_file_enumerate_children (directory, + G_FILE_ATTRIBUTE_STANDARD_NAME "," + G_FILE_ATTRIBUTE_STANDARD_TYPE, + G_FILE_QUERY_INFO_NONE, + NULL, error); + if (enumerator == NULL) + return FALSE; + + while (success && + (info = g_file_enumerator_next_file (enumerator, NULL, NULL))) { + GFile *child; + + child = g_file_get_child (directory, g_file_info_get_name (info)); + + if (g_file_info_get_file_type (info) == G_FILE_TYPE_DIRECTORY) { + success = directoryDeleteRecursive (child, error); + } + g_object_unref (info); + + if (success) + success = g_file_delete (child, NULL, error); + } + g_file_enumerator_close (enumerator, NULL, NULL); + + if (success) + success = g_file_delete (directory, NULL, error); + + return success; +} + +void UkmediaMainWidget::createCustomTheme (const char *parent) +{ + GKeyFile *keyfile; + char *data; + char *path; + + /* Create the custom directory */ + path = customThemeDirPath(NULL); + g_mkdir_with_parents (path, 0755); + g_free (path); + + /* Set the data for index.theme */ + keyfile = g_key_file_new (); + g_key_file_set_string (keyfile, "Sound Theme", "Name", _("Custom")); + g_key_file_set_string (keyfile, "Sound Theme", "Inherits", parent); + g_key_file_set_string (keyfile, "Sound Theme", "Directories", "."); + data = g_key_file_to_data (keyfile, NULL, NULL); + g_key_file_free (keyfile); + + /* Save the index.theme */ + path = customThemeDirPath ("index.theme"); + g_file_set_contents (path, data, -1, NULL); + g_free (path); + g_free (data); + + customThemeUpdateTime (); +} + +/* This function needs to be called after each individual + * changeset to the theme */ +void UkmediaMainWidget::customThemeUpdateTime (void) +{ + char *path; + path = customThemeDirPath (NULL); + utime (path, NULL); + g_free (path); +} + +gboolean UkmediaMainWidget::customThemeDirIsEmpty (void) +{ + char *dir; + GFile *file; + gboolean is_empty; + GFileEnumerator *enumerator; + GFileInfo *info; + GError *error = NULL; + + dir = customThemeDirPath(NULL); + file = g_file_new_for_path (dir); + g_free (dir); + + is_empty = TRUE; + + enumerator = g_file_enumerate_children (file, + G_FILE_ATTRIBUTE_STANDARD_NAME "," + G_FILE_ATTRIBUTE_STANDARD_TYPE, + G_FILE_QUERY_INFO_NONE, + NULL, &error); + if (enumerator == NULL) { + g_warning ("Unable to enumerate files: %s", error->message); + g_error_free (error); + goto out; + } + + while (is_empty && + (info = g_file_enumerator_next_file (enumerator, NULL, NULL))) { + + if (strcmp ("index.theme", g_file_info_get_name (info)) != 0) { + is_empty = FALSE; + } + + g_object_unref (info); + } + g_file_enumerator_close (enumerator, NULL, NULL); + +out: + g_object_unref (file); + + return is_empty; +} + +int UkmediaMainWidget::caPlayForWidget(UkmediaMainWidget *w, uint32_t id, ...) +{ + va_list ap; + int ret; + ca_proplist *p; + + if ((ret = ca_proplist_create(&p)) < 0) + return ret; + + if ((ret = caProplistSetForWidget(p, w)) < 0) + return -1; + + va_start(ap, id); + ret = caProplistMergeAp(p, ap); + va_end(ap); + + if (ret < 0) + return -1; + ca_context *c ; + ca_context_create(&c); + ret = ca_context_play_full(c, id, p, NULL, NULL); + + return ret; +} + +int UkmediaMainWidget::caProplistMergeAp(ca_proplist *p, va_list ap) +{ + int ret; + for (;;) { + const char *key, *value; + + if (!(key = va_arg(ap, const char*))) + break; + + if (!(value = va_arg(ap, const char*))) + return CA_ERROR_INVALID; + + if ((ret = ca_proplist_sets(p, key, value)) < 0) + return ret; + } + + return CA_SUCCESS; +} + +int UkmediaMainWidget::caProplistSetForWidget(ca_proplist *p, UkmediaMainWidget *widget) +{ + int ret; + const char *t; + QScreen *screen; + gint x = -1; + gint y = -1; + gint width = -1; + gint height = -1; + gint screen_width = -1; + gint screen_height = -1; + + if ((t = widget->windowTitle().toLatin1().data())) + if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_NAME, t)) < 0) + return ret; + + if (t) + if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_ID, t)) < 0) + return ret; + + if ((t = widget->windowIconText().toLatin1().data())) + if ((ret = ca_proplist_sets(p, CA_PROP_WINDOW_ICON_NAME, t)) < 0) + return ret; + if (screen = qApp->primaryScreen()) { + if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_X11_SCREEN, "%i", 0)) < 0) + return ret; + } + + width = widget->size().width(); + height = widget->size().height(); + + if (width > 0) + if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_WIDTH, "%i", width)) < 0) + return ret; + if (height > 0) + if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_HEIGHT, "%i", height)) < 0) + return ret; + + if (x >= 0 && width > 0) { + screen_width = qApp->primaryScreen()->size().width(); + + x += width/2; + x = CA_CLAMP(x, 0, screen_width-1); + + /* We use these strange format strings here to avoid that libc + * applies locale information on the formatting of floating + * numbers. */ + + if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_HPOS, "%i.%03i", + (int) (x/(screen_width-1)), (int) (1000.0*x/(screen_width-1)) % 1000)) < 0) + return ret; + } + + if (y >= 0 && height > 0) { + screen_height = qApp->primaryScreen()->size().height(); + + y += height/2; + y = CA_CLAMP(y, 0, screen_height-1); + + if ((ret = ca_proplist_setf(p, CA_PROP_WINDOW_VPOS, "%i.%03i", + (int) (y/(screen_height-1)), (int) (1000.0*y/(screen_height-1)) % 1000)) < 0) + return ret; + } + return CA_SUCCESS; +} + +UkmediaMainWidget::~UkmediaMainWidget() +{ + +} + +//查找指定声卡名的索引 +int UkmediaMainWidget::findCardIndex(QString cardName, QMap cardMap) +{ + QMap::iterator it; + + for(it=cardMap.begin();it!=cardMap.end();) { + if (it.value() == cardName) { + return it.key(); + } + ++it; + } + return -1; +} + +/* + * 根据声卡索引查找声卡名 + */ +QString UkmediaMainWidget::findCardName(int index,QMap cardMap) +{ + QMap::iterator it; + + for(it=cardMap.begin();it!=cardMap.end();) { + if (it.key() == index) { + return it.value(); + } + ++it; + } + return ""; +} + +/* + 查找名称为PortLbael 的portName +*/ +QString UkmediaMainWidget::findOutputPortName(int index,QString portLabel) +{ + QMap>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portName = ""; + for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + if (tempMap.value() == portLabel) { + portName = tempMap.key(); + break; + } + ++tempMap; + } + } + ++it; + } + return portName; +} + +/* + 查找名称为PortName 的portLabel +*/ +QString UkmediaMainWidget::findOutputPortLabel(int index,QString portName) +{ + QMap>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portLabel = ""; + for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + qDebug() <<"findOutputPortLabel" <>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portName = ""; + for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + if (tempMap.value() == portLabel) { + portName = tempMap.key(); + break; + } + ++tempMap; + } + } + ++it; + } + return portName; +} + +/* + 查找名称为PortName 的portLabel +*/ +QString UkmediaMainWidget::findInputPortLabel(int index,QString portName) +{ + QMap>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portLabel = ""; + for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + if (tempMap.key() == portName) { + portLabel = tempMap.value(); + break; + } + ++tempMap; + } + } + ++it; + } + return portLabel; +} + + +QString UkmediaMainWidget::findHighPriorityProfile(int index,QString profile) +{ + QMap>::iterator it; + int priority = 0; + QString profileName = ""; + QMap profileNameMap; + QMap::iterator tempMap; + QString cardStr = findCardName(index,m_pVolumeControl->cardMap); + + QString profileStr = findCardActiveProfile(index) ; + + QStringList list = profileStr.split("+"); + QString includeProfile = ""; + + if (list.count() >1) { + if (profile.contains("output")) { + includeProfile = list.at(1); + } + else if (profile.contains("input")){ + includeProfile = list.at(0); + } + qDebug() << "profile str" <cardProfilePriorityMap.begin();it!=m_pVolumeControl->cardProfilePriorityMap.end();) { + if (it.key() == index) { + profileNameMap = it.value(); + for (tempMap=profileNameMap.begin();tempMap!=profileNameMap.end();) { + if (includeProfile != "" && tempMap.key().contains(includeProfile) && !tempMap.key().contains(includeProfile+"-") \ + && tempMap.key().contains(profile) && !tempMap.key().contains(profile+"-")) { + priority = tempMap.value(); + profileName = tempMap.key(); + qDebug() << "findHighPriorityProfile" << includeProfile < priority) { + priority = tempMap.value(); + profileName = tempMap.key(); + qDebug() << "findHighPriorityProfile" << includeProfile <m_pInputDeviceSelectBox->count();row++) { + + QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); + if (inputComboboxCardName.contains("bluez")) { + return true; + } + } + return false; +} + +QString UkmediaMainWidget::blueCardNameInCombobox() +{ + for (int row=0;rowm_pInputDeviceSelectBox->count();row++) { + + QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); + if (inputComboboxCardName.contains("bluez")) { + return inputComboboxCardName; + } + } + return ""; +} + +/* + 记录输入stream的card name +*/ +void UkmediaMainWidget::inputStreamMapCardName (QString streamName,QString cardName) +{ + if (inputCardStreamMap.count() == 0) { + inputCardStreamMap.insertMulti(streamName,cardName); + } + QMap::iterator it; + + for (it=inputCardStreamMap.begin();it!=inputCardStreamMap.end();) { + if (it.value() == cardName) { + break; + } + if (it == inputCardStreamMap.end()-1) { + qDebug() << "inputCardSreamMap " << streamName << cardName; + inputCardStreamMap.insertMulti(streamName,cardName); + } + ++it; + } +} + +/* + 记录输出stream的card name +*/ +void UkmediaMainWidget::outputStreamMapCardName(QString streamName, QString cardName) +{ + if (outputCardStreamMap.count() == 0) { + outputCardStreamMap.insertMulti(streamName,cardName); + } + QMap::iterator it; + + for (it=outputCardStreamMap.begin();it!=outputCardStreamMap.end();) { + if (it.value() == cardName) { + break; + } + if (it == outputCardStreamMap.end()-1) { + qDebug() << "outputCardStreamMap " << streamName << cardName; + outputCardStreamMap.insertMulti(streamName,cardName); + } + ++it; + } +} + +/* + 找输入stream对应的card name +*/ +QString UkmediaMainWidget::findInputStreamCardName(QString streamName) +{ + QString cardName; + QMap::iterator it; + for (it=inputCardStreamMap.begin();it!=inputCardStreamMap.end();) { + if (it.key() == streamName) { + cardName = it.value(); + qDebug() << "findInputStreamCardName:" << cardName; + break; + } + ++it; + } + return cardName; +} + +/* + 找输出stream对应的card name +*/ +QString UkmediaMainWidget::findOutputStreamCardName(QString streamName) +{ + QString cardName; + QMap::iterator it; + for (it=outputCardStreamMap.begin();it!=outputCardStreamMap.end();) { + if (it.key() == streamName) { + cardName = it.value(); + break; + } + ++it; + } + return cardName; +} + +/* + * 设置声卡的配置文件 + */ +void UkmediaMainWidget::setCardProfile(QString name, QString profile) +{ + int index = findCardIndex(name,m_pVolumeControl->cardMap); + m_pVolumeControl->setCardProfile(index,profile.toLatin1().data()); + + qDebug() << "set profile" << name << profile << index ; +} + +/* + * 设置默认的输出设备端口 + */ +void UkmediaMainWidget::setDefaultOutputPortDevice(QString devName, QString portName) +{ + int cardIndex = findCardIndex(devName,m_pVolumeControl->cardMap); + QString portStr = findOutputPortName(cardIndex,portName); + qDebug() << "setDefaultOutputPortDevice" << devName <start(100); + connect(timer,&QTimer::timeout,[=](){ + QString sinkStr = findPortSink(cardIndex,portStr); + + /*默认的stream 和设置的stream相同 需要更新端口*/ + if (strcmp(sinkStr.toLatin1().data(),m_pVolumeControl->defaultSinkName) == 0) { + m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); + } + else { + m_pVolumeControl->setDefaultSink(sinkStr.toLatin1().data()); + m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); + } + qDebug() << "set default output" << portName <cardMap); + QString portStr = findInputPortName(cardIndex,portName); + + QTimer *timer = new QTimer; + timer->start(100); + connect(timer,&QTimer::timeout,[=](){ + QString sourceStr = findPortSource(cardIndex,portStr); + + /*默认的stream 和设置的stream相同 需要更新端口*/ + if (strcmp(sourceStr.toLatin1().data(),m_pVolumeControl->defaultSourceName) == 0) { + m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); + } + else { + m_pVolumeControl->setDefaultSource(sourceStr.toLatin1().data()); + m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); + } + qDebug() << "set default input" << portName << cardIndex << portStr << devName <::iterator it; + for (it=m_pVolumeControl->cardActiveProfileMap.begin();it!=m_pVolumeControl->cardActiveProfileMap.end();) { + if (it.key() == index) { + activeProfileName = it.value(); + break; + } + ++it; + } + return activeProfileName; +} + +/* + * Find the corresponding sink according to the port name + */ +QString UkmediaMainWidget::findPortSink(int cardIndex,QString portName) +{ + QMap>::iterator it; + QMap portNameMap; + QMap::iterator tempMap; + QString sinkStr = ""; + for (it=m_pVolumeControl->sinkPortMap.begin();it!=m_pVolumeControl->sinkPortMap.end();) { + if (it.key() == cardIndex) { + portNameMap = it.value(); + for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { + if (tempMap.value() == portName) { + sinkStr = tempMap.key(); + qDebug() <<"find port sink" << it.value() << portName<< it.key() <>::iterator it; + QMap portNameMap; + QMap::iterator tempMap; + QString sourceStr = ""; + for (it=m_pVolumeControl->sourcePortMap.begin();it!=m_pVolumeControl->sourcePortMap.end();) { + if (it.key() == cardIndex) { + portNameMap = it.value(); + for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { + if (tempMap.value() == portName) { + sourceStr = tempMap.key(); + qDebug() << "find port source" <defaultOutputCard,m_pVolumeControl->cardMap); + QString outputPortLabel = findOutputPortLabel(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->sinkPortName); + findOutputComboboxItem(outputCardName,outputPortLabel); + + int vol = m_pVolumeControl->getSinkVolume(); + m_pOutputWidget->m_pOpVolumeSlider->blockSignals(true); + m_pOutputWidget->m_pOpVolumeSlider->setValue(paVolumeToValue(vol)); + m_pOutputWidget->m_pOpVolumeSlider->blockSignals(false); + m_pOutputWidget->m_pOpVolumePercentLabel->setText(QString::number(paVolumeToValue(vol))+"%"); + + qDebug() <<"initComboboxItem(Output)" << m_pVolumeControl->defaultOutputCard << outputCardName + <sinkPortName << outputPortLabel; +} + +void UkmediaMainWidget::initInputComboboxItem() +{ + if (m_pVolumeControl->inputPortMap.count() == 1 && inputComboboxDeviceContainBluetooth()) { + int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); + if(index != -1){ + + } + else{ + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + qDebug() << "initInputComboboxItem" << "add none item"; + m_pInputWidget->m_pInputDeviceSelectBox->addItem(tr("None")); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + } + } + + QString inputCardName = findCardName(m_pVolumeControl->defaultInputCard,m_pVolumeControl->cardMap); + QString inputPortLabel = findInputPortLabel(m_pVolumeControl->defaultInputCard,m_pVolumeControl->sourcePortName); + findInputComboboxItem(inputCardName,inputPortLabel); + + qDebug() <<"initComboboxItem(Input)" << m_pVolumeControl->defaultInputCard << inputCardName + <sourcePortName << inputPortLabel; +} + +void UkmediaMainWidget::findOutputComboboxItem(QString cardName,QString portLabel) { + + for (int row=0;rowm_pDeviceSelectBox->count();row++) { + QString comboboxcardname = m_pOutputWidget->m_pDeviceSelectBox->itemData(row).toString(); + QString comboboxportname = m_pOutputWidget->m_pDeviceSelectBox->itemText(row); + if (comboboxcardname == cardName && comboboxportname == portLabel) { + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->setCurrentIndex(row); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + + break; + } + } +} + + +/* + * 当前的输出端口是否应该添加到Combobox output list widget上 + */ +bool UkmediaMainWidget::comboboxOutputPortIsNeedAdd(int index, QString name) +{ + QMap::iterator it; + for(it=currentCboxOutputPortLabelMap.begin();it!=currentCboxOutputPortLabelMap.end();) { + if (index == it.key() && name == it.value()) { + return false; + } + ++it; + } + return true; +} + + +/* + * 当前的输出端口是否应该在output list widget上删除 + */ +bool UkmediaMainWidget::comboboxOutputPortIsNeedDelete(int index, QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) + { + if (it.key() == index) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (name == at.value()) { + return false; + } + ++at; + } + } + ++it; + } + return true; +} + + +/* + * 添加可用的输出端口到ComBoBox output list widget + */ + +void UkmediaMainWidget::addComboboxAvailableOutputPort() +{ + QMap>::iterator at; + QMap::iterator it; + QMap tempMap; + + int i = m_pOutputWidget->m_pDeviceSelectBox->count(); + if (m_pVolumeControl->outputPortMap.count() == 0) { + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->addItem(tr("None")); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + } + else { + int index = m_pOutputWidget->m_pDeviceSelectBox->findText("None"); + if (index != -1){ + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->removeItem(index); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + } + for(at=m_pVolumeControl->outputPortMap.begin();at!=m_pVolumeControl->outputPortMap.end();) + { + tempMap = at.value(); + for (it=tempMap.begin();it!=tempMap.end();) + { + if (comboboxOutputPortIsNeedAdd(at.key(),it.value())) + { + currentCboxOutputPortLabelMap.insertMulti(at.key(),it.value()); + + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->insertItem(i,it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + } + ++it; + } + ++at; + } + } +} + + +/* + * 添加output port到Combobox output list widget + */ +void UkmediaMainWidget::addComboboxOutputListWidgetItem(QString portName, QString cardName) +{ + int i = m_pOutputWidget->m_pDeviceSelectBox->count(); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->insertItem(i,portName,cardName); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + +} + +//传进来一个portName用来定位他的位置 +int UkmediaMainWidget::indexOfOutputPortInOutputCombobox(QString portName) +{ + for (int row=0;rowm_pDeviceSelectBox->count();row++) + { + QString text = m_pOutputWidget->m_pDeviceSelectBox->itemText(row); + if (text == portName) + return row; + } + return -1; +} + + +/* + * 移除combobox output list widget上不可用的输出端口 + */ +void UkmediaMainWidget::deleteNotAvailableComboboxOutputPort() +{ + //删除不可用的输出端口 + QMap::iterator it; + + for(it=currentCboxOutputPortLabelMap.begin();it!=currentCboxOutputPortLabelMap.end();) { + //没找到,需要删除 + if (comboboxOutputPortIsNeedDelete(it.key(),it.value())) { + int index = indexOfOutputPortInOutputCombobox(it.value()); + if (index == -1) + return; + + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->removeItem(index); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + qDebug()<< "deleteNotAvailableComboboxOutputPort" <m_pInputDeviceSelectBox->count();row++) { + QString comboboxcardname = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); + QString comboboxportname = m_pInputWidget->m_pInputDeviceSelectBox->itemText(row); + if (comboboxcardname == cardName && comboboxportname == portLabel) { + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + m_pInputWidget->m_pInputDeviceSelectBox->setCurrentIndex(row); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + if (comboboxcardname.contains("bluez_card")) + isCheckBluetoothInput = true; + + break; + } + else if(comboboxportname == tr("None")) { + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + m_pInputWidget->m_pInputDeviceSelectBox->setCurrentIndex(row); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + } + } +} + +/* + * 添加输入端口到input combobox widget + */ +void UkmediaMainWidget::addComboboxInputListWidgetItem(QString portName, QString cardName) +{ + int i = m_pInputWidget->m_pInputDeviceSelectBox->count(); + qDebug() << "addComboboxInputListWidgetItem" << portName << cardName; + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + m_pInputWidget->m_pInputDeviceSelectBox->insertItem(i,portName,cardName); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + +} + + +/* + * 在input combobox list widget删除不可用的端口 + */ +void UkmediaMainWidget::deleteNotAvailableComboboxInputPort() +{ + //删除不可用的输入端口 + QMap::iterator it; + + for(it=currentCboxInputPortLabelMap.begin();it!=currentCboxInputPortLabelMap.end();) { + //没找到,需要删除 + if (comboboxInputPortIsNeedDelete(it.key(),it.value())) { + int index = indexOfInputPortInInputCombobox(it.value()); + if (index == -1) + return; + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + m_pInputWidget->m_pInputDeviceSelectBox->removeItem(index); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + + it = currentCboxInputPortLabelMap.erase(it); + continue; + } + ++it; + } +} + + +//传进来input portName用来定位他的位置 +int UkmediaMainWidget::indexOfInputPortInInputCombobox(QString portName) +{ + for (int index=0;indexm_pInputDeviceSelectBox->count();index++) + { + QString textport = m_pInputWidget->m_pInputDeviceSelectBox->itemText(index); + // QString textcard = m_pInputWidget->m_pInputDeviceSelectBox->itemData(index).toString(); + if (textport == portName ) + { + return index; + } + } + return -1; +} + + +/* + * 添加可用的输入端口到input list widget + */ +void UkmediaMainWidget::addComboboxAvailableInputPort() +{ + QMap>::iterator at; + QMap::iterator it; + QMap tempMap; + qDebug() << "addComboboxAvailableInputPort"<< m_pVolumeControl->inputPortMap.count() << m_pInputWidget->m_pInputDeviceSelectBox->currentText(); + int i = m_pInputWidget->m_pInputDeviceSelectBox->count(); + //增加端口 + for(at=m_pVolumeControl->inputPortMap.begin();at!=m_pVolumeControl->inputPortMap.end();) + { + tempMap = at.value(); + for (it=tempMap.begin();it!=tempMap.end();){ + if (comboboxInputPortIsNeedAdd(at.key(),it.value())){ + currentCboxInputPortLabelMap.insertMulti(at.key(),it.value()); + + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + m_pInputWidget->m_pInputDeviceSelectBox->insertItem(i,it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + } + ++it; + } + ++at; + } + if (m_pVolumeControl->inputPortMap.count() == 0 ||(m_pVolumeControl->inputPortMap.count() == 1 && inputComboboxDeviceContainBluetooth())) { + int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); + if(index != -1){ + } + else{ + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + qDebug() << "addComboboxAvailableInputPort" << "add None item"; + m_pInputWidget->m_pInputDeviceSelectBox->addItem(tr("None")); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + } + } + else if(m_pVolumeControl->inputPortMap.count() > 0){ + int index = m_pInputWidget->m_pInputDeviceSelectBox->findText(tr("None")); + if (index != -1) { + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + qDebug() << "addComboboxAvailableInputPort" << "remove None item"; + m_pInputWidget->m_pInputDeviceSelectBox->removeItem(index); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + } + } + +} + + +/* + * 当前的输入端口是否应该添加到Combobox input list widget上 + */ +bool UkmediaMainWidget::comboboxInputPortIsNeedAdd(int index, QString name) +{ + QMap::iterator it; + for(it=currentCboxInputPortLabelMap.begin();it!=currentCboxInputPortLabelMap.end();) { + if (index == it.key() && name == it.value()) + return false; + ++it; + } + return true; +} + + +/* + * 当前的输入端口是否应该在Combobox list上删除 + */ +bool UkmediaMainWidget::comboboxInputPortIsNeedDelete(int index, QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) + { + if (it.key() == index) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (name == at.value()) + return false; + ++at; + } + } + ++it; + } + if(name == tr("None")){ + return false; + } + return true; +} + + +/* + * 更新设备端口 +*/ +void UkmediaMainWidget::updateCboxDevicePort() +{ + QMap>::iterator it; + QMap::iterator at; + QMap temp; + currentCboxInputPortLabelMap.clear(); + currentCboxOutputPortLabelMap.clear(); + qDebug() << "updateCboxDevicePort---------------" ; +// if (m_pVolumeControl->inputPortMap.count() == 0) { +// m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); +// m_pInputWidget->m_pInputDeviceSelectBox->addItem(tr("None")); +// m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); +// } +// else { +// int index = m_pInputWidget->m_pInputDeviceSelectBox->findText("None"); +// if (index != -1) { +// m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); +// m_pInputWidget->m_pInputDeviceSelectBox->removeItem(index); +// m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); +// } +// } + + if (m_pVolumeControl->outputPortMap.count() == 0) { + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->addItem(tr("None")); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + } + else { + int index = m_pOutputWidget->m_pDeviceSelectBox->findText("None"); + if (index != -1){ + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->removeItem(index); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + } + } + + if (cboxfirstEntry == true) { + for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) + { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + qDebug() << "更新设备端口:" << cboxfirstEntry << it.key() << at.value(); + QString cardName = findCardName(it.key(),m_pVolumeControl->cardMap); + addComboboxOutputListWidgetItem(at.value(),cardName); + ++at; + } + ++it; + } + for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) + { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + qDebug() << "更新输入设备端口" << cboxfirstEntry << it.key() << at.value(); + QString cardName = findCardName(it.key(),m_pVolumeControl->cardMap); + addComboboxInputListWidgetItem(at.value(),cardName); + ++at; + } + ++it; + } + + } + else { + //记录上一次output label + for (int i=0;im_pDeviceSelectBox->count();i++) { + QMap::iterator at; + QString cardname = m_pOutputWidget->m_pDeviceSelectBox->itemData(i).toString(); + QString portname = m_pOutputWidget->m_pDeviceSelectBox->itemText(i); + int index=-1; + for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { + if (cardname == at.value()) { + index = at.key(); + break; + } + ++at; + } + currentCboxOutputPortLabelMap.insertMulti(index,portname); + +// qDebug() << index << "current cbox output item **" << cardname << portname; + } + + for(int i=0;im_pInputDeviceSelectBox->count();i++){ + QMap::iterator at; + QString cardname = m_pInputWidget->m_pInputDeviceSelectBox->itemData(i).toString(); + QString portname = m_pInputWidget->m_pInputDeviceSelectBox->itemText(i); + int index; + for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { + if (cardname == at.value()) { + index = at.key(); + break; + } + ++at; + } + currentCboxInputPortLabelMap.insertMulti(index,portname); + } + + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(true); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(true); + deleteNotAvailableComboboxOutputPort(); + addComboboxAvailableOutputPort(); + deleteNotAvailableComboboxInputPort(); + addComboboxAvailableInputPort(); + m_pOutputWidget->m_pDeviceSelectBox->blockSignals(false); + m_pInputWidget->m_pInputDeviceSelectBox->blockSignals(false); + } + if (m_pOutputWidget->m_pDeviceSelectBox->count() > 0 || m_pInputWidget->m_pInputDeviceSelectBox->count() ) { + + cboxfirstEntry = false; + } +} + + +/* + * Combobox选项改变,设置对应的输出设备 + */ +void UkmediaMainWidget::cboxoutputListWidgetCurrentRowChangedSlot(int row) +{ + //当所有可用的输出设备全部移除,台式机才会出现该情况 + if (row == -1) + return; + + QString outputComboboxPortName = m_pOutputWidget->m_pDeviceSelectBox->itemText(row); + QString outputComboboxCardName = m_pOutputWidget->m_pDeviceSelectBox->itemData(row).toString(); + + QString inputComboboxPortName = m_pInputWidget->m_pInputDeviceSelectBox->currentText(); + QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->currentData().toString(); + + bool isContainBlue = inputComboboxDeviceContainBluetooth(); + + + //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink + if (isContainBlue && (strstr(m_pVolumeControl->defaultSourceName,\ + "headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_sink"))){ + QString cardName = blueCardNameInCombobox(); + setCardProfile(cardName,"a2dp_sink"); + } + + QMap>::iterator outputProfileMap; + QMap>::iterator inputProfileMap; + QMap tempMap; + QMap::iterator at; + QString endOutputProfile = ""; + QString endInputProfile = ""; + int count,i; + int currentCardIndex = findCardIndex(outputComboboxCardName,m_pVolumeControl->cardMap); + + QStringList outputComboboxPortNameList = outputComboboxPortName.split("(");//新增设计combobox需要显示 端口名+(description); + QStringList inputComboboxPortNameList = inputComboboxPortName.split("("); + + for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { + if(currentCardIndex == outputProfileMap.key()){ + tempMap = outputProfileMap.value(); + for(at=tempMap.begin(),i=0;at!= tempMap.end();++i){ + if (at.key() == outputComboboxPortNameList.at(0)) { + count = i; + endOutputProfile = at.value(); + } + ++at; + } + } + ++outputProfileMap; + } + + if (m_pInputWidget->m_pInputDeviceSelectBox->currentText().size()!=0) { + QMap ::iterator it; + QMap temp; + int index = findCardIndex(inputComboboxCardName,m_pVolumeControl->cardMap); + for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin(),count=0;inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();count++) { + if (inputProfileMap.key() == index) { + temp = inputProfileMap.value(); + for(it = temp.begin(); it != temp.end();){ + if(it.key() == inputComboboxPortNameList.at(0)){ + endInputProfile = it.value(); + } + ++it; + } + } + ++inputProfileMap; + } + } + qDebug() << "outputListWidgetCurrentRowChangedSlot" << row << outputComboboxPortName << endOutputProfile <m_pInputDeviceSelectBox->currentText().size()!=0 && outputComboboxCardName == inputComboboxCardName ) || \ + outputComboboxCardName == "alsa_card.platform-sound_DA_combine_v5" && inputComboboxCardName == "3a.algo") { + + QString setProfile = endOutputProfile; + if (!endOutputProfile.contains("input:analog-stereo") || !endOutputProfile.contains("HiFi")) { + setProfile += "+"; + setProfile +=endInputProfile; + } + + setCardProfile(outputComboboxCardName,setProfile); + setDefaultOutputPortDevice(outputComboboxCardName,outputComboboxPortName); + } + //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 + else { + int index = findCardIndex(outputComboboxCardName,m_pVolumeControl->cardMap); + QMap >::iterator it; + QString profileName; + for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { + if (it.key() == index) { + if (strstr(endOutputProfile.toLatin1().data(),"headset_head_unit")) + endOutputProfile = "a2dp_sink"; + profileName = findHighPriorityProfile(index,endOutputProfile); + } + ++it; + } + + QString setProfile = profileName; + setCardProfile(outputComboboxCardName,setProfile); + setDefaultOutputPortDevice(outputComboboxCardName,outputComboboxPortName); + } + qDebug() << "active combobox output port:" << outputComboboxPortName << outputComboboxCardName; +} + + +void UkmediaMainWidget::cboxinputListWidgetCurrentRowChangedSlot(int row) +{ + if (row == -1) + return; + + QString inputComboboxPortName = m_pInputWidget->m_pInputDeviceSelectBox->itemText(row); + QString inputComboboxCardName = m_pInputWidget->m_pInputDeviceSelectBox->itemData(row).toString(); + + QString outputComboboxPortName = m_pOutputWidget->m_pDeviceSelectBox->currentText(); + QString outputComboboxCardName = m_pOutputWidget->m_pDeviceSelectBox->currentData().toString(); + + bool isContainBlue = inputComboboxDeviceContainBluetooth(); + + //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink + if (isContainBlue && (strstr(m_pVolumeControl->defaultSinkName,"headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_source"))) + { + QString cardName = blueCardNameInCombobox(); + setCardProfile(cardName,"a2dp_sink"); + } + + if(inputComboboxCardName.contains("bluez_card")) { + isCheckBluetoothInput = true; + } + else { + isCheckBluetoothInput = false; + if(inputComboboxPortName == tr("None")){ + qDebug() << "come Back Bluetooth A2dp Model"; + return ; + } + } + + QMap>::iterator inputProfileMap; + QMap>::iterator outputProfileMap; + QMap temp; + QMap::iterator at; + QString endOutputProfile = ""; + QString endInputProfile = ""; + int index = findCardIndex(inputComboboxCardName,m_pVolumeControl->cardMap); + QStringList outputComboboxPortNameList = outputComboboxPortName.split("(");//新增设计combobox需要显示 端口名+(description); + QStringList inputComboboxPortNameList = inputComboboxPortName.split("("); + for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin();inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();) { + if (inputProfileMap.key() == index) { + temp = inputProfileMap.value(); + for(at=temp.begin();at!=temp.end();){ + if(at.key() == inputComboboxPortNameList.at(0)){ + endInputProfile = at.value(); + } + ++at; + } + } + ++inputProfileMap; + } + if (m_pOutputWidget->m_pDeviceSelectBox->currentText().size()!=0) { + QMap ::iterator it; + QMap temp; + int index = findCardIndex(outputComboboxCardName,m_pVolumeControl->cardMap); + for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { + if (outputProfileMap.key() == index) { + temp = outputProfileMap.value(); + for(it=temp.begin();it!=temp.end();){ + if(it.key() == outputComboboxPortNameList.at(0)){ + endOutputProfile = it.value(); + } + ++it; + } + } + ++outputProfileMap; + } + } + //如果选择的输入输出设备为同一个声卡,则追加指定输入输出端口属于的配置文件 + if (m_pOutputWidget->m_pDeviceSelectBox->currentText().size()!=0 && inputComboboxCardName == outputComboboxCardName) { + QString setProfile; + //有些声卡的配置文件默认只有输入/输出设备或者配置文件包含了输出输入设备,因此只需要取其中一个配置文件即可 + if (endOutputProfile == "a2dp-sink" || endInputProfile == "headset_head_unit" || endOutputProfile == "HiFi" ) { + setProfile += endInputProfile; + } + else { + setProfile += endOutputProfile; + setProfile += "+"; + setProfile +=endInputProfile; + } + setCardProfile(inputComboboxCardName,setProfile); + setDefaultInputPortDevice(inputComboboxCardName,inputComboboxPortName); + } + //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 + else { + int index = findCardIndex(inputComboboxCardName,m_pVolumeControl->cardMap); + QMap >::iterator it; + QString profileName; + for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { + + if (it.key() == index) { + QStringList list= it.value(); + profileName = findHighPriorityProfile(index,endInputProfile); + if (list.contains(endOutputProfile)) { + + } + } + ++it; + } + QString setProfile = profileName; + setCardProfile(inputComboboxCardName,setProfile); + setDefaultInputPortDevice(inputComboboxCardName,inputComboboxPortName); + } + qDebug() << "active combobox input port:" << inputComboboxPortName << inputComboboxCardName<< isCheckBluetoothInput; +} + + +void UkmediaMainWidget::updateComboboxListWidgetItemSlot() { + qDebug() << "updateComboboxListWidgetItemSlot"; + initOutputComboboxItem(); + initInputComboboxItem(); + themeChangeIcons(); +} diff --git a/audio/ukmedia_main_widget.h b/audio/ukmedia_main_widget.h new file mode 100644 index 0000000..ffbe392 --- /dev/null +++ b/audio/ukmedia_main_widget.h @@ -0,0 +1,299 @@ + +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef WIDGET_H +#define WIDGET_H + +#include +#include "ukmedia_volume_control.h" +#include "ukmedia_output_widget.h" +#include "ukmedia_input_widget.h" +#include "ukmedia_sound_effects_widget.h" +#include "ukui_list_widget_item.h" +#include +#include +#include +#include +#include +#include +#include +#include +extern "C" { +#include +#include +#include +#include +#include +#include +#include +#include +} +#include +#include +#include +#include +#include +#include +#include +#include + +#define UKUI_THEME_SETTING "org.ukui.style" +#define UKUI_THEME_NAME "style-name" +#define UKUI_THEME_WHITE "ukui-white" +#define UKUI_THEME_BLACK "ukui-black" + +#define UKUI_INPUT_REAR_MIC "analog-input-rear-mic" //后置麦克风 +#define UKUI_INPUT_FRONT_MIC "analog-input-front-mic" //前置麦克风 +#define UKUI_OUTPUT_HEADPH "analog-output-headphones" //模拟耳机 + +#define KEYBINDINGS_CUSTOM_SCHEMA "org.ukui.media.sound" +#define KEYBINDINGS_CUSTOM_DIR "/org/ukui/sound/keybindings/" +#define MAX_CUSTOM_SHORTCUTS 1000 +#define FILENAME_KEY "filename" +#define NAME_KEY "name" + +#define KEY_SOUNDS_SCHEMA "org.ukui.sound" +#define UKUI_SWITCH_SETTING "org.ukui.session" +#define UKUI_STARTUP_MUSIC_KEY "startup-music" +#define UKUI_POWEROFF_MUSIC_KEY "poweroff-music" +#define UKUI_LOGOUT_MUSIC_KEY "logout-music" +#define UKUI_WAKEUP_MUSIC_KEY "weakup-music" + +#define EVENT_SOUNDS_KEY "event-sounds" +#define INPUT_SOUNDS_KEY "input-feedback-sounds" +#define SOUND_THEME_KEY "theme-name" + +#define DEFAULT_ALERT_ID "__default" +#define CUSTOM_THEME_NAME "__custom" +#define NO_SOUNDS_THEME_NAME "__no_sounds" + +#define PA_VOLUME_NORMAL 65536.0 +#define UKMEDIA_VOLUME_NORMAL 100.0 + +#ifdef __GNUC__ +#define CA_CLAMP(x, low, high) \ + __extension__ ({ typeof(x) _x = (x); \ + typeof(low) _low = (low); \ + typeof(high) _high = (high); \ + ((_x > _high) ? _high : ((_x < _low) ? _low : _x)); \ + }) +#else +#define CA_CLAMP(x, low, high) (((x) > (high)) ? (high) : (((x) < (low)) ? (low) : (x))) +#endif + +typedef enum +{ + GVC_LEVEL_SCALE_LINEAR, + GVC_LEVEL_SCALE_LOG +} LevelScale; + + +class UkmediaMainWidget : public QWidget +{ + Q_OBJECT + +public: + UkmediaMainWidget(QWidget *parent = nullptr); + ~UkmediaMainWidget(); + + void initWidget(); //初始化界面 + void initGsettings(); //初始化gsetting值 + void dealSlot(); //处理槽函数 + int valueToPaVolume(int value); //滑动条值转换成音量 + int paVolumeToValue(int value); //音量值转换成滑动条值 + void themeChangeIcons(); + static int connectContext(gpointer userdata); + static int caProplistMergeAp(ca_proplist *p, va_list ap); + static int caPlayForWidget(UkmediaMainWidget *w, uint32_t id, ...); + static int caProplistSetForWidget(ca_proplist *p, UkmediaMainWidget *widget); + + QPixmap drawDarkColoredPixmap(const QPixmap &source); + QPixmap drawLightColoredPixmap(const QPixmap &source); + + void inputVolumeDarkThemeImage(int value,bool status); + void outputVolumeDarkThemeImage(int value,bool status); + int getInputVolume(); + int getOutputVolume(); + void comboboxCurrentTextInit(); + QList listExistsPath(); + QString findFreePath(); + void addValue(QString name,QString filename); + + static void onKeyChanged (GSettings *settings,gchar *key,UkmediaMainWidget *w); + static void updateTheme (UkmediaMainWidget *w); + + static void setupThemeSelector (UkmediaMainWidget *w); + static void soundThemeInDir (UkmediaMainWidget *w,GHashTable *hash,const char *dir); + static char *loadIndexThemeName (const char *index,char **parent); + + static void setComboxForThemeName (UkmediaMainWidget *w,const char *name); + static void updateAlertsFromThemeName (UkmediaMainWidget *w,const gchar *name); + static void updateAlert (UkmediaMainWidget *w,const char *alert_id); + static int getFileType (const char *sound_name,char **linked_name); + static char *customThemeDirPath (const char *child); + + static void populateModelFromDir (UkmediaMainWidget *w,const char *dirname); + static void populateModelFromFile (UkmediaMainWidget *w,const char *filename); + static void populateModelFromNode (UkmediaMainWidget *w,xmlNodePtr node); + static xmlChar *xmlGetAndTrimNames (xmlNodePtr node); + + static void playAlretSoundFromPath (UkmediaMainWidget *w,QString path); + + static gboolean saveAlertSounds (QComboBox *combox,const char *id); + static void deleteOldFiles (const char **sounds); + static void deleteOneFile (const char *sound_name, const char *pattern); + static void deleteDisabledFiles (const char **sounds); + static void addCustomFile (const char **sounds, const char *filename); + static gboolean cappletFileDeleteRecursive (GFile *file, GError **error); + static gboolean directoryDeleteRecursive (GFile *directory, GError **error); + static void createCustomTheme (const char *parent); + static void customThemeUpdateTime (void); + static gboolean customThemeDirIsEmpty (void); + + + //TEST输出 + void initOutputComboboxItem();//初始化输出的Combobox选项框 + void initInputComboboxItem();//初始化输入的Combobox选项框 + void findOutputComboboxItem(QString cardName,QString portLabel); //初始化Combobox output/input list widget的选项 + + void addComboboxAvailableOutputPort(); + void addComboboxOutputListWidgetItem(QString portName, QString cardName); + void deleteNotAvailableComboboxOutputPort();//删除不可用的端口 + int indexOfOutputPortInOutputCombobox(QString portName); + bool comboboxOutputPortIsNeedAdd(int index,QString name);//port是否需要在Combobox list中添加 + bool comboboxOutputPortIsNeedDelete(int index,QString name);//port是否需要在Combobox list删除 + + void findInputComboboxItem(QString cardName,QString portLabel); //初始化Combobox output/input list widget的选项 + void addComboboxAvailableInputPort(); + void addComboboxInputListWidgetItem(QString portName, QString cardName); //添加input listwidget item + void deleteNotAvailableComboboxInputPort(); + int indexOfInputPortInInputCombobox(QString portName);//获取输入combobox当前的选项框的index + bool comboboxInputPortIsNeedAdd(int index,QString name);//port是否需要在Combobox list中添加 + bool comboboxInputPortIsNeedDelete(int index,QString name);//port是否需要在Combobox list删除 + int findCardIndex(QString cardName, QMap cardMap);//查找声卡指定的索引 + + QString findCardName(int index,QMap cardMap); + QString findHighPriorityProfile(int index,QString profile); + QString findPortSink(int cardIndex,QString portName); + QString findPortSource(int cardIndex,QString portName); + + bool inputComboboxDeviceContainBluetooth(); + QString blueCardNameInCombobox();//记录蓝牙声卡名称 + + void inputStreamMapCardName(QString streamName,QString cardName); + void outputStreamMapCardName(QString streamName,QString cardName); + QString findInputStreamCardName(QString streamName); + QString findOutputStreamCardName(QString streamName); + + bool exitBluetoochDevice(); + + QString findOutputPortName(int index,QString portLabel); //找到outputPortLabel对应的portName + QString findInputPortName(int index,QString portLabel); //找到inputPortLabel对应的portName + QString findOutputPortLabel(int index,QString portName); //查找名为portName对应的portLabel + QString findInputPortLabel(int index,QString portName); //查找名为portName对应的portLabel + void setCardProfile(QString name,QString profile); //设置声卡的配置文件 + void setDefaultOutputPortDevice(QString devName,QString portName); //设置默认的输出端口 + void setDefaultInputPortDevice(QString devName,QString portName); //设置默认的输入端口 + QString findCardActiveProfile(int index); //查找声卡的active profile + +private Q_SLOTS: + + void initVoulmeSlider(); //初始化音量滑动条的值 + void themeComboxIndexChangedSlot(int index); //主题下拉框改变 + void comboxIndexChangedSlot(int index); + void outputWidgetSliderChangedSlot(int v); //输出音量改变 + void inputWidgetSliderChangedSlot(int v); //输入滑动条更改 + void inputMuteButtonSlot(); //输入音量静音控制 + void outputMuteButtonSlot(); //输出音量静音控制 + void balanceSliderChangedSlot(int v); //平衡值改变 + void peakVolumeChangedSlot(double v); //输入等级 + void updateCboxDevicePort(); //更新combobox设备端口 + void updateComboboxListWidgetItemSlot(); + + void timeSliderSlot(); + void ukuiThemeChangedSlot(const QString &); + void startupButtonSwitchChangedSlot(bool status); //开机音乐开关 + void poweroffButtonSwitchChangedSlot(bool status); //关机音乐开关 + void logoutMusicButtonSwitchChangedSlot(bool status); //注销音乐开关 + void wakeButtonSwitchChangedSlot(bool status); //唤醒音乐开关 + void alertSoundButtonSwitchChangedSlot(bool status); + void bootMusicSettingsChanged(); + + void windowClosedComboboxChangedSlot(int index); + void volumeChangedComboboxChangeSlot(int index); + void settingMenuComboboxChangedSlot(int index); + + void cboxoutputListWidgetCurrentRowChangedSlot(int row);//combobox output list widget选项改变 + void cboxinputListWidgetCurrentRowChangedSlot(int row);//combobox input list widget选项改变 + + +private: + UkmediaInputWidget *m_pInputWidget; + UkmediaOutputWidget *m_pOutputWidget; + UkmediaSoundEffectsWidget *m_pSoundWidget; + UkmediaVolumeControl *m_pVolumeControl; + + QStringList *m_pSoundList; + QStringList *m_pThemeDisplayNameList; + QStringList *m_pThemeNameList; + QStringList *m_pSoundThemeList; + QStringList *m_pSoundThemeDirList; + QStringList *m_pSoundThemeXmlNameList; + QStringList *m_pSoundNameList; + QStringList *eventList; + QStringList *eventIdNameList; + + GSettings *m_pSoundSettings; + QGSettings *m_pBootSetting; + QGSettings *m_pThemeSetting; +// QGSettings *m_pWindowClosedSetting; + QString mThemeName; + bool m_hasMusic; + bool firstEnterSystem = true; + + const gchar* m_privOutputPortLabel = ""; + + int callBackCount = 0; + bool firstEntry = true; + + bool cboxfirstEntry = true; + QMap currentOutputPortLabelMap; + QMap currentInputPortLabelMap; + QMap inputCardStreamMap; + QMap outputCardStreamMap; + QMap currentCboxOutputPortLabelMap; + QMap currentCboxInputPortLabelMap; + + + bool updatePort = true; + bool setDefaultstream = true; + int reconnectTime; + QTimer *time; + + QTimer *timeSlider; + bool mousePress = false; + bool mouseReleaseState = false; + + QTimer *timeSliderBlance; + bool mousePressBlance = false; + bool mouseReleaseStateBlance = false; +}; + +#endif // WIDGET_H diff --git a/audio/ukmedia_output_widget.cpp b/audio/ukmedia_output_widget.cpp new file mode 100644 index 0000000..5c8e07d --- /dev/null +++ b/audio/ukmedia_output_widget.cpp @@ -0,0 +1,190 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "ukmedia_output_widget.h" +#include "ukui_list_widget_item.h" +#include +#include +AudioSlider::AudioSlider(QWidget *parent) +{ + Q_UNUSED(parent); +} + +AudioSlider::~AudioSlider() +{ + +} + +UkmediaOutputWidget::UkmediaOutputWidget(QWidget *parent) : QWidget(parent) +{ + //加载qss样式文件 + QFile QssFile("://combox.qss"); + QssFile.open(QFile::ReadOnly); + + if (QssFile.isOpen()){ + sliderQss = QLatin1String(QssFile.readAll()); + QssFile.close(); + } else { + qDebug()<<"combox.qss is not found"<setFrameShape(QFrame::Shape::Box); + m_pMasterVolumeWidget->setFrameShape(QFrame::Shape::Box); + m_pChannelBalanceWidget->setFrameShape(QFrame::Shape::Box); + m_pOutputSlectWidget->setFrameShape(QFrame::Shape::Box); + + //设置大小 + m_pOutputWidget->setMinimumSize(550,0); + m_pOutputWidget->setMaximumSize(16777215,180); + m_pMasterVolumeWidget->setMinimumSize(550,60); + m_pMasterVolumeWidget->setMaximumSize(16777215,60); + m_pChannelBalanceWidget->setMinimumSize(550,60); + m_pChannelBalanceWidget->setMaximumSize(16777215,60); + m_pOutputSlectWidget->setMinimumSize(550,60); + m_pOutputSlectWidget->setMaximumSize(16777215,60); + + m_pOutputLabel = new TitleLabel(this); + //~ contents_path /Audio/Output + m_pOutputLabel->setText(tr("Output")); + m_pOutputLabel->setStyleSheet("QLabel{color: palette(windowText);}"); + + //~ contents_path /Audio/Output Device + m_pOutputDeviceLabel = new QLabel(tr("Output Device"),m_pOutputSlectWidget); + m_pDeviceSelectBox = new QComboBox(m_pOutputSlectWidget); + //~ contents_path /Audio/Master Volume + m_pOpVolumeLabel = new QLabel(tr("Master Volume"),m_pMasterVolumeWidget); + m_pOutputIconBtn = new UkuiButtonDrawSvg(m_pMasterVolumeWidget); + m_pOpVolumeSlider = new AudioSlider(m_pMasterVolumeWidget); + m_pOpVolumePercentLabel = new QLabel(m_pMasterVolumeWidget); + //~ contents_path /Audio/Balance + m_pOpBalanceLabel = new QLabel(tr("Balance"),m_pChannelBalanceWidget); + m_pLeftBalanceLabel = new QLabel(tr("Left"),m_pChannelBalanceWidget); + m_pOpBalanceSlider = new UkmediaVolumeSlider(m_pChannelBalanceWidget,true); + m_pRightBalanceLabel = new QLabel(tr("Right"),m_pChannelBalanceWidget); + + m_pOpVolumeSlider->setOrientation(Qt::Horizontal); + m_pOpBalanceSlider->setOrientation(Qt::Horizontal); + m_pOpVolumeSlider->setRange(0,100); + m_pOutputIconBtn->setFocusPolicy(Qt::NoFocus); + + + //选择输出设备框添加布局 + m_pOutputDeviceLabel->setFixedSize(140,20); + m_pDeviceSelectBox->setFixedHeight(40); + QHBoxLayout *deviceSlectLayout = new QHBoxLayout(); + deviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + deviceSlectLayout->addWidget(m_pOutputDeviceLabel); + deviceSlectLayout->addItem(new QSpacerItem(93,20,QSizePolicy::Fixed)); + deviceSlectLayout->addWidget(m_pDeviceSelectBox); + deviceSlectLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + deviceSlectLayout->setSpacing(0); + m_pOutputSlectWidget->setLayout(deviceSlectLayout); + m_pOutputSlectWidget->layout()->setContentsMargins(0,0,0,0); + + //主音量添加布局 + QHBoxLayout *masterLayout = new QHBoxLayout(m_pMasterVolumeWidget); + m_pOpVolumeLabel->setFixedSize(140,20); + m_pOutputIconBtn->setFixedSize(24,24); + m_pOpVolumeSlider->setFixedHeight(55); + m_pOpVolumePercentLabel->setFixedSize(55,20); + m_pOpVolumePercentLabel->setAlignment(Qt::AlignCenter); + masterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + masterLayout->addWidget(m_pOpVolumeLabel); + masterLayout->addItem(new QSpacerItem(93,20,QSizePolicy::Fixed)); + masterLayout->addWidget(m_pOutputIconBtn); + masterLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + masterLayout->addWidget(m_pOpVolumeSlider); + masterLayout->addItem(new QSpacerItem(14,20,QSizePolicy::Fixed)); + masterLayout->addWidget(m_pOpVolumePercentLabel); + masterLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Fixed)); + masterLayout->setSpacing(0); + m_pMasterVolumeWidget->setLayout(masterLayout); + m_pMasterVolumeWidget->layout()->setContentsMargins(0,0,0,0); + + //声道平衡添加布局 + QHBoxLayout *soundLayout = new QHBoxLayout(m_pChannelBalanceWidget); + m_pOpBalanceLabel->setFixedSize(110,20); + m_pLeftBalanceLabel->setFixedSize(40,30); + m_pOpBalanceSlider->setFixedHeight(55); + m_pRightBalanceLabel->setFixedSize(55,30); + m_pRightBalanceLabel->setAlignment(Qt::AlignCenter); + + + soundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + soundLayout->addWidget(m_pOpBalanceLabel); + soundLayout->addItem(new QSpacerItem(123,20,QSizePolicy::Fixed)); + soundLayout->addWidget(m_pLeftBalanceLabel); +// soundLayout->addItem(new QSpacerItem(26,20,QSizePolicy::Fixed)); + soundLayout->addWidget(m_pOpBalanceSlider); + soundLayout->addItem(new QSpacerItem(14,20,QSizePolicy::Fixed)); + soundLayout->addWidget(m_pRightBalanceLabel); + soundLayout->addItem(new QSpacerItem(10,20,QSizePolicy::Fixed)); + soundLayout->setSpacing(0); + m_pChannelBalanceWidget->setLayout(soundLayout); + m_pChannelBalanceWidget->layout()->setContentsMargins(0,0,0,0); + + QFrame *outputselectAndVolume = myLine(); + QFrame *volumeAndBalance = myLine(); + + //进行整体布局 + m_pVlayout = new QVBoxLayout(m_pOutputWidget); + m_pVlayout->setContentsMargins(0,0,0,0); + m_pVlayout->addWidget(m_pOutputSlectWidget); + m_pVlayout->addWidget(outputselectAndVolume); + m_pVlayout->addWidget(m_pMasterVolumeWidget); + m_pVlayout->addWidget(volumeAndBalance); + m_pVlayout->addWidget(m_pChannelBalanceWidget); + m_pVlayout->setSpacing(0); +// m_pOutputWidget->setLayout(m_pVlayout); +// m_pOutputWidget->layout()->setContentsMargins(0,0,0,0); + + QVBoxLayout *vLayout1 = new QVBoxLayout(this); + vLayout1->addWidget(m_pOutputLabel); + vLayout1->addItem(new QSpacerItem(16,4,QSizePolicy::Fixed)); + vLayout1->addWidget(m_pOutputWidget); + this->setLayout(vLayout1); + this->layout()->setContentsMargins(0,0,0,0); + + m_pMasterVolumeWidget->setObjectName("masterVolumeWidget"); + //设置样式 + m_pOutputLabel->setObjectName("m_pOutputLabel"); + +} + +QFrame* UkmediaOutputWidget::myLine() +{ + QFrame *line = new QFrame(this); + line->setMinimumSize(QSize(0, 1)); + line->setMaximumSize(QSize(16777215, 1)); + line->setLineWidth(0); + line->setFrameShape(QFrame::HLine); + line->setFrameShadow(QFrame::Sunken); + + return line; +} + +UkmediaOutputWidget::~UkmediaOutputWidget() +{ + +} diff --git a/audio/ukmedia_output_widget.h b/audio/ukmedia_output_widget.h new file mode 100644 index 0000000..97d140c --- /dev/null +++ b/audio/ukmedia_output_widget.h @@ -0,0 +1,136 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef UKMEDIAOUTPUTWIDGET_H +#define UKMEDIAOUTPUTWIDGET_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ukui_custom_style.h" +#include "ukui_list_widget_item.h" +#include "customstyle.h" +#include +#include + +class AudioSlider : public QSlider +{ + Q_OBJECT +public: + AudioSlider(QWidget *parent = nullptr); + ~AudioSlider(); + friend class UkmediaInputWidget; + +Q_SIGNALS: + void silderPressSignal(); + void silderReleaseSignal(); + +protected: + void mousePressEvent(QMouseEvent *ev) + { + //注意应先调用父类的鼠标点击处理事件,这样可以不影响拖动的情况 + + //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) + int value = 0; + int currentX = ev->pos().x(); + double per = currentX * 1.0 / this->width(); + if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { + value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); + } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { + value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); + } else { + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + } + } else { + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + } + this->setValue(value); + QSlider::mousePressEvent(ev); + //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 + QEvent evEvent(static_cast(QEvent::User + 1)); + QCoreApplication::sendEvent(parentWidget(), &evEvent); + } + void mouseReleaseEvent(QMouseEvent *ev) + { + if(mousePress){ + Q_EMIT silderReleaseSignal(); + } + mousePress = false; + mouseClickFlag = true; + QSlider::mouseReleaseEvent(ev); + } + void wheelEvent(QWheelEvent* ev) + { + if(mouseClickFlag) + QSlider::wheelEvent(ev); + } + void leaveEvent(QEvent *ev) + { + mouseClickFlag = false; + QSlider::leaveEvent(ev); + } +private: + bool mousePress = false; + bool mouseClickFlag = false; +}; + +class UkmediaOutputWidget : public QWidget +{ + Q_OBJECT +public: + explicit UkmediaOutputWidget(QWidget *parent = nullptr); + ~UkmediaOutputWidget(); + friend class UkmediaMainWidget; +Q_SIGNALS: + +public Q_SLOTS: + +private: + QFrame* myLine(); + QFrame *m_pOutputWidget; + QFrame *m_pMasterVolumeWidget; + QFrame *m_pChannelBalanceWidget; + + TitleLabel *m_pOutputLabel; + QLabel *m_pOutputDeviceLabel; + QLabel *m_pOpVolumeLabel; + QLabel *m_pOpVolumePercentLabel; + QLabel *m_pOpBalanceLabel; + QLabel *m_pLeftBalanceLabel; + QLabel *m_pRightBalanceLabel; + + QComboBox *m_pDeviceSelectBox; + QFrame *m_pOutputSlectWidget; + + UkuiButtonDrawSvg *m_pOutputIconBtn; + AudioSlider *m_pOpVolumeSlider; + UkmediaVolumeSlider *m_pOpBalanceSlider; + QVBoxLayout *m_pVlayout; + QString sliderQss; +}; + +#endif // UKMEDIAOUTPUTWIDGET_H diff --git a/audio/ukmedia_slider_tip_label_helper.cpp b/audio/ukmedia_slider_tip_label_helper.cpp new file mode 100644 index 0000000..a20c534 --- /dev/null +++ b/audio/ukmedia_slider_tip_label_helper.cpp @@ -0,0 +1,168 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ukui_custom_style.h" + +MediaSliderTipLabel::MediaSliderTipLabel(){ + setAttribute(Qt::WA_TranslucentBackground); +} + +MediaSliderTipLabel::~MediaSliderTipLabel(){ +} + +void MediaSliderTipLabel::paintEvent(QPaintEvent *e) +{ + QStyleOptionFrame opt; + initStyleOption(&opt); + QStylePainter p(this); +// p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); + p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x33))); + p.setPen(Qt::NoPen); + p.drawRoundedRect(this->rect(), 1, 1); + QPainterPath path; + path.addRoundedRect(opt.rect,6,6); + p.setRenderHint(QPainter::Antialiasing); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); + this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); + QLabel::paintEvent(e); +} + +SliderTipLabelHelper::SliderTipLabelHelper(QObject *parent) :QObject(parent) +{ + m_pTiplabel = new MediaSliderTipLabel(); + m_pTiplabel->setWindowFlags(Qt::ToolTip); + qApp->installEventFilter(new AppEventFilter(this)); + m_pTiplabel->setFixedSize(52,30); + m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); +} + +void SliderTipLabelHelper::registerWidget(QWidget *w) +{ + w->removeEventFilter(this); + w->installEventFilter(this); +} + +void SliderTipLabelHelper::unregisterWidget(QWidget *w) +{ + w->removeEventFilter(this); +} + +bool SliderTipLabelHelper::eventFilter(QObject *obj, QEvent *e) +{ + auto slider = qobject_cast(obj); + if (obj == slider) { + switch (e->type()) { + case QEvent::MouseMove: { + QMouseEvent *event = static_cast(e); + mouseMoveEvent(obj, event); + return false; + } + case QEvent::MouseButtonRelease: { + QMouseEvent *event = static_cast(e); + mouseReleaseEvent(obj, event); + return false; + } + case QEvent::MouseButtonPress:{ + QMouseEvent *event = static_cast(e); + mousePressedEvent(obj,event); + } + + default: + return false; + } + } + return QObject::eventFilter(obj,e); +} + + +void SliderTipLabelHelper::mouseMoveEvent(QObject *obj, QMouseEvent *e) +{ + Q_UNUSED(e); + QRect rect; + QStyleOptionSlider m_option; + auto slider = qobject_cast(obj); + slider->initStyleOption(&m_option); + rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); + QPoint gPos = slider->mapToGlobal(rect.topLeft()); + QString percent; + percent = QString::number(slider->value()); + percent.append("%"); + m_pTiplabel->setText(percent); + m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); + m_pTiplabel->show(); +} + +void SliderTipLabelHelper::mouseReleaseEvent(QObject *obj, QMouseEvent *e) +{ + Q_UNUSED(obj); + Q_UNUSED(e); + m_pTiplabel->hide(); +} + +void SliderTipLabelHelper::mousePressedEvent(QObject *obj, QMouseEvent *e) +{ + Q_UNUSED(e); + QStyleOptionSlider m_option; + auto slider = qobject_cast(obj); + QRect rect; + //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) + double pos = e->pos().x() / (double)slider->width(); + slider->setValue(pos *(slider->maximum() - slider->minimum()) + slider->minimum()); + //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 + QEvent evEvent(static_cast(QEvent::User + 1)); + QCoreApplication::sendEvent(obj, &evEvent); + int value = pos *(slider->maximum() - slider->minimum()) + slider->minimum(); + + slider->initStyleOption(&m_option); + rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); + QPoint gPos = slider->mapToGlobal(rect.topLeft()); + QString percent; + + percent = QString::number(slider->value());//(m_option.sliderValue); + percent.append("%"); + + m_pTiplabel->setText(percent); + m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); + m_pTiplabel->show(); +} + +// AppEventFilter +AppEventFilter::AppEventFilter(SliderTipLabelHelper *parent) : QObject(parent) +{ + m_wm = parent; +} + +bool AppEventFilter::eventFilter(QObject *obj, QEvent *e) +{ + Q_UNUSED(obj); + Q_UNUSED(e); + return false; +} + diff --git a/audio/ukmedia_slider_tip_label_helper.h b/audio/ukmedia_slider_tip_label_helper.h new file mode 100644 index 0000000..09e0cbc --- /dev/null +++ b/audio/ukmedia_slider_tip_label_helper.h @@ -0,0 +1,65 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include "ukui_custom_style.h" + +class MediaSliderTipLabel:public QLabel +{ + public: + MediaSliderTipLabel(); + ~MediaSliderTipLabel(); +protected: + void paintEvent(QPaintEvent*); +}; + +class SliderTipLabelHelper : public QObject +{ + Q_OBJECT + friend class AppEventFilter; +public: + SliderTipLabelHelper(QObject *parent = nullptr); + ~SliderTipLabelHelper() {} + void registerWidget(QWidget *w); + void unregisterWidget(QWidget *w); + bool eventFilter(QObject *obj, QEvent *e); + + void mouseMoveEvent(QObject *obj, QMouseEvent *e); + void mouseReleaseEvent(QObject *obj, QMouseEvent *e); + void mousePressedEvent(QObject *obj,QMouseEvent *e); +private: + MediaSliderTipLabel *m_pTiplabel; +}; + +class AppEventFilter : public QObject +{ + friend class SliderTipLabelHelper; + Q_OBJECT +private: + explicit AppEventFilter(SliderTipLabelHelper *parent); + ~AppEventFilter() {} + + bool eventFilter(QObject *obj, QEvent *e); + + SliderTipLabelHelper *m_wm = nullptr; +}; + +#endif // SLIDERTIPLABELHELPER_H diff --git a/audio/ukmedia_sound_effects_widget.cpp b/audio/ukmedia_sound_effects_widget.cpp new file mode 100644 index 0000000..1cf2b35 --- /dev/null +++ b/audio/ukmedia_sound_effects_widget.cpp @@ -0,0 +1,282 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "ukmedia_sound_effects_widget.h" +#include +#include +#include +#include + +UkuiMessageBox::UkuiMessageBox() +{ +} + +UkmediaSoundEffectsWidget::UkmediaSoundEffectsWidget(QWidget *parent) : QWidget(parent) +{ + m_pSystemSoundWidget = new QFrame(this); + m_pStartupMusicWidget = new QFrame(m_pSystemSoundWidget); + m_pPoweroffMusicWidget = new QFrame(m_pSystemSoundWidget); + m_pLagoutWidget = new QFrame(m_pSystemSoundWidget); + m_pWakeupMusicWidget = new QFrame(m_pSystemSoundWidget); + + m_pAlertSoundFrame = new QFrame(this); + m_pAlertSoundSwitchWidget = new QFrame(m_pAlertSoundFrame); + m_pThemeWidget = new QFrame(m_pAlertSoundSwitchWidget); + m_pAlertSoundWidget = new QFrame(m_pAlertSoundSwitchWidget); + m_pVolumeChangeWidget = new QFrame(m_pAlertSoundSwitchWidget); + + m_pSystemSoundWidget->setFrameShape(QFrame::Shape::Box); + m_pStartupMusicWidget->setFrameShape(QFrame::Shape::Box); + m_pPoweroffMusicWidget->setFrameShape(QFrame::Shape::Box); + m_pLagoutWidget->setFrameShape(QFrame::Shape::Box); + m_pWakeupMusicWidget->setFrameShape(QFrame::Shape::Box); + + m_pAlertSoundFrame->setFrameShape(QFrame::Shape::Box); + m_pAlertSoundSwitchWidget->setFrameShape(QFrame::Shape::Box); + m_pThemeWidget->setFrameShape(QFrame::Shape::Box); + m_pAlertSoundWidget->setFrameShape(QFrame::Shape::Box); + m_pVolumeChangeWidget->setFrameShape(QFrame::Shape::Box); + + //~ contents_path /Audio/System Sound 系统音效文本框 + m_pSoundEffectLabel = new TitleLabel(this); + m_pSoundEffectLabel->setText(tr("System Sound")); + m_pSoundEffectLabel->setStyleSheet("QLabel{color: palette(windowText);}"); + //~ contents_path /Audio/Sound Theme + m_pSoundThemeLabel = new QLabel(tr("Sound Theme"),m_pThemeWidget);//提示音下的系统音效主题 + m_pSoundThemeCombobox = new QComboBox(m_pThemeWidget); + //~ contents_path /Audio/Alert Sound + m_pShutdownlabel = new QLabel(tr("Alert Sound"),m_pAlertSoundWidget);//提示音下的通知提示 + m_pAlertSoundCombobox = new QComboBox(m_pAlertSoundWidget); + //~ contents_path /Audio/Beep Switch + m_pAlertSoundSwitchLabel = new QLabel(tr("Beep Switch"),m_pAlertSoundSwitchWidget);//提示音 + //~ contents_path /Audio/Poweroff Music + m_pPoweroffMusicLabel = new QLabel(tr("Poweroff Music"),m_pPoweroffMusicWidget);//关机 + //~ contents_path /Audio/Startup Music + m_pStartupMusicLabel = new QLabel(tr("Startup Music"),m_pStartupMusicWidget);//开机 + //~ contents_path /Audio/Wakeup Music + m_pWakeupMusicLabel = new QLabel(tr("Wakeup Music"),m_pWakeupMusicWidget);//唤醒 + //~ contents_path /Audio/Volume Change + m_pVolumeChangeLabel = new QLabel(tr("Volume Change"),m_pVolumeChangeWidget);//音量调节 + //~ contents_path /Audio/Logout Music + m_pLagoutLabel = new QLabel(tr("Logout Music"),m_pLagoutWidget);//注销 + + m_pLagoutCombobox = new QComboBox(m_pLagoutWidget); + m_pStartupButton = new SwitchButton(m_pStartupMusicWidget); + m_pLogoutButton = new SwitchButton(m_pLagoutWidget); + m_pWakeupMusicButton = new SwitchButton(m_pWakeupMusicWidget); + m_pPoweroffButton = new SwitchButton(m_pPoweroffMusicWidget); + m_pVolumeChangeCombobox = new QComboBox(m_pVolumeChangeWidget); + m_pAlertSoundSwitchButton = new SwitchButton(m_pAlertSoundSwitchWidget); + + //设置大小 + m_pSystemSoundWidget->setMinimumSize(550,0); + m_pSystemSoundWidget->setMaximumSize(16777215,240); + m_pStartupMusicWidget->setMinimumSize(550,60); + m_pStartupMusicWidget->setMaximumSize(16777215,60); + m_pPoweroffMusicWidget->setMinimumSize(550,60); + m_pPoweroffMusicWidget->setMaximumSize(16777215,60); + m_pLagoutWidget->setMinimumSize(550,60); + m_pLagoutWidget->setMaximumSize(16777215,60); + m_pWakeupMusicWidget->setMinimumSize(550,60); + m_pWakeupMusicWidget->setMaximumSize(16777215,60); + + m_pAlertSoundWidget->setMinimumSize(550,0); + m_pAlertSoundWidget->setMaximumSize(16777215,240); + m_pAlertSoundSwitchWidget->setMinimumSize(550,60); + m_pAlertSoundSwitchWidget->setMaximumSize(16777215,60); + m_pThemeWidget->setMinimumSize(550,60); + m_pThemeWidget->setMaximumSize(16777215,60); + m_pAlertSoundWidget->setMinimumSize(550,60); + m_pAlertSoundWidget->setMaximumSize(16777215,60); + m_pVolumeChangeWidget->setMinimumSize(550,60); + m_pVolumeChangeWidget->setMaximumSize(16777215,60); + + m_pSoundEffectLabel->setFixedSize(150,32); + m_pSoundThemeLabel->setFixedSize(150,40); + m_pShutdownlabel->setFixedSize(120,40); +// m_pLagoutLabel->setFixedSize(150,32); +// m_pWakeupMusicLabel->setFixedSize(150,32); + m_pVolumeChangeLabel->setFixedSize(150,40); + m_pPoweroffMusicLabel->setFixedSize(150,32); + +// m_pSoundThemeCombobox->setMinimumSize(50,32); +// m_pSoundThemeCombobox->setMaximumSize(900,32); + +// m_pAlertSoundCombobox->setMinimumSize(50,32); +// m_pAlertSoundCombobox->setMaximumSize(900,32); +// m_pLagoutCombobox->setMinimumSize(50,32); +// m_pLagoutCombobox->setMaximumSize(900,32); + +// m_pVolumeChangeCombobox->setMinimumSize(50,32); +// m_pVolumeChangeCombobox->setMaximumSize(900,32); + + m_pSoundThemeCombobox->setFixedHeight(40); + m_pAlertSoundCombobox->setFixedHeight(40); + m_pVolumeChangeCombobox->setFixedHeight(40); + + //添加布局 + QHBoxLayout *themeLayout = new QHBoxLayout(m_pThemeWidget); + themeLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + themeLayout->addWidget(m_pSoundThemeLabel); + themeLayout->addItem(new QSpacerItem(83,20,QSizePolicy::Fixed)); + themeLayout->addWidget(m_pSoundThemeCombobox); + themeLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + themeLayout->setSpacing(0); + m_pThemeWidget->setLayout(themeLayout); + m_pThemeWidget->layout()->setContentsMargins(0,0,0,0); + + QHBoxLayout *AlertLayout = new QHBoxLayout(m_pAlertSoundWidget); + AlertLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + AlertLayout->addWidget(m_pShutdownlabel); + AlertLayout->addItem(new QSpacerItem(113,20,QSizePolicy::Fixed)); + AlertLayout->addWidget(m_pAlertSoundCombobox); + AlertLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + AlertLayout->setSpacing(0); + m_pAlertSoundWidget->setLayout(AlertLayout); + m_pAlertSoundWidget->layout()->setContentsMargins(0,0,0,0); + + //开机音乐设置开关 + QHBoxLayout *startupLayout = new QHBoxLayout(m_pStartupMusicWidget); + startupLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + startupLayout->addWidget(m_pStartupMusicLabel); + startupLayout->addWidget(m_pStartupButton); + startupLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + startupLayout->setSpacing(0); + m_pStartupMusicWidget->setLayout(startupLayout); + m_pStartupMusicWidget->layout()->setContentsMargins(0,0,0,0); + + //注销提示音布局 + QHBoxLayout *lagoutLayout = new QHBoxLayout(m_pLagoutWidget); + lagoutLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + lagoutLayout->addWidget(m_pLagoutLabel); +// lagoutLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); + lagoutLayout->addWidget(m_pLogoutButton); + lagoutLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + lagoutLayout->setSpacing(0); + m_pLagoutWidget->setLayout(lagoutLayout); + m_pLagoutWidget->layout()->setContentsMargins(0,0,0,0); + m_pLagoutCombobox->setVisible(false); + + //提示音开关布局 + QHBoxLayout *alertSoundLayout = new QHBoxLayout(m_pAlertSoundSwitchWidget); + alertSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + alertSoundLayout->addWidget(m_pAlertSoundSwitchLabel); + alertSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); + alertSoundLayout->addWidget(m_pAlertSoundSwitchButton); + alertSoundLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + alertSoundLayout->setSpacing(0); + m_pAlertSoundSwitchWidget->setLayout(alertSoundLayout); + m_pAlertSoundSwitchWidget->layout()->setContentsMargins(0,0,0,0); + + //窗口关闭提示音 + QHBoxLayout *wakeupMusicLayout = new QHBoxLayout(m_pWakeupMusicWidget); + wakeupMusicLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + wakeupMusicLayout->addWidget(m_pWakeupMusicLabel); +// wakeupMusicLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + wakeupMusicLayout->addWidget(m_pWakeupMusicButton); + wakeupMusicLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + wakeupMusicLayout->setSpacing(0); + m_pWakeupMusicWidget->setLayout(wakeupMusicLayout); + m_pWakeupMusicWidget->layout()->setContentsMargins(0,0,0,0); + + //音量改变提示音 + QHBoxLayout *volumeChangedLayout = new QHBoxLayout(m_pVolumeChangeWidget); + volumeChangedLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + volumeChangedLayout->addWidget(m_pVolumeChangeLabel); + volumeChangedLayout->addItem(new QSpacerItem(83,20,QSizePolicy::Fixed)); + volumeChangedLayout->addWidget(m_pVolumeChangeCombobox); + volumeChangedLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + volumeChangedLayout->setSpacing(0); + m_pVolumeChangeWidget->setLayout(volumeChangedLayout); + m_pVolumeChangeWidget->layout()->setContentsMargins(0,0,0,0); + //关机提示音 + QHBoxLayout *poweroffLayout = new QHBoxLayout(m_pPoweroffMusicWidget); + poweroffLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + poweroffLayout->addWidget(m_pPoweroffMusicLabel); + poweroffLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Expanding)); + poweroffLayout->addWidget(m_pPoweroffButton); + poweroffLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Fixed)); + poweroffLayout->setSpacing(0); + m_pPoweroffMusicWidget->setLayout(poweroffLayout); + m_pPoweroffMusicWidget->layout()->setContentsMargins(0,0,0,0); + + QFrame *startupAndPoweroff = myLine(); + QFrame *poweroffAndLagout = myLine(); + QFrame *lagoutAndWakeup = myLine(); + line1 = myLine(); + line2 = myLine(); + line3 = myLine(); + + QVBoxLayout *systemSoundLayout = new QVBoxLayout(m_pSystemSoundWidget); + systemSoundLayout->setContentsMargins(0,0,0,0); + systemSoundLayout->addWidget(m_pStartupMusicWidget); + systemSoundLayout->addWidget(startupAndPoweroff); + systemSoundLayout->addWidget(m_pPoweroffMusicWidget); + systemSoundLayout->addWidget(poweroffAndLagout); + systemSoundLayout->addWidget(m_pLagoutWidget); + systemSoundLayout->addWidget(lagoutAndWakeup); + systemSoundLayout->addWidget(m_pWakeupMusicWidget); + systemSoundLayout->setSpacing(0); + m_pSystemSoundWidget->setLayout(systemSoundLayout); + + QVBoxLayout *SoundLayout = new QVBoxLayout(m_pAlertSoundFrame); + SoundLayout->setContentsMargins(0,0,0,0); + SoundLayout->addWidget(m_pAlertSoundSwitchWidget); + SoundLayout->addWidget(line1); + SoundLayout->addWidget(m_pThemeWidget); + SoundLayout->addWidget(line2); + SoundLayout->addWidget(m_pVolumeChangeWidget); + SoundLayout->addWidget(line3); + SoundLayout->addWidget(m_pAlertSoundWidget); + SoundLayout->setSpacing(0); + m_pAlertSoundFrame->setLayout(SoundLayout); + + //进行整体布局 + m_pSoundLayout = new QVBoxLayout(this); + m_pSoundLayout->addWidget(m_pSoundEffectLabel); + m_pSoundLayout->addItem(new QSpacerItem(16,4,QSizePolicy::Fixed)); + m_pSoundLayout->addWidget(m_pSystemSoundWidget); + m_pSoundLayout->addItem(new QSpacerItem(16,8,QSizePolicy::Fixed)); + m_pSoundLayout->addWidget(m_pAlertSoundFrame); + +// m_pAlertSoundWidget->hide(); +// m_pVolumeChangeWidget->hide(); +// m_pThemeWidget->hide(); + + this->setLayout(m_pSoundLayout); + m_pSoundLayout->setSpacing(0); + this->layout()->setContentsMargins(0,0,0,0); +} + +QFrame* UkmediaSoundEffectsWidget::myLine() +{ + QFrame *line = new QFrame(this); + line->setMinimumSize(QSize(0, 1)); + line->setMaximumSize(QSize(16777215, 1)); + line->setLineWidth(0); + line->setFrameShape(QFrame::HLine); + line->setFrameShadow(QFrame::Sunken); + + return line; +} + +UkmediaSoundEffectsWidget::~UkmediaSoundEffectsWidget() +{ + +} diff --git a/audio/ukmedia_sound_effects_widget.h b/audio/ukmedia_sound_effects_widget.h new file mode 100644 index 0000000..256359f --- /dev/null +++ b/audio/ukmedia_sound_effects_widget.h @@ -0,0 +1,95 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#ifndef UKMEDIASOUNDEFFECTSWIDGET_H +#define UKMEDIASOUNDEFFECTSWIDGET_H + +#include +#include +#include +#include +#include +#include +#include "ukui_custom_style.h" +#include "switchbutton.h" + +class UkuiMessageBox : public QMessageBox +{ +public: + explicit UkuiMessageBox(); +}; + +class UkmediaSoundEffectsWidget : public QWidget +{ + Q_OBJECT +public: + explicit UkmediaSoundEffectsWidget(QWidget *parent = nullptr); + ~UkmediaSoundEffectsWidget(); + friend class UkmediaMainWidget; +Q_SIGNALS: + +public Q_SLOTS: + +private: + QFrame *myLine(); + QFrame *m_pSystemSoundWidget;//存放注销、唤醒、开机、关机提示音的窗口 + QFrame *m_pLagoutWidget;//注销提示音窗口 + QFrame *m_pWakeupMusicWidget;//唤醒音乐窗口 + QFrame *m_pStartupMusicWidget;//设置开机音乐窗口 + QFrame *m_pPoweroffMusicWidget;//关机提示音 + + QFrame *m_pAlertSoundFrame;//存放注销、唤醒、开机、关机提示音的窗口 + QFrame *m_pAlertSoundSwitchWidget;//提示音开关窗口 + QFrame *m_pThemeWidget;//提示音下的系统音效主题 + QFrame *m_pAlertSoundWidget;//提示音下的通知提示 + QFrame *m_pVolumeChangeWidget;//提示音下的音量调节 + QFrame *line1; + QFrame *line2; + QFrame *line3; + + + QString qss; + QStyledItemDelegate *itemDelegate; + TitleLabel *m_pSoundEffectLabel; + QLabel *m_pSoundThemeLabel; + QLabel *m_pShutdownlabel; + QLabel *m_pLagoutLabel; + QLabel *m_pAlertSoundSwitchLabel; +// QLabel *m_pAlertSoundLabel; +// QLabel *m_pAlertVolumeLabel; + QLabel *m_pWakeupMusicLabel; + QLabel *m_pVolumeChangeLabel; + QLabel *m_pPoweroffMusicLabel; + QLabel *m_pStartupMusicLabel; + + QComboBox *m_pSoundThemeCombobox; + QComboBox *m_pAlertSoundCombobox; + QComboBox *m_pLagoutCombobox; + QComboBox *m_pVolumeChangeCombobox; + QVBoxLayout *m_pSoundLayout; + SwitchButton *m_pStartupButton; + SwitchButton *m_pPoweroffButton; + SwitchButton *m_pLogoutButton; + SwitchButton *m_pAlertSoundSwitchButton; + SwitchButton *m_pWakeupMusicButton; +// UkmediaVolumeSlider *m_pAlertSlider; +// UkuiButtonDrawSvg *m_pAlertIconBtn; +}; + +#endif // UKMEDIASOUNDEFFECTSWIDGET_H diff --git a/audio/ukmedia_volume_control.cpp b/audio/ukmedia_volume_control.cpp new file mode 100644 index 0000000..f212b99 --- /dev/null +++ b/audio/ukmedia_volume_control.cpp @@ -0,0 +1,2145 @@ +#include "ukmedia_volume_control.h" +#ifdef HAVE_CONFIG_H +#include +#endif + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +//pa_sink_info *m_pDefaultSink; +/* Used for profile sorting */ + +int reconnect_timeout; +struct profile_prio_compare { + bool operator() (pa_card_profile_info2 const * const lhs, pa_card_profile_info2 const * const rhs) const { + + if (lhs->priority == rhs->priority) + return strcmp(lhs->name, rhs->name) > 0; + + return lhs->priority > rhs->priority; + } +}; + +struct sink_port_prio_compare { + bool operator() (const pa_sink_port_info& lhs, const pa_sink_port_info& rhs) const { + + if (lhs.priority == rhs.priority) + return strcmp(lhs.name, rhs.name) > 0; + + return lhs.priority > rhs.priority; + } +}; + +struct source_port_prio_compare { + bool operator() (const pa_source_port_info& lhs, const pa_source_port_info& rhs) const { + + if (lhs.priority == rhs.priority) + return strcmp(lhs.name, rhs.name) > 0; + + return lhs.priority > rhs.priority; + } +}; + +UkmediaVolumeControl::UkmediaVolumeControl(): + canRenameDevices(false), + m_connected(false), + m_config_filename(nullptr) { + + profileNameMap.clear(); + connectToPulse(this); +} + +/* + * 设置输出设备静音 + */ +bool UkmediaVolumeControl::setSinkMute(bool status) +{ + pa_operation* o; + + if (!(o = pa_context_set_sink_mute_by_index(getContext(), sinkIndex, status, nullptr, nullptr))) { + showError(tr("pa_context_set_sink_volume_by_index() failed").toUtf8().constData()); + return false; + } + return true; +} + +/* + * 设置输出设备音量 + */ +bool UkmediaVolumeControl::setSinkVolume(int index,int value) +{ + pa_cvolume v = m_pDefaultSink->volume; + v.channels = channel; + + for (int i=0;ivolume; + v.channels = inputChannel; + + for (int i=0;ivolume; + v.channels = channel; + + for (int i=0;ivolume; + v.channels = sinkInputChannel; + for (int i=0;ivolume; + v.channels = sourceOutputChannel; + for (int i=0;i= 13) { + pa_operation* o; + qDebug() <<"killall source output index from setDefaultSource" << peakDetectIndex; + if (!(o = pa_context_kill_source_output(getContext(), peakDetectIndex, nullptr, nullptr))) + showError(tr("pa_context_set_default_source() failed").toUtf8().constData()); + if (sourceOutputVector.count()) + sourceOutputVector.removeAt(0); + sourceOutputVector.append(sourceIndex); + peak = createMonitorStreamForSource(sourceIndex, -1, !!(sourceFlags & PA_SOURCE_NETWORK)); + } + }); + + return true; +} + +/* + * 设置输出设备的端口 + */ +bool UkmediaVolumeControl::setSinkPort(const gchar *sinkName, const gchar *portName) +{ + qDebug() << "setSinkPort" << sinkName << portName; + pa_operation* o; + if (!(o = pa_context_set_sink_port_by_name(getContext(), sinkName, portName, nullptr, nullptr))) { + showError(tr("pa_context_set_sink_port_by_name() failed").toUtf8().constData()); + return false; + } + return true; +} + +/* + * 设置输入设备端口 + */ +bool UkmediaVolumeControl::setSourcePort(const gchar *sourceName, const gchar *portName) +{ + qDebug() << "setSourcePort" << sourceName << portName; + pa_operation* o; + if (!(o = pa_context_set_source_port_by_name(getContext(), sourceName, portName, nullptr, nullptr))) { + showError(tr("pa_context_set_source_port_by_name() failed").toUtf8().constData()); + return false; + } + return true; +} + +UkmediaVolumeControl::~UkmediaVolumeControl() { + + while (!clientNames.empty()) { + auto i = clientNames.begin(); + g_free(i->second); + clientNames.erase(i); + } +} + +static void updatePorts(UkmediaVolumeControl *d, std::map &ports) { + std::map::iterator it; + PortInfo p; + for (auto & port : d->dPorts) { + QByteArray desc; + it = ports.find(port.first); + + if (it == ports.end()) + continue; + + p = it->second; + desc = p.description; + + if (p.available == PA_PORT_AVAILABLE_YES) + desc += UkmediaVolumeControl::tr(" (plugged in)").toUtf8().constData(); + else if (p.available == PA_PORT_AVAILABLE_NO) { + if (p.name == "analog-output-speaker" || + p.name == "analog-input-microphone-internal") + desc += UkmediaVolumeControl::tr(" (unavailable)").toUtf8().constData(); + else + desc += UkmediaVolumeControl::tr(" (unplugged)").toUtf8().constData(); + } + + port.second = desc; + qDebug() << "updatePorts" << p.name << p.description; + } + + Q_EMIT d->updatePortSignal(); + it = ports.find(d->activePort); + + if (it != ports.end()) { + p = it->second; +// d->setLatencyOffset(p.latency_offset); + } +} + +static void setIconByName(QLabel* label, const char* name) { + QIcon icon = QIcon::fromTheme(name); + int size = label->style()->pixelMetric(QStyle::PM_ToolBarIconSize); + QPixmap pix = icon.pixmap(size, size); + label->setPixmap(pix); +} + +void UkmediaVolumeControl::updateCard(UkmediaVolumeControl *c, const pa_card_info &info) { + bool insertInputPort = false; + bool insertOutputPort = false; + bool is_new = false; + const char *description; + QMap tempInput; + QMap tempOutput; + QList profileName; + QMapportMap; + QMap outputPortNameLabelMap; + QMapinputPortNameLabelMap; + QMap profilePriorityMap; + std::set profile_priorities; + + description = pa_proplist_gets(info.proplist, PA_PROP_DEVICE_DESCRIPTION);//获取device.description字符串 + + hasSinks = c->hasSources = false; + profile_priorities.clear(); + for (pa_card_profile_info2 ** p_profile = info.profiles2; *p_profile != nullptr; ++p_profile) { + // c->hasSinks = c->hasSinks || ((*p_profile)->n_sinks > 0); + // c->hasSources = c->hasSources || ((*p_profile)->n_sources > 0); + profile_priorities.insert(*p_profile); + profileName.append((*p_profile)->name); + profilePriorityMap.insertMulti((*p_profile)->name,(*p_profile)->priority); + } + // cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); + QList> cardProfilePriorityMapList; + if(cardProfilePriorityMap.isEmpty()) + cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); + + cardProfilePriorityMapList = cardProfilePriorityMap.values(); + if(!cardProfilePriorityMapList.contains(profilePriorityMap)) + cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); + + c->ports.clear(); + for (uint32_t i = 0; i < info.n_ports; ++i) { + PortInfo p; + + p.name = info.ports[i]->name; + p.description = info.ports[i]->description; + p.priority = info.ports[i]->priority; + p.available = info.ports[i]->available; + p.direction = info.ports[i]->direction; + p.latency_offset = info.ports[i]->latency_offset; + if (info.ports[i]->profiles2) + for (pa_card_profile_info2 ** p_profile = info.ports[i]->profiles2; *p_profile != nullptr; ++p_profile) { + p.profiles.push_back((*p_profile)->name); + } + if (p.direction == 1 && p.available != PA_PORT_AVAILABLE_NO) { + // portMap.insertMulti(p.name,p.description.data()); + insertOutputPort = true; + + //新增UI设计,combobox显示portname+description + QString outputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) + QString outputPortName_and_description = outputPortName + "(" + description + ")"; + + qDebug() << "add sink port name "<< info.index << p.name << p.description.data() << description ; + tempOutput.insertMulti(p.name,outputPortName_and_description); + + QList portProfileName; + for (auto p_profile : p.profiles) { + portProfileName.append(p_profile.data()); + outputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); + qDebug() << "ctf profilename map insert -----------" << p.description.data() << p_profile.data(); + } + profileNameMap.insert(info.index,outputPortNameLabelMap); + cardProfileMap.insert(info.index,portProfileName); + } + else if (p.direction == 2 && p.available != PA_PORT_AVAILABLE_NO){ + insertInputPort = true; + + //新增UI设计,combobox显示portname+description + QString inputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) + QString inputPortName_and_description = inputPortName + "(" + description + ")"; + + + qDebug() << "add source port name "<< info.index << p.name << p.description.data(); + tempInput.insertMulti(p.name,inputPortName_and_description); + for (auto p_profile : p.profiles) { + inputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); + } + inputPortProfileNameMap.insert(info.index,inputPortNameLabelMap); + } + c->ports[p.name] = p; + } + if (insertInputPort) { + inputPortMap.insert(info.index,tempInput); + } + else { + inputPortMap.remove(info.index); + } + if (insertOutputPort) { + outputPortMap.insert(info.index,tempOutput); + } + else { + outputPortMap.remove(info.index); + } + cardActiveProfileMap.insert(info.index,info.active_profile->name); + + c->profiles.clear(); + for (auto p_profile : profile_priorities) { + bool hasNo = false, hasOther = false; + std::map::iterator portIt; + QByteArray desc = p_profile->description; + + for (portIt = c->ports.begin(); portIt != c->ports.end(); portIt++) { + PortInfo port = portIt->second; + + if (std::find(port.profiles.begin(), port.profiles.end(), p_profile->name) == port.profiles.end()) + continue; + + if (port.available == PA_PORT_AVAILABLE_NO) + hasNo = true; + else { + hasOther = true; + break; + } + } + if (hasNo && !hasOther) + desc += tr(" (unplugged)").toUtf8().constData(); + + if (!p_profile->available) + desc += tr(" (unavailable)").toUtf8().constData(); + + c->profiles.push_back(std::pair(p_profile->name, desc)); + if (p_profile->n_sinks == 0 && p_profile->n_sources == 0) + c->noInOutProfile = p_profile->name; + } + c->activeProfile = info.active_profile ? info.active_profile->name : ""; + + /* Because the port info for sinks and sources is discontinued we need + * to update the port info for them here. */ + updatePorts(c,c->ports); + if (is_new) + updateDeviceVisibility(); + + Q_EMIT checkDeviceSelectionSianal(&info); + // c->updating = false; +} + +/* + * Update output device when the default output device or port is updated + */ +bool UkmediaVolumeControl::updateSink(UkmediaVolumeControl *w,const pa_sink_info &info) { + bool is_new = false; + m_defaultSinkVolume = info.volume; + QMaptemp; + int volume; + if (info.volume.channels >= 2) + volume = MAX(info.volume.values[0],info.volume.values[1]); + else + volume = info.volume.values[0]; + + //默认的输出音量 + if (info.name && strcmp(defaultSinkName.data(),info.name) == 0) { + //channel和sinkIndex在此处必须更新 + channel = info.volume.channels; + sinkIndex= info.index; + balance = pa_cvolume_get_balance(&info.volume,&info.channel_map); + defaultChannelMap = info.channel_map; + channelMap = info.channel_map; + if (info.active_port) { + sinkActivePortMap.insert(info.name,info.active_port->name);//huawei特殊处理 + if(strcmp(sinkPortName.toLatin1().data(),info.active_port->name) != 0){ + sinkPortName = info.active_port->name; + //QTimer::singleShot(100,this,SLOT(timeoutSlot())); + } + else + sinkPortName = info.active_port->name; + } + defaultOutputCard = info.card; +/* + bug:96232、95568、95523 解决 hw-panguw 机型,找不到对于sinkPortName导致音量无法同步、静音按钮只能按一次等问题 +*/ + QString temp = ""; + if (sinkPortName.contains("histen-algo",Qt::CaseInsensitive)) { + sinkPortName = findSinkActivePortName(PANGUW_SINK); + temp = "histen-algo"; + } + if (sinkVolume != volume || sinkMuted != info.mute) + { + if(temp != "") + sinkPortName = temp; + + sinkVolume = volume; + sinkMuted = info.mute; + Q_EMIT updateVolume(sinkVolume,sinkMuted); + } + + } + + if (info.ports) { + for (pa_sink_port_info ** sinkPort = info.ports; *sinkPort != nullptr; ++sinkPort) { + temp.insertMulti(info.name,(*sinkPort)->name); + } + QList > sinkPortMapList; + if(sinkPortMap.isEmpty()) + sinkPortMap.insertMulti(info.card,temp); + sinkPortMapList = sinkPortMap.values(); + + if(!sinkPortMapList.contains(temp)) + sinkPortMap.insertMulti(info.card,temp); + + qDebug() << "updateSink" << "defauleSinkName:" << defaultSinkName.data() << "sinkport" << sinkPortName << "sinkVolume" << sinkVolume ; + + const char *icon; + // std::map::iterator cw; + std::set port_priorities; + + + port_priorities.clear(); + for (uint32_t i=0; iports.clear(); + } + if (is_new) + updateDeviceVisibility(); + return is_new; +} + +QString UkmediaVolumeControl::findSinkActivePortName(QString name) +{ + QString portName = ""; + QMap::iterator at; + for (at=sinkActivePortMap.begin();at!=sinkActivePortMap.end();++at) { + if (at.key() == name) { + portName = at.value(); + break; + } + } + return portName; +} + +QString UkmediaVolumeControl::stringRemoveUnrecignizedChar(QString str) { + str.remove(" "); + str.remove("/"); + str.remove("("); + str.remove(")"); + str.remove("["); + str.remove("]"); + return str; +} + + +/* + * stream suspend callback + */ +static void suspended_callback(pa_stream *s, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (pa_stream_is_suspended(s)) + w->updateVolumeMeter(pa_stream_get_device_index(s), PA_INVALID_INDEX, -1); +} + +void UkmediaVolumeControl::readCallback(pa_stream *s, size_t length, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + const void *data; + double v; + int index; + + index = pa_stream_get_device_index(s); + QString deviceName = pa_stream_get_device_name(s); + QString sourceName = w->defaultSourceName; + + if(strcmp(deviceName.toLatin1().data(),sourceName.toLatin1().data()) == 0) { + if (pa_stream_peek(s, &data, &length) < 0) { + w->showError(UkmediaVolumeControl::tr("Failed to read data from stream").toUtf8().constData()); + return; + } + } + else { + return; + } + + if (!data) { + /* nullptr data means either a hole or empty buffer. + * Only drop the stream when there is a hole (length > 0) */ + if (length) + pa_stream_drop(s); + return; + } + + assert(length > 0); + assert(length % sizeof(float) == 0); + + v = ((const float*) data)[length / sizeof(float) -1]; + + pa_stream_drop(s); + + if (v < 0) + v = 0; + if (v > 1) + v = 1; +// qDebug() << "readCallback" << index << w->sourceIndex; + if(/*index == w->sourceIndex && */strcmp(deviceName.toLatin1().data(),sourceName.toLatin1().data()) == 0 && !strstr(deviceName.toLatin1().data(),"monitor")) { + w->updateVolumeMeter(index,pa_stream_get_monitor_stream(s),v); + } +} + +pa_stream* UkmediaVolumeControl::createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx = -1, bool suspend = false) { + pa_stream *s; + char t[16]; + pa_buffer_attr attr; + pa_sample_spec ss; + pa_stream_flags_t flags; + + ss.channels = 1; + ss.format = PA_SAMPLE_FLOAT32; + ss.rate = 25; + + memset(&attr, 0, sizeof(attr)); + attr.fragsize = sizeof(float); + attr.maxlength = (uint32_t) -1; + + snprintf(t, sizeof(t), "%u", source_idx); + m_pPaContext = getContext(); + if (!(s = pa_stream_new(getContext(), tr("Peak detect").toUtf8().constData(), &ss, nullptr))) { + showError(tr("Failed to create monitoring stream").toUtf8().constData()); + return nullptr; + } + + if (stream_idx != (uint32_t) -1) + pa_stream_set_monitor_stream(s, stream_idx); + + pa_stream_set_read_callback(s, readCallback, this); + pa_stream_set_suspended_callback(s, suspended_callback, this); + + flags = (pa_stream_flags_t) (PA_STREAM_DONT_MOVE | PA_STREAM_PEAK_DETECT | PA_STREAM_ADJUST_LATENCY | + (suspend ? PA_STREAM_DONT_INHIBIT_AUTO_SUSPEND : PA_STREAM_NOFLAGS) /*| + (!showVolumeMetersCheckButton->isChecked() ? PA_STREAM_START_CORKED : PA_STREAM_NOFLAGS)*/); + + if (pa_stream_connect_record(s, t, &attr, flags) < 0) { + showError(tr("Failed to connect monitoring stream").toUtf8().constData()); + pa_stream_unref(s); + return nullptr; + } + return s; +} + + +void UkmediaVolumeControl::updateSource(const pa_source_info &info) { + bool is_new = false; + int volume; + if (info.volume.channels >= 2) + volume = MAX(info.volume.values[0],info.volume.values[1]); + else + volume = info.volume.values[0]; + + //默认的输出音量 + if (info.name && strcmp(defaultSourceName.data(),info.name) == 0) { + //sourceIndex和inputChannel必须在此处刷新 + sourceIndex = info.index; + inputChannel = info.volume.channels; + if (info.active_port) { + if(strcmp(sourcePortName.toLatin1().data(),info.active_port->name) != 0) { + sourcePortName = info.active_port->name; + QTimer::singleShot(100,this,SLOT(timeoutSlot())); + } + else + sourcePortName = info.active_port->name; + } + defaultInputCard = info.card; + if (sourceVolume != volume || sourceMuted != info.mute) { + sourceVolume = volume; + sourceMuted = info.mute; + Q_EMIT updateSourceVolume(sourceVolume,sourceMuted); + } + } + if (info.index == sourceIndex && !strstr(info.name,".monitor") && !sourceOutputVector.contains(info.index) && pa_context_get_server_protocol_version(getContext()) >= 13) { + sourceFlags = info.flags; + qDebug() << "createMonitorStreamForSource" <temp; + + if(info.ports) { + for (pa_source_port_info ** sourcePort = info.ports; *sourcePort != nullptr; ++sourcePort) { + temp.insertMulti(info.name,(*sourcePort)->name); + } + QList> sourcePortMapList; + if(sourcePortMap.isEmpty()) + sourcePortMap.insertMulti(info.card,temp); + sourcePortMapList = sourcePortMap.values(); + if(!sourcePortMapList.contains(temp)){ + sourcePortMap.insertMulti(info.card,temp); + } + qDebug() << "update Source" << "defauleSourceName:" << defaultSourceName.data() << "sinkport" << sourcePortName << "sourceVolume" << sourceVolume ; + } + + if (is_new) + updateDeviceVisibility(); +} + + +void UkmediaVolumeControl::setIconFromProplist(QLabel *icon, pa_proplist *l, const char *def) { + const char *t; + + if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ICON_NAME))) + goto finish; + + if ((t = pa_proplist_gets(l, PA_PROP_WINDOW_ICON_NAME))) + goto finish; + + if ((t = pa_proplist_gets(l, PA_PROP_APPLICATION_ICON_NAME))) + goto finish; + + if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ROLE))) { + + if (t && strcmp(t, "video") == 0 || + strcmp(t, "phone") == 0) + goto finish; + + if (strcmp(t, "music") == 0) { + t = "audio"; + goto finish; + } + + if (strcmp(t, "game") == 0) { + t = "applications-games"; + goto finish; + } + + if (strcmp(t, "event") == 0) { + t = "dialog-information"; + goto finish; + } + } + + t = def; + +finish: + + setIconByName(icon, t); +} + + +void UkmediaVolumeControl::updateSinkInput(const pa_sink_input_info &info) { + sinkInputChannel = info.volume.channels; + const char *t; + if ((t = pa_proplist_gets(info.proplist, "module-stream-restore.id"))) { + if (t && strcmp(t, "sink-input-by-media-role:event") == 0) { + g_debug("%s", tr("Ignoring sink-input due to it being designated as an event and thus handled by the Event widget").toUtf8().constData()); + return; + } + } + const gchar *description = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_NAME); + const gchar *appId = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID); + //没制定应用名称的不加入到应用音量中 + if (description && !strstr(description,"QtPulseAudio")) { + if (!info.corked) { + + sinkInputMap.insert(description,info.volume.values[0]); + if (!sinkInputList.contains(description)) { + sinkInputList.append(description); + Q_EMIT addSinkInputSignal(description,appId,info.index); + } + } + else { + Q_EMIT removeSinkInputSignal(description); + sinkInputList.removeAll(description); + QMap::iterator it; + for(it = sinkInputMap.begin();it!=sinkInputMap.end();) + { + if(it.key() == description) + { + sinkInputMap.erase(it); + break; + } + ++it; + } + } + } +} + +void UkmediaVolumeControl::updateSourceOutput(const pa_source_output_info &info) { + sourceOutputChannel = info.volume.channels; + const char *app; + // bool is_new = false; + + if(info.name && strstr(info.name,"Peak detect") && !sourceOutputVector.contains(info.source)) { + pa_operation* o; + qDebug() <<"killall source output index====" <::iterator it; + for(it = sourceOutputMap.begin();it!=sourceOutputMap.end();) + { + if(it.key() == description) + { + sourceOutputMap.erase(it); + break; + } + ++it; + } + } + } +} + +void UkmediaVolumeControl::updateClient(const pa_client_info &info) { + g_free(clientNames[info.index]); + clientNames[info.index] = g_strdup(info.name); +} + +void UkmediaVolumeControl::updateServer(const pa_server_info &info) { + m_pServerInfo = &info; + defaultSourceName = info.default_source_name ? info.default_source_name : ""; + defaultSinkName = info.default_sink_name ? info.default_sink_name : ""; + qDebug() << "updateServer" << "default_sink:" << info.default_sink_name << "default_source:" << info.default_source_name; + +} + +void UkmediaVolumeControl::updateVolumeMeter(uint32_t index, uint32_t sinkInputIdx, double v) +{ + Q_UNUSED(index); + Q_UNUSED(sinkInputIdx); + if (lastPeak >= DECAY_STEP) + if (v < lastPeak - DECAY_STEP) + v = lastPeak - DECAY_STEP; + + lastPeak = v; + for(int i=0;ireallyUpdateDeviceVisibility(); + idleSource = 0; + return FALSE; +} + +void UkmediaVolumeControl::setConnectionState(gboolean connected) { + if (m_connected != connected) { + m_connected = connected; + if (m_connected) { +// connectingLabel->hide(); +// notebook->show(); + } else { +// notebook->hide(); +// connectingLabel->show(); + } + } +} + +void UkmediaVolumeControl::updateDeviceVisibility() { + + if (idleSource) + return; + + idleSource = g_idle_add(idleCb, this); +} + +void UkmediaVolumeControl::reallyUpdateDeviceVisibility() { + bool is_empty = true; + +// for (auto & sinkInputWidget : sinkInputWidgets) { +// SinkInputWidget* w = sinkInputWidget.second; + +// if (sinkWidgets.size() > 1) { +// w->directionLabel->show(); +// w->deviceButton->show(); +// } else { +// w->directionLabel->hide(); +// w->deviceButton->hide(); +// } + +// if (showSinkInputType == SINK_INPUT_ALL || w->type == showSinkInputType) { +// w->show(); +// is_empty = false; +// } else +// w->hide(); +// } + +// if (eventRoleWidget) +// is_empty = false; + +// if (is_empty) +// noStreamsLabel->show(); +// else +// noStreamsLabel->hide(); + + is_empty = true; + +// for (auto & sourceOutputWidget : sourceOutputWidgets) { +// SourceOutputWidget* w = sourceOutputWidget.second; + +// if (sourceWidgets.size() > 1) { +// w->directionLabel->show(); +// w->deviceButton->show(); +// } else { +// w->directionLabel->hide(); +// w->deviceButton->hide(); +// } + +// if (showSourceOutputType == SOURCE_OUTPUT_ALL || w->type == showSourceOutputType) { +// w->show(); +// is_empty = false; +// } else +// w->hide(); +// } + +// if (is_empty) +// noRecsLabel->show(); +// else +// noRecsLabel->hide(); + +// is_empty = true; + +// for (auto & sinkWidget : sinkWidgets) { +// SinkWidget* w = sinkWidget.second; + +// if (showSinkType == SINK_ALL || w->type == showSinkType) { +// w->show(); +// is_empty = false; +// } else +// w->hide(); +// } + +// if (is_empty) +// noSinksLabel->show(); +// else +// noSinksLabel->hide(); + +// is_empty = true; + +// for (auto & cardWidget : cardWidgets) { +// CardWidget* w = cardWidget.second; + +// w->show(); +// is_empty = false; +// } + +// if (is_empty) +// noCardsLabel->show(); +// else +// noCardsLabel->hide(); + +// is_empty = true; + +// for (auto & sourceWidget : sourceWidgets) { +// SourceWidget* w = sourceWidget.second; + +// if (showSourceType == SOURCE_ALL || +// w->type == showSourceType || +// (showSourceType == SOURCE_NO_MONITOR && w->type != SOURCE_MONITOR)) { +// w->show(); +// is_empty = false; +// } else +// w->hide(); +// } + +// if (is_empty) +// noSourcesLabel->show(); +// else +// noSourcesLabel->hide(); + +// /* Hmm, if I don't call hide()/show() here some widgets will never +// * get their proper space allocated */ +// sinksVBox->hide(); +// sinksVBox->show(); +// sourcesVBox->hide(); +// sourcesVBox->show(); +// streamsVBox->hide(); +// streamsVBox->show(); +// recsVBox->hide(); +// recsVBox->show(); +// cardsVBox->hide(); +// cardsVBox->show(); +} + +void UkmediaVolumeControl::removeCard(uint32_t index) { +// if (!cardWidgets.count(index)) +// return; + +// delete cardWidgets[index]; +// cardWidgets.erase(index); + updateDeviceVisibility(); +} + +void UkmediaVolumeControl::removeSink(uint32_t index) +{ + QMap::iterator it; + for (it=sinkMap.begin();it!=sinkMap.end();) { + if (it.key() == index) { + qDebug() << "removeSink" << index; + sinkMap.erase(it); + break; + } + ++it; + } + + updateDeviceVisibility(); +} + +void UkmediaVolumeControl::removeSource(uint32_t index) +{ + QMap::iterator it; + for (it=sourceMap.begin();it!=sourceMap.end();) { + if (it.key() == index) { + qDebug() << "removeSource" << index; + sourceMap.erase(it); + break; + } + ++it; + } + updateDeviceVisibility(); +} + +void UkmediaVolumeControl::removeSinkInput(uint32_t index) { + updateDeviceVisibility(); +} + +void UkmediaVolumeControl::removeSourceOutput(uint32_t index) { + updateDeviceVisibility(); +} + +void UkmediaVolumeControl::removeClient(uint32_t index) { + g_free(clientNames[index]); + clientNames.erase(index); +} + + +void UkmediaVolumeControl::setConnectingMessage(const char *string) { + QByteArray markup = ""; + if (!string) + markup += tr("Establishing connection to PulseAudio. Please wait...").toUtf8().constData(); + else + markup += string; + markup += ""; +// connectingLabel->setText(QString::fromUtf8(markup)); +} + +void UkmediaVolumeControl::showError(const char *txt) { + char buf[256]; + + snprintf(buf, sizeof(buf), "%s: %s", txt, pa_strerror(pa_context_errno(context))); + + qDebug() <get_window()->set_cursor(); + w->setConnectionState(true); + } +} + +void UkmediaVolumeControl::cardCb(pa_context *c, const pa_card_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Card callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + w->cardMap.insert(i->index,i->name); + w->updateCard(w,*i); +} + +void UkmediaVolumeControl::sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + int volume; + if(i->volume.channels >= 2) + volume = MAX(i->volume.values[0],i->volume.values[1]); + else + volume = i->volume.values[0]; + w->defaultOutputCard = i->card; + w->sinkIndex = i->index; + w->balance = pa_cvolume_get_balance(&i->volume,&i->channel_map); + + if(i->active_port) + w->sinkPortName = i->active_port->name; + else + w->sinkPortName = ""; + + if(w->sinkVolume != volume || w->sinkMuted != i->mute){ + w->sinkVolume = volume; + w->sinkMuted = i->mute; + Q_EMIT w->updateVolume(w->sinkVolume,w->sinkMuted); + } + +} + +void UkmediaVolumeControl::sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Source callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + int volume; + if(i->volume.channels >= 2) + volume = MAX(i->volume.values[0],i->volume.values[1]); + else + volume = i->volume.values[0]; + + w->defaultInputCard = i->card; + w->sourceIndex = i->index; + if(i->active_port) + w->sourcePortName = i->active_port->name; + else + w->sourcePortName = ""; + + if(w->sourceVolume != volume || w->sourceMuted != i->mute){ + w->sourceVolume = volume; + w->sourceMuted = i->mute; + Q_EMIT w->updateSourceVolume(w->sourceVolume,w->sourceMuted); + } + + if (!w->sourceOutputVector.contains(w->sourceIndex) && pa_context_get_server_protocol_version(w->getContext()) >= 13) { + pa_operation* o; + qDebug() <<"killall source output index form sourceIndexCb" <peakDetectIndex; + if (!(o = pa_context_kill_source_output(w->getContext(), w->peakDetectIndex, nullptr, nullptr))) { + w->showError(tr("pa_context_set_default_source() failed").toUtf8().constData()); + } + if (w->sourceOutputVector.count()) + w->sourceOutputVector.removeAt(0); + qDebug() << "sinkIndexCb " << w->sourceOutputVector.count(); + w->sourceOutputVector.append(w->sourceIndex); + w->peak = w->createMonitorStreamForSource(w->sourceIndex, -1, !!(w->sourceFlags & PA_SOURCE_NETWORK)); + } +} + +void UkmediaVolumeControl::sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + w->m_pDefaultSink = i; + qDebug() << "SinkCb" << i->index << i->name; + w->sinkMap.insert(i->index,i->name); + + w->updateSink(w,*i); +} + +void UkmediaVolumeControl::sourceCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Source callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + w->m_pDefaultSource = i; + qDebug() << "sourceCb" << i->index << i->name; + w->sourceMap.insert(i->index,i->name); + + w->updateSource(*i); + +} + +void UkmediaVolumeControl::sinkInputCb(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + + w->updateSinkInput(*i); +} + +void UkmediaVolumeControl::sourceOutputCb(pa_context *c, const pa_source_output_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Source output callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + + if (n_outstanding > 0) { + /* At this point all notebook pages have been populated, so + * let's open one that isn't empty */ + // if (default_tab != -1) { + // if (default_tab < 1 || default_tab > w->notebook->count()) { + // if (!w->sinkInputWidgets.empty()) + // w->notebook->setCurrentIndex(0); + // else if (!w->sourceOutputWidgets.empty()) + // w->notebook->setCurrentIndex(1); + // else if (!w->sourceWidgets.empty() && w->sinkWidgets.empty()) + // w->notebook->setCurrentIndex(3); + // else + // w->notebook->setCurrentIndex(2); + // } else { + // w->notebook->setCurrentIndex(default_tab - 1); + // } + // default_tab = -1; + // } + } + + decOutstanding(w); + return; + } + if (i->name) + qDebug() << "sourceOutputCb" << i->name << i->source <sourceOutputVector.contains(i->index)) { +// w->sourceOutputVector.append(i->index); + w->updateSourceOutput(*i); + if (i->name && strstr(i->name,"Peak detect")) + w->peakDetectIndex = i->index; + qDebug() << "update source output" << w->peakDetectIndex <name; + } + +} + +void UkmediaVolumeControl::clientCb(pa_context *c, const pa_client_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Client callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } +// qDebug() << "clientCb" << i->name; + w->updateClient(*i); +} + +void UkmediaVolumeControl::serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (!i) { + w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); + return; + } + pa_operation *o; + + qDebug() << "serverInfoIndexCb" << i->default_sink_name << i->default_source_name; + w->updateServer(*i); + decOutstanding(w); +} + +void UkmediaVolumeControl::serverInfoCb(pa_context *, const pa_server_info *i, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (!i) { + w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); + return; + } + + pa_operation *o; + //默认的输出设备改变时需要获取默认的输出音量 + if(!(o = pa_context_get_sink_info_by_name(w->getContext(),i->default_sink_name,sinkIndexCb,w))) { + + } + + if(!(o = pa_context_get_source_info_by_name(w->getContext(),i->default_source_name,sourceIndexCb,w))) { + + } + qDebug() << "serverInfoCb" << i->user_name << i->default_sink_name << i->default_source_name; + w->updateServer(*i); + QTimer::singleShot(50, w, SLOT(timeoutSlot())); + + decOutstanding(w); +} + +void UkmediaVolumeControl::timeoutSlot() +{ + Q_EMIT deviceChangedSignal(); +} + +void UkmediaVolumeControl::extStreamRestoreReadCb( + pa_context *c, + const pa_ext_stream_restore_info *i, + int eol, + void *userdata) { + + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + decOutstanding(w); + g_debug(QObject::tr("Failed to initialize stream_restore extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } +// qDebug() << "extStreamRestoreReadCb" << i->name; +// w->updateRole(*i); +} + +void UkmediaVolumeControl::extStreamRestoreSubscribeCb(pa_context *c, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + pa_operation *o; + + if (!(o = pa_ext_stream_restore_read(c, extStreamRestoreReadCb, w))) { + w->showError(QObject::tr("pa_ext_stream_restore_read() failed").toUtf8().constData()); + return; + } + qDebug() << "extStreamRestoreSubscribeCb" ; + pa_operation_unref(o); +} + +void UkmediaVolumeControl::extDeviceManagerReadCb( + pa_context *c, + const pa_ext_device_manager_info *, + int eol, + void *userdata) { + + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + decOutstanding(w); + g_debug(QObject::tr("Failed to initialize device manager extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); + return; + } + + w->canRenameDevices = true; + + if (eol > 0) { + decOutstanding(w); + return; + } + qDebug() << "extDeviceManagerReadCb"; + /* Do something with a widget when this part is written */ +} + +void UkmediaVolumeControl::extDeviceManagerSubscribeCb(pa_context *c, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + pa_operation *o; + + if (!(o = pa_ext_device_manager_read(c, extDeviceManagerReadCb, w))) { + w->showError(QObject::tr("pa_ext_device_manager_read() failed").toUtf8().constData()); + return; + } + qDebug() << "extDeviceManagerSubscribeCb"; + pa_operation_unref(o); +} + +void UkmediaVolumeControl::subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + switch (t & PA_SUBSCRIPTION_EVENT_FACILITY_MASK) { + case PA_SUBSCRIPTION_EVENT_SINK: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSink(index); + else { + pa_operation *o; + if (!(o = pa_context_get_sink_info_by_index(c, index, sinkCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_info_by_index() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SOURCE: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSource(index); + else { + pa_operation *o; + if (!(o = pa_context_get_source_info_by_index(c, index, sourceCb, w))) { + w->showError(QObject::tr("pa_context_get_source_info_by_index() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SINK_INPUT: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSinkInput(index); + else { + pa_operation *o; + if (!(o = pa_context_get_sink_input_info(c, index, sinkInputCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSourceOutput(index); + else { + pa_operation *o; + if (!(o = pa_context_get_source_output_info(c, index, sourceOutputCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_CLIENT: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeClient(index); + else { + pa_operation *o; + if (!(o = pa_context_get_client_info(c, index, clientCb, w))) { + w->showError(QObject::tr("pa_context_get_client_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SERVER: { + pa_operation *o; + if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { + w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_CARD: + //remove card + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) { + qDebug() << "remove cards------"; + //移除outputPort + w->removeSinkPortMap(index); + w->removeSourcePortMap(index); + w->removeOutputPortMap(index); + w->removeInputPortMap(index); + w->removeCardMap(index); + w->removeCardProfileMap(index); + + w->removeProfileMap(index); + w->removeInputProfile(index); + w->removeCard(index); + Q_EMIT w->updatePortSignal(); + + } + else { + pa_operation *o; + if (!(o = pa_context_get_card_info_by_index(c, index, cardCb, w))) { + w->showError(QObject::tr("pa_context_get_card_info_by_index() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + } +} + +void UkmediaVolumeControl::contextStateCallback(pa_context *c, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + g_assert(c); + + switch (pa_context_get_state(c)) { + case PA_CONTEXT_UNCONNECTED: + case PA_CONTEXT_CONNECTING: + case PA_CONTEXT_AUTHORIZING: + case PA_CONTEXT_SETTING_NAME: + + break; + + case PA_CONTEXT_READY: { + pa_operation *o; + qDebug() << "pa_context_get_state" << "PA_CONTEXT_READY" << pa_context_get_state(c); + reconnect_timeout = 1; + + /* Create event widget immediately so it's first in the list */ + + pa_context_set_subscribe_callback(c, subscribeCb, w); + + if (!(o = pa_context_subscribe(c, (pa_subscription_mask_t) + (PA_SUBSCRIPTION_MASK_SINK| + PA_SUBSCRIPTION_MASK_SOURCE| + PA_SUBSCRIPTION_MASK_SINK_INPUT| + PA_SUBSCRIPTION_MASK_SOURCE_OUTPUT| + PA_SUBSCRIPTION_MASK_CLIENT| + PA_SUBSCRIPTION_MASK_SERVER| + PA_SUBSCRIPTION_MASK_CARD), nullptr, nullptr))) { + w->showError(QObject::tr("pa_context_subscribe() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + + /* Keep track of the outstanding callbacks for UI tweaks */ + n_outstanding = 0; + + if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { + w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + + if (!(o = pa_context_get_client_info_list(c, clientCb, w))) { + w->showError(QObject::tr("pa_context_client_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + + if (!(o = pa_context_get_card_info_list(c, cardCb, w))) { + w->showError(QObject::tr("pa_context_get_card_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + + if (!(o = pa_context_get_sink_info_list(c, sinkCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + + if (!(o = pa_context_get_source_info_list(c, sourceCb, w))) { + w->showError(QObject::tr("pa_context_get_source_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + + if (!(o = pa_context_get_sink_input_info_list(c, sinkInputCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_input_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + + if (!(o = pa_context_get_source_output_info_list(c, sourceOutputCb, w))) { + w->showError(QObject::tr("pa_context_get_source_output_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + n_outstanding++; + Q_EMIT w->paContextReady(); + break; + } + + case PA_CONTEXT_FAILED: + w->setConnectionState(false); + w->updateDeviceVisibility(); + pa_context_unref(w->m_pPaContext); + w->m_pPaContext = nullptr; + + if (reconnect_timeout > 0) { + g_debug("%s", QObject::tr("Connection failed, attempting reconnect").toUtf8().constData()); +// g_timeout_add_seconds(reconnect_timeout, connectToPulse, w); + } + return; + + case PA_CONTEXT_TERMINATED: + default: + return; + } +} + +pa_context* UkmediaVolumeControl::getContext(void) { + return context; +} + +gboolean UkmediaVolumeControl::connectToPulse(gpointer userdata) { + pa_glib_mainloop *m = pa_glib_mainloop_new(g_main_context_default()); + api = pa_glib_mainloop_get_api(m); + + pa_proplist *proplist = pa_proplist_new(); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_NAME, QObject::tr("Ukui Media Volume Control").toUtf8().constData()); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_ID, "org.PulseAudio.pavucontrol"); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_ICON_NAME, "audio-card"); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_VERSION, "PACKAGE_VERSION"); + context = pa_context_new_with_proplist(api, nullptr, proplist); + g_assert(context); + + pa_proplist_free(proplist); + + pa_context_set_state_callback(getContext(), contextStateCallback, this); + if (pa_context_connect(getContext(), nullptr, PA_CONTEXT_NOFAIL, nullptr) < 0) { + if (pa_context_errno(getContext()) == PA_ERR_INVALID) { + /*w->setConnectingMessage(QObject::tr("Connection to PulseAudio failed. Automatic retry in 5s\n\n" + "In this case this is likely because PULSE_SERVER in the Environment/X11 Root Window Properties\n" + "or default-server in client.conf is misconfigured.\n" + "This situation can also arrise when PulseAudio crashed and left stale details in the X11 Root Window.\n" + "If this is the case, then PulseAudio should autospawn again, or if this is not configured you should\n" + "run start-pulseaudio-x11 manually.").toUtf8().constData());*/ + qFatal("connect pulseaudio failed") ; + } + else { +// g_timeout_add_seconds(5,connectToPulse,w); + } + } + + return false; +} + + +/* + * 根据名称获取sink input音量 + */ +int UkmediaVolumeControl::getSinkInputVolume(const gchar *name) +{ + QMap::iterator it; + int value = 0; + for(it = sinkInputMap.begin();it!=sinkInputMap.end();) + { + if(it.key() == name) + { + qDebug() << "getSinkInputVolume" << "name:" <::iterator it; + int value = 0; + for(it = sourceOutputMap.begin();it!=sourceOutputMap.end();) + { + if(it.key() == name) + { + qDebug() << "getSourceOutputVolume" << "name:" <(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); + return; + } + if (eol > 0) { + decOutstanding(w); + return; + } + w->sinkInputMuted = i->mute; + if (i->volume.channels >= 2) + w->sinkInputVolume = MAX(i->volume.values[0],i->volume.values[1]); + else + w->sinkInputVolume = i->volume.values[0]; + qDebug() << "sinkInputCallback" <sinkInputVolume ; +} + +/* + * 更新output port map + */ +void UkmediaVolumeControl::updateOutputPortMap() +{ + QMap::iterator at; + QMap::iterator cardNameMap; +// if (firstEntry == true) { + +// for(at = outputPortMap.begin();at!=w->outputPortMap.end();) +// { + +// UkuiListWidgetItem *itemW = new UkuiListWidgetItem(w); + +// QListWidgetItem * item = new QListWidgetItem(w->m_pOutputWidget->m_pOutputListWidget); +// item->setSizeHint(QSize(200,64)); //QSize(120, 40) spacing: 12px; +// w->m_pOutputWidget->m_pOutputListWidget->blockSignals(true); +// w->m_pOutputWidget->m_pOutputListWidget->setItemWidget(item, itemW); +// w->m_pOutputWidget->m_pOutputListWidget->blockSignals(false); +// QString cardName; +// for(cardNameMap = w->cardMap.begin();cardNameMap!=w->cardMap.end();) +// { +// if (cardNameMap.key() == at.key()) { +// cardName = cardNameMap.value(); +// break; +// } +// ++cardNameMap; +// } + +// itemW->setLabelText(at.value(),cardName); +// w->m_pOutputWidget->m_pOutputListWidget->blockSignals(true); +// w->m_pOutputWidget->m_pOutputListWidget->insertItem(i++,item); +// w->m_pOutputWidget->m_pOutputListWidget->blockSignals(false); + +// ++at; +// } +// for(at = w->inputPortLabelMap.begin();at!=w->inputPortLabelMap.end();) +// { +// UkuiListWidgetItem *itemW = new UkuiListWidgetItem(w); + +// QListWidgetItem * item = new QListWidgetItem(w->m_pInputWidget->m_pInputListWidget); +// item->setSizeHint(QSize(200,64)); //QSize(120, 40) spacing: 12px; +// w->m_pInputWidget->m_pInputListWidget->setItemWidget(item, itemW); +// QString cardName; +// for(cardNameMap = w->cardMap.begin();cardNameMap!=w->cardMap.end();) +// { +// if (cardNameMap.key() == at.key()) { +// cardName = cardNameMap.value(); +// break; +// } +// ++cardNameMap; +// } +// itemW->setLabelText(at.value(),cardName); +// w->m_pInputWidget->m_pInputListWidget->blockSignals(true); +// w->m_pInputWidget->m_pInputListWidget->insertItem(i++,item); +// w->m_pInputWidget->m_pInputListWidget->blockSignals(false); + +// ++at; +// } + +// } +// else { +// //记录上一次output label +// for (i=0;im_pOutputWidget->m_pOutputListWidget->count();i++) { + +// QListWidgetItem *item = w->m_pOutputWidget->m_pOutputListWidget->item(i); +// UkuiListWidgetItem *wid = (UkuiListWidgetItem *)w->m_pOutputWidget->m_pOutputListWidget->itemWidget(item); +// int index; +// for (at=w->cardMap.begin();at!=w->cardMap.end();) { +// if (wid->deviceLabel->text() == at.value()) { +// index = at.key(); +// break; +// } +// ++at; +// } +// w->currentOutputPortLabelMap.insertMulti(index,wid->portLabel->text()); +// w->m_pCurrentOutputPortLabelList->append(wid->portLabel->text()); +// w->m_pCurrentOutputCardList->append(wid->deviceLabel->text()); +// //qDebug() << index << "current output item ************" << item->text() <portLabel->text() << w->m_pOutputPortLabelList->count() ;//<< w->m_pOutputPortLabelList->at(i); +// } + +// for (i=0;im_pInputWidget->m_pInputListWidget->count();i++) { + +// QListWidgetItem *item = w->m_pInputWidget->m_pInputListWidget->item(i); +// UkuiListWidgetItem *wid = (UkuiListWidgetItem *)w->m_pInputWidget->m_pInputListWidget->itemWidget(item); +// int index; +// int count; +// for (at=w->cardMap.begin();at!=w->cardMap.end();) { +// if (wid->deviceLabel->text() == at.value()) { +// index = at.key(); +// break; +// } +// ++at; +// ++count; +// } +// w->currentInputPortLabelMap.insertMulti(index,wid->portLabel->text()); +// w->m_pCurrentInputPortLabelList->append(wid->portLabel->text()); +// w->m_pCurrentInputCardList->append(wid->deviceLabel->text()); +// qDebug() <<"current input port label insert " << index << wid->deviceLabel->text(); +// } +//// w->m_pInputWidget->m_pInputListWidget->blockSignals(true); +//// w->deleteNotAvailableOutputPort(); +//// w->addAvailableOutputPort(); +//// w->deleteNotAvailableInputPort(); +//// w->addAvailableInputPort(); +//// w->m_pInputWidget->m_pInputListWidget->blockSignals(false); +// } +} + + +/* + * 移除指定索引的output port + */ +void UkmediaVolumeControl::removeOutputPortMap(int index) +{ + QMap>::iterator it; + for (it=outputPortMap.begin();it!=outputPortMap.end();) { + if (it.key() == index) { + qDebug() << "removeoutputport" <>::iterator it; + for (it=inputPortMap.begin();it!=inputPortMap.end();) { + if (it.key() == index) { + inputPortMap.erase(it); + break; + } + ++it; + } +} + +/* + * 移除指定索引的card + */ +void UkmediaVolumeControl::removeCardMap(int index) +{ + QMap::iterator it; + for (it=cardMap.begin();it!=cardMap.end();) { + if (it.key() == index) { + cardMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeCardProfileMap(int index) +{ + QMap>::iterator it; + QMap>::iterator at; + for (it=cardProfileMap.begin();it!=cardProfileMap.end();) { + if (it.key() == index) { + cardProfileMap.erase(it); + break; + } + ++it; + } + + for (at=cardProfilePriorityMap.begin();at!=cardProfilePriorityMap.cend();) { + if (at.key() == index) { + cardProfilePriorityMap.erase(at); + break; + } + ++at; + } +} + +void UkmediaVolumeControl::removeSinkPortMap(int index) +{ + qDebug() << "removeSinkPortMap///"; + QMap>::iterator it; + for(it=sinkPortMap.begin();it!=sinkPortMap.end();){ + if(it.key() == index) { + sinkPortMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeSourcePortMap(int index) +{ + qDebug() << "removeSinkPortMap///"; + QMap>::iterator it; + for(it=sourcePortMap.begin();it!=sourcePortMap.end();){ + if(it.key() == index) { + sourcePortMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeProfileMap(int index) +{ + QMap>::iterator it; + qDebug() << "removeProfileMap" << index << profileNameMap; + + for (it=profileNameMap.begin();it!=profileNameMap.end();) { + if(it.key() == index){ + profileNameMap.erase(it); + break; + } + ++it; + } +} + +bool UkmediaVolumeControl::isExitOutputPort(QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for (it=outputPortMap.begin();it!=outputPortMap.end();) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (at.value() == name) + return true; + ++at; + } + ++it; + } + return false; +} + +void UkmediaVolumeControl::removeInputProfile(int index) +{ + QMap>::iterator it; + qDebug() << "removeInputProfile" << index << inputPortProfileNameMap; + + for (it=inputPortProfileNameMap.begin();it!=inputPortProfileNameMap.end();) { + if(it.key() == index){ + inputPortProfileNameMap.erase(it); + break; + } + ++it; + } +} + +bool UkmediaVolumeControl::isExitInputPort(QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for (it=inputPortMap.begin();it!=inputPortMap.end();) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (at.value() == name) + return true; + ++at; + } + ++it; + } + return false; +} diff --git a/audio/ukmedia_volume_control.h b/audio/ukmedia_volume_control.h new file mode 100644 index 0000000..b3417b6 --- /dev/null +++ b/audio/ukmedia_volume_control.h @@ -0,0 +1,243 @@ +#ifndef UKMEDIAVOLUMECONTROL_H +#define UKMEDIAVOLUMECONTROL_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ukui_custom_style.h" + +#define PANGUW_SINK "alsa_output.platform-raoliang-sndcard.analog-stereo" + +#define DECAY_STEP .04 + +static int n_outstanding = 0; + +class PortInfo { +public: + QByteArray name; + QByteArray description; + uint32_t priority; + int available; + int direction; + int64_t latency_offset; + std::vector profiles; +}; + +class UkmediaVolumeControl : public QObject{ + Q_OBJECT +public: + UkmediaVolumeControl(); + virtual ~UkmediaVolumeControl(); + + void updateCard(UkmediaVolumeControl *c,const pa_card_info &info); + bool updateSink(UkmediaVolumeControl *c,const pa_sink_info &info); + void updateSource(const pa_source_info &info); + void updateSinkInput(const pa_sink_input_info &info); + void updateSourceOutput(const pa_source_output_info &info); + void updateClient(const pa_client_info &info); + void updateServer(const pa_server_info &info); + void updateVolumeMeter(uint32_t source_index, uint32_t sink_input_index, double v); +// void updateRole(const pa_ext_stream_restore_info &info); + + void updateDeviceInfo(const pa_ext_device_restore_info &info) ; + bool setSinkMute(bool status); //设置输出设备静音状态 + bool setSinkVolume(int index,int value); //设置输出设备音量值 + bool setSourceMute(bool status); //设置输入设备静音状态 + bool setSourceVolume(int index,int value); //设置输入设备音量值 + bool setBalanceVolume(int index,int value,float balance); //设置平衡值 + bool getSinkMute(); //获取输出设备静音状态 + int getSinkVolume(); //获取输出设备音量值 + bool getSourceMute(); //获取输入设备静音状态 + int getSourceVolume(); //获取输入设备音量值 + float getBalanceVolume();//获取平衡音量 + int getDefaultSinkIndex(); + int getSinkInputVolume(const gchar *name); //根据name获取sink input的音量值 + void setSinkInputVolume(int index,int value); //设置sink input 音量值 + void setSinkInputMuted(int index,bool status); //设置sink input 静音状态 + + int getSourceOutputVolume(const gchar *name); //根据name获取source output的音量值 + bool setCardProfile(int index,const gchar *name); //设置声卡的配置文件 + bool setDefaultSink(const gchar *name); //设置默认的输出设备 + bool setDefaultSource(const gchar *name); //设置默认的输入设备 + bool setSinkPort(const gchar *sinkName ,const gchar *portName); //设置输出设备的端口 + bool setSourcePort(const gchar *sourceName, const gchar *portName); //设置输入设备的端口 + + void setSourceOutputVolume(int index, int value); + void setSourceOutputMuted(int index, bool status); + + void removeCard(uint32_t index); + void removeSink(uint32_t index); + void removeSource(uint32_t index); + void removeSinkInput(uint32_t index); + void removeSourceOutput(uint32_t index); + void removeClient(uint32_t index); + + void setConnectingMessage(const char *string = NULL); + + void showError(const char *txt); + static void decOutstanding(UkmediaVolumeControl *w); + static void readCallback(pa_stream *s, size_t length, void *userdata); + static void sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); + static void sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata); + + static void cardCb(pa_context *, const pa_card_info *i, int eol, void *userdata); + static void sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); + static void sourceCb(pa_context *, const pa_source_info *i, int eol, void *userdata); + static void sinkInputCb(pa_context *, const pa_sink_input_info *i, int eol, void *userdata); + static void sinkInputCallback(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata); //不更新sink input + static void sourceOutputCb(pa_context *, const pa_source_output_info *i, int eol, void *userdata); + static void clientCb(pa_context *, const pa_client_info *i, int eol, void *userdata); + static void serverInfoCb(pa_context *, const pa_server_info *i, void *userdata); + static void serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata); + static void extStreamRestoreReadCb(pa_context *,const pa_ext_stream_restore_info *i,int eol,void *userdata); + static void extStreamRestoreSubscribeCb(pa_context *c, void *userdata); +// void ext_device_restore_read_cb(pa_context *,const pa_ext_device_restore_info *i,int eol,void *userdata); +// static void ext_device_restore_subscribe_cb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata); + static void extDeviceManagerReadCb(pa_context *,const pa_ext_device_manager_info *,int eol,void *userdata); + static void extDeviceManagerSubscribeCb(pa_context *c, void *userdata); + static void subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata); + static void contextStateCallback(pa_context *c, void *userdata); + pa_context* getContext(void); + gboolean connectToPulse(gpointer userdata); + + void updateOutputPortMap(); + void removeOutputPortMap(int index); //移除指定索引的output port + void removeInputPortMap(int index); //移除指定索引的input port + void removeCardMap(int index); //移除指定索引的 card + void removeCardProfileMap(int index); //移除声卡profile map + void removeSinkPortMap(int index); + void removeSourcePortMap(int index); + void removeProfileMap(int index); + bool isExitOutputPort(QString name); + QString findSinkActivePortName(QString name); + void removeInputProfile(int index); + bool isExitInputPort(QString name); + QString stringRemoveUnrecignizedChar(QString str); + + + std::vector< std::pair > profiles; + std::map ports; + QByteArray activeProfile; + QByteArray noInOutProfile; + QByteArray lastActiveProfile; + + QVector sourceOutputVector;//存储source output索引 + bool hasSinks; + bool hasSources; + pa_cvolume m_defaultSinkVolume; + + const pa_sink_info *m_pDefaultSink; + pa_context* m_pPaContext; + std::map clientNames; + + int sinkVolume; //输出音量 + int sourceVolume; //输入音量 + bool sinkMuted; //输出静音状态 + bool sourceMuted; //输入静音状态 + int sinkInputVolume; //sink input 音量 + bool sinkInputMuted; //sink input 静音状态 + float balance; //平衡音量值 + int channel; //通道数 + int inputChannel; + int sinkInputChannel; + int sourceOutputChannel; + QString sinkPortName; //输出设备端口名 + QString sourcePortName; //输入设备端口名 + int defaultOutputCard; + int defaultInputCard; + + pa_channel_map defaultChannelMap; + friend class UkmediaMainWidget; + + pa_stream *peak; + double lastPeak; + QByteArray name; + QByteArray description; + uint32_t index, card_index; + int peakDetectIndex=0; + pa_source_flags sourceFlags; + + bool offsetButtonEnabled; + + pa_channel_map channelMap; + pa_cvolume volume; + std::vector< std::pair > dPorts; + QByteArray activePort; + + QMap sinkMap; //输出设备 + QMap sinkActivePortMap; //输出设备活跃端口 + QMap sourceMap; //输入设备 + QMap> outputPortMap; //输出端口 + QMap> inputPortMap; //输入端口 + QMap> profileNameMap; //声卡输出配置文件 + QMap> inputPortProfileNameMap; //声卡输入配置文件 + QMap> cardProfilePriorityMap; //记录声卡优先级配置文件 + QMap> cardProfileMap; + QMap cardMap; + QMap> sinkPortMap; + QMap> sourcePortMap; + QMap cardActiveProfileMap; + +Q_SIGNALS: + void paContextReady(); + void updateVolume(int value,bool state); + void updateSourceVolume(int value,bool state); + void addSinkInputSignal(const gchar* name,const gchar *id,int index); + void removeSinkInputSignal(const gchar* name); + void addSourceOutputSignal(const gchar* name,const gchar *id,int index); + void removeSourceOutputSignal(const gchar* name); + void checkDeviceSelectionSianal(const pa_card_info *info); + void peakChangedSignal(double v); + void updatePortSignal(); + void updateCboxPortSignal(); + void deviceChangedSignal(); + + +protected Q_SLOTS: + void timeoutSlot(); + +public: + void setConnectionState(gboolean connected); + void updateDeviceVisibility(); + void reallyUpdateDeviceVisibility(); + pa_stream* createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx, bool suspend); + + + void setIconFromProplist(QLabel *icon, pa_proplist *l, const char *name); + + pa_context *context; + QByteArray defaultSinkName, defaultSourceName; + + bool canRenameDevices; + const pa_server_info *m_pServerInfo; + const pa_source_info *m_pDefaultSource; + int sinkIndex; + int sourceIndex; + pa_mainloop_api* api; + QStringList sinkInputList; + QMap sinkInputMap; + QMap sourceOutputMap; + +private: + + gboolean m_connected; + gchar* m_config_filename; + +}; + + +#endif // UKMEDIAVOLUMECONTROL_H diff --git a/audio/ukui_custom_style.cpp b/audio/ukui_custom_style.cpp new file mode 100644 index 0000000..7598552 --- /dev/null +++ b/audio/ukui_custom_style.cpp @@ -0,0 +1,449 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "ukui_custom_style.h" +#include +#include +#include +#include +#include +#include +#include +#include + +UkuiMediaSliderTipLabel::UkuiMediaSliderTipLabel(){ + setAttribute(Qt::WA_TranslucentBackground); +} + +UkuiMediaSliderTipLabel::~UkuiMediaSliderTipLabel(){ +} + +void UkuiMediaSliderTipLabel::paintEvent(QPaintEvent *e) +{ + QStyleOptionFrame opt; + initStyleOption(&opt); + QStylePainter p(this); +// p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); + p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x33))); + p.setPen(Qt::NoPen); + p.drawRoundedRect(this->rect(), 1, 1); + QPainterPath path; + path.addRoundedRect(opt.rect,6,6); + p.setRenderHint(QPainter::Antialiasing); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); + this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); + QLabel::paintEvent(e); +} + +UkmediaVolumeSlider::UkmediaVolumeSlider(QWidget *parent,bool needTip) +{ + Q_UNUSED(parent); + if (needTip) { + state = needTip; + m_pTiplabel = new UkuiMediaSliderTipLabel(); + m_pTiplabel->setWindowFlags(Qt::ToolTip); + // qApp->installEventFilter(new AppEventFilter(this)); + m_pTiplabel->setFixedSize(70,30); + m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); + } +} + +void UkmediaVolumeSlider::mousePressEvent(QMouseEvent *ev) +{ + if (state) { + m_pTiplabel->show(); + } + //注意应先调用父类的鼠标点击处理事件,这样可以不影响拖动的情况 + QSlider::mousePressEvent(ev); + //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) + int value = 0; + int currentX = ev->pos().x(); + double per = currentX * 1.0 / this->width(); + if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { + value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); + } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { + value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); + } else { + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + } + } else { + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + } + this->setValue(value); + //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 + QEvent evEvent(static_cast(QEvent::User + 1)); + QCoreApplication::sendEvent(parentWidget(), &evEvent); +} + +void UkmediaVolumeSlider::mouseReleaseEvent(QMouseEvent *ev) +{ + mouseClickFlag = true; + QSlider::mouseReleaseEvent(ev); +} +void UkmediaVolumeSlider::wheelEvent(QWheelEvent* ev) +{ + if(mouseClickFlag) + QSlider::wheelEvent(ev); +} + +void UkmediaVolumeSlider::initStyleOption(QStyleOptionSlider *option) +{ + QSlider::initStyleOption(option); +} + +void UkmediaVolumeSlider::leaveEvent(QEvent *e) +{ + if (state) { + m_pTiplabel->hide(); + } + mouseClickFlag = false; + QSlider::leaveEvent(e); +} + +void UkmediaVolumeSlider::enterEvent(QEvent *e) +{ + if (state) { + m_pTiplabel->show(); + } +} + +void UkmediaVolumeSlider::paintEvent(QPaintEvent *e) +{ + QRect rect; + QStyleOptionSlider m_option; + QSlider::paintEvent(e); + if (state) { + + this->initStyleOption(&m_option); + rect = this->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,this); + QPoint gPos = this->mapToGlobal(rect.topLeft()); + QString percent; + percent = QString::number(this->value()); + percent.append("%"); + m_pTiplabel->setText(percent); + m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); + } + + +} + +UkmediaVolumeSlider::~UkmediaVolumeSlider() +{ +} + +void UkuiButtonDrawSvg::init(QImage img, QColor color) +{ + mImage = img; + mColor = color; +} + +void UkuiButtonDrawSvg::paintEvent(QPaintEvent *event) +{ + QStyleOption opt; + opt.init(this); + QPainter p(this); + p.setBrush(QBrush(QColor(0x13,0x13,0x14,0x00))); + p.setPen(Qt::NoPen); + QPainterPath path; + opt.rect.adjust(0,0,0,0); + path.addRoundedRect(opt.rect,6,6); + p.setRenderHint(QPainter::Antialiasing); // 反锯齿; + p.drawRoundedRect(opt.rect,6,6); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +} + +QRect UkuiButtonDrawSvg::IconGeometry() +{ + QRect res = QRect(QPoint(0,0),QSize(24,24)); + res.moveCenter(QRect(0,0,width(),height()).center()); + return res; +} + +void UkuiButtonDrawSvg::draw(QPaintEvent* e) +{ + Q_UNUSED(e); + QPainter painter(this); + QRect iconRect = IconGeometry(); + if (mImage.size() != iconRect.size()) + { + mImage = mImage.scaled(iconRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); + QRect r = mImage.rect(); + r.moveCenter(iconRect.center()); + iconRect = r; + } + + this->setProperty("fillIconSymbolicColor", true); + filledSymbolicColoredPixmap(mImage,mColor); + painter.drawImage(iconRect, mImage); +} + +bool UkuiButtonDrawSvg::event(QEvent *event) +{ + switch (event->type()) + { + case QEvent::Paint: + draw(static_cast(event)); + break; + + case QEvent::Move: + case QEvent::Resize: + { + QRect rect = IconGeometry(); + } + break; + + case QEvent::MouseButtonPress: + case QEvent::MouseButtonRelease: + case QEvent::MouseButtonDblClick: + event->accept(); + break; + + default: + break; + } + + return QPushButton::event(event); +} + + +UkuiButtonDrawSvg::UkuiButtonDrawSvg(QWidget *parent) +{ + Q_UNUSED(parent); +} +UkuiButtonDrawSvg::~UkuiButtonDrawSvg() +{ + +} + +QPixmap UkuiButtonDrawSvg::filledSymbolicColoredPixmap(QImage &img, QColor &baseColor) +{ + + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + int hue = color.hue(); + if (!qAbs(hue - symbolic_color.hue()) < 10) { + color.setRed(baseColor.red()); + color.setGreen(baseColor.green()); + color.setBlue(baseColor.blue()); + img.setPixelColor(x, y, color); + } + } + } + } + + return QPixmap::fromImage(img); +} + + +CustomSound::CustomSound() +{ +} + +CustomSound::~CustomSound() +{ + delete(file); + delete(doc); + file->close(); +} + +bool CustomSound::createAudioFile() +{ + //打开或创建文件 + QFile *file; + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + if(!QFile::exists(audioPath)){ + file = new QFile(audioPath); + if(!file->open(QFile::WriteOnly)) + return false; + //写入xml头部 + QDomDocument doc; + QDomProcessingInstruction instruction; //添加处理命令 + + instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); + doc.appendChild(instruction); + //添加根节点 + QDomElement root = doc.createElement("root"); + doc.appendChild(root); + //添加子节点 + QDomElement node = doc.createElement("firstRun"); + QDomElement init = doc.createElement("init"); //创建子元素 + QDomText text = doc.createTextNode("true"); + init.appendChild(text); + node.appendChild(init); + root.appendChild(node); + + //输出到文件 + QTextStream out_stream(file); + doc.save(out_stream,4); //缩进4格 + file->close(); + return true; + } + return true; +} + +//判断某个节点是否存在 +bool CustomSound::isExist(QString nodeName) +{ + if (nodeName == "") + return false; + //打开文件 + QString errorStr; + int errorLine; + int errorCol; + + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + QFile file(audioPath); + + if(!file.exists()) + createAudioFile(); + + if(file.open(QFile::ReadOnly)){ + QDomDocument doc; + if(doc.setContent(&file,true,&errorStr,&errorLine,&errorCol)){ + file.close(); + QDomElement root = doc.documentElement(); + QDomElement ele = root.firstChildElement(); + nodeName.remove(" "); + nodeName.remove("/"); + nodeName.remove("("); + nodeName.remove(")"); + nodeName.remove("["); + nodeName.remove("]"); + if(nodeName.at(0)>='0' && nodeName.at(0)<='9'){ + nodeName = "Audio_"+nodeName; + } + while(!ele.isNull()) { + if(ele.nodeName() == nodeName) + return true; + ele = ele.nextSiblingElement(); + } + } + else + { + qDebug() << errorStr << "line: " << errorLine << "col: " << errorCol; + } + + file.close(); + } + + return false; +} + +//添加第一个子节点及其子元素 +int CustomSound::addXmlNode(QString nodeName, bool initState) +{ + //打开文件 + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + QFile file(audioPath); + QDomDocument doc;//增加一个一级子节点以及元素 + if(file.open(QFile::ReadOnly)){ + if(doc.setContent(&file)){ + file.close(); + } + else { + file.close(); + return -1; + } + } + else + return -1; + + //添加新节点 + nodeName.remove(" "); + nodeName.remove("/"); + nodeName.remove("("); + nodeName.remove(")"); + nodeName.remove("["); + nodeName.remove("]"); + if(nodeName.at(0)>='0' && nodeName.at(0)<='9'){ + nodeName = "Audio_"+nodeName; + } + QDomElement root=doc.documentElement(); + QDomElement node=doc.createElement(nodeName); + + QDomElement init=doc.createElement("init"); + QDomText text; + if(initState) + text = doc.createTextNode("true"); + else + text = doc.createTextNode("false"); + init.appendChild(text); + node.appendChild(init); + root.appendChild(node); + qDebug() << "addXmlNode" << nodeName ; + //修改first-run状态 + QDomElement ele = root.firstChildElement(); + while(!ele.isNull()) { + if(ele.nodeName() == "firstRun"){ + QString value = ele.firstChildElement().firstChild().nodeValue(); + if(value == "true") + ele.firstChildElement().firstChild().setNodeValue("false"); + } + ele = ele.nextSiblingElement(); + } + + if(file.open(QFile::WriteOnly|QFile::Truncate)) { + //输出到文件 + QTextStream out_stream(&file); + doc.save(out_stream,4); //缩进4格 + file.close(); + } + + return 0; +} + +bool CustomSound::isFirstRun() +{ + + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + QFile file(audioPath); + if(!file.exists()){ + createAudioFile(); + } + + if(file.open(QFile::ReadOnly)){ + QDomDocument doc; + if(doc.setContent(&file)){ + file.close(); + QDomElement root = doc.documentElement(); + QDomElement ele = root.firstChildElement(); + + qDebug()<<"===================ele.nodeName() :"< +#include +#include +#include +#include +#include +#include "titlelabel.h" +#include +#include +#include +#include + +static QColor symbolic_color = Qt::gray; + +class UkuiMediaSliderTipLabel:public QLabel +{ + public: + UkuiMediaSliderTipLabel(); + ~UkuiMediaSliderTipLabel(); +protected: + void paintEvent(QPaintEvent*); +}; + +class UkmediaVolumeSlider : public QSlider +{ + Q_OBJECT +public: +// UkmediaVolumeSlider(QWidget *parent = nullptr); + UkmediaVolumeSlider(QWidget *parent = nullptr,bool needTip = false); + void initStyleOption(QStyleOptionSlider *option); + ~UkmediaVolumeSlider(); +private: + UkuiMediaSliderTipLabel *m_pTiplabel; + bool state = false; + bool mouseClickFlag = false; + bool mousePress =false; +Q_SIGNALS: + void silderPressedSignal(int); + +protected: + void mousePressEvent(QMouseEvent *ev); + void mouseReleaseEvent(QMouseEvent *ev); + void mouseMoveEvent(QMouseEvent *e) + { +// setCursor(QCursor(Qt::OpenHandCursor)); +// m_displayLabel->move((this->width()-m_displayLabel->width())*this->value()/(this->maximum()-this->minimum()),3); + QSlider::mouseMoveEvent(e); + } + void leaveEvent(QEvent *e); + void wheelEvent(QWheelEvent* ev); + void enterEvent(QEvent *e); + void paintEvent(QPaintEvent *e); +}; + + +class UkuiButtonDrawSvg:public QPushButton +{ + Q_OBJECT +public: + UkuiButtonDrawSvg(QWidget *parent = nullptr); + ~UkuiButtonDrawSvg(); + QPixmap filledSymbolicColoredPixmap(QImage &source, QColor &baseColor); + QRect IconGeometry(); + void draw(QPaintEvent* e); + void init(QImage image ,QColor color); + friend class UkmediaMainWidget; +protected: + void paintEvent(QPaintEvent *event); + bool event(QEvent *e); +private: + QImage mImage; + QColor mColor; + + bool mousePress = false; +}; + +class CustomSound +{ +public: + CustomSound(); + ~CustomSound(); + bool createAudioFile(); + bool isExist(QString nodeName); + int addXmlNode(QString nodeNane, bool initState); + bool isFirstRun(); + + +public: + QFile *file; +private: + QDomDocument *doc; + QString audioPath; +}; + + +#endif // UKUICUSTOMSTYLE_H diff --git a/audio/ukui_list_widget_item.cpp b/audio/ukui_list_widget_item.cpp new file mode 100644 index 0000000..e8eda3f --- /dev/null +++ b/audio/ukui_list_widget_item.cpp @@ -0,0 +1,115 @@ +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ +#include "ukui_list_widget_item.h" + +#include +#include +#include +#include +//#include +#include +bool isCheckBluetoothInput; +UkuiListWidget::UkuiListWidget(QWidget *parent) : + QListWidget(parent) +{ + +} + +UkuiListWidget::~UkuiListWidget() +{ + +} + +UkuiListWidgetItem::UkuiListWidgetItem(QWidget *parent) : + QWidget(parent) +{ + this->setFixedSize(500,64); + + QVBoxLayout *vLayout = new QVBoxLayout; + + portLabel = new QLabel(this); + deviceLabel = new QLabel(this); + + portLabel->setFixedSize(600,24); + deviceLabel->setFixedSize(600,24); + vLayout->addWidget(portLabel); + vLayout->addWidget(deviceLabel); + this->setLayout(vLayout); + + this->show(); +} + +UkuiListWidgetItem::~UkuiListWidgetItem() +{ +} + +void UkuiListWidgetItem::setSelected(bool selected){ + if (selected) { + widget->setStyleSheet("QWidget{background: #3D6BE5; border-radius: 4px;}"); + } else { + widget->setStyleSheet("QListWidget::Item:hover{background:#FF3D6BE5;border-radius: 4px;}"); + } +} + + +//设置输出设备的设备名字和名称 +void UkuiListWidgetItem::setLabelText(QString portLabel, QString deviceLabel){ + + this->portLabel->setText(portLabel); + this->deviceLabel->setText(deviceLabel); +} + +void UkuiListWidgetItem::mousePressEvent(QMouseEvent *event) +{ + QWidget::mousePressEvent(event); + qDebug() << "Mouse Press Event" << this->portLabel->text() << this->deviceLabel->text() << isCheckBluetoothInput; + //蓝牙输入去除勾选 + if (this->deviceLabel->text().contains("bluez_card")) { + if (isCheckBluetoothInput == false) + isCheckBluetoothInput = true; + else { + isCheckBluetoothInput = false; + QString cmd = "pactl set-card-profile "+this->deviceLabel->text()+" a2dp_sink"; + system(cmd.toLocal8Bit().data()); + } + } +} + +//void UkuiListWidgetItem::paintEvent(QPaintEvent *event) +//{ +// QStyleOption opt; +// opt.init(this); +// QPainter p(this); +//// double transparence = transparency * 255; +// QColor color = palette().color(QPalette::Base); +//// color.setAlpha(transparence); +// QBrush brush = QBrush(color); +// p.setBrush(brush); +// p.setPen(Qt::NoPen); +// QPainterPath path; +// opt.rect.adjust(0,0,0,0); +// path.addRoundedRect(opt.rect,6,6); +// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; +// p.drawRoundedRect(opt.rect,6,6); +// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +//// QWidget::paintEvent(event); +//} + diff --git a/audio/ukui_list_widget_item.h b/audio/ukui_list_widget_item.h new file mode 100644 index 0000000..2a9d55f --- /dev/null +++ b/audio/ukui_list_widget_item.h @@ -0,0 +1,82 @@ +#ifndef UKUILISTWIDGETITEM_H +#define UKUILISTWIDGETITEM_H + + +/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- + * + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +class UkuiListWidget : public QListWidget +{ + Q_OBJECT +public: + UkuiListWidget(QWidget *parent = nullptr); + ~UkuiListWidget(); +protected: + void paintEvent(QPaintEvent*event) { + int i; + for (i = 0 ;i < this->count();i++) { + QListWidgetItem *item = this->item(i); +// item->setTextColor(QColor(0,0,0,0)); + delete item; + } + QListWidget::paintEvent(event); + } + +}; + +class UkuiListWidgetItem : public QWidget +{ + Q_OBJECT + +public: + UkuiListWidgetItem(QWidget *parent = 0); + ~UkuiListWidgetItem(); + +public: + void setLabelText(QString portText,QString deviceLabel); +// void setLabelTextIsWhite(bool selected); + + void setSelected(bool selected); + +// QString text(); + + QString portName; + QLabel * portLabel; + QLabel * deviceLabel; + +protected: +// void paintEvent(QPaintEvent *event); + void mousePressEvent(QMouseEvent *ev); + +private: + QWidget * widget; + +}; + +#endif // UKUILISTWIDGETITEM_H diff --git a/build-aux/git-version-gen b/build-aux/git-version-gen new file mode 100755 index 0000000..d55dceb --- /dev/null +++ b/build-aux/git-version-gen @@ -0,0 +1,154 @@ +#!/bin/sh +# Print a version string. +scriptversion=2009-05-04.22 + +# Copyright (C) 2007-2008 Free Software Foundation +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. + +# This script is derived from GIT-VERSION-GEN from GIT: http://git.or.cz/. +# It may be run two ways: +# - from a git repository in which the "git describe" command below +# produces useful output (thus requiring at least one signed tag) +# - from a non-git-repo directory containing a .tarball-version file, which +# presumes this script is invoked like "./git-version-gen .tarball-version". + +# In order to use intra-version strings in your project, you will need two +# separate generated version string files: +# +# .tarball-version - present only in a distribution tarball, and not in +# a checked-out repository. Created with contents that were learned at +# the last time autoconf was run, and used by git-version-gen. Must not +# be present in either $(srcdir) or $(builddir) for git-version-gen to +# give accurate answers during normal development with a checked out tree, +# but must be present in a tarball when there is no version control system. +# Therefore, it cannot be used in any dependencies. GNUmakefile has +# hooks to force a reconfigure at distribution time to get the value +# correct, without penalizing normal development with extra reconfigures. +# +# .version - present in a checked-out repository and in a distribution +# tarball. Usable in dependencies, particularly for files that don't +# want to depend on config.h but do want to track version changes. +# Delete this file prior to any autoconf run where you want to rebuild +# files to pick up a version string change; and leave it stale to +# minimize rebuild time after unrelated changes to configure sources. +# +# It is probably wise to add these two files to .gitignore, so that you +# don't accidentally commit either generated file. +# +# Use the following line in your configure.ac, so that $(VERSION) will +# automatically be up-to-date each time configure is run (and note that +# since configure.ac no longer includes a version string, Makefile rules +# should not depend on configure.ac for version updates). +# +# AC_INIT([GNU project], +# m4_esyscmd([build-aux/git-version-gen .tarball-version]), +# [bug-project@example]) +# +# Then use the following lines in your Makefile.am, so that .version +# will be present for dependencies, and so that .tarball-version will +# exist in distribution tarballs. +# +# BUILT_SOURCES = $(top_srcdir)/.version +# $(top_srcdir)/.version: +# echo $(VERSION) > $@-t && mv $@-t $@ +# dist-hook: +# echo $(VERSION) > $(distdir)/.tarball-version + +case $# in + 1) ;; + *) echo 1>&2 "Usage: $0 \$srcdir/.tarball-version"; exit 1;; +esac + +tarball_version_file=$1 +nl=' +' + +# First see if there is a tarball-only version file. +# then try "git describe", then default. +if test -f $tarball_version_file +then + v=`cat $tarball_version_file` || exit 1 + case $v in + *$nl*) v= ;; # reject multi-line output + [0-9]*) ;; + *) v= ;; + esac + test -z "$v" \ + && echo "$0: WARNING: $tarball_version_file seems to be damaged" 1>&2 +fi + +if test -n "$v" +then + : # use $v +elif test -d .git \ + && v=`git describe --abbrev=4 --match='${UKUI_TAG_PATTERN}_*' HEAD 2>/dev/null \ + || git describe --abbrev=4 HEAD 2>/dev/null` \ + && case $v in + ${UKUI_TAG_PATTERN}_[0-9]*) ;; + *) (exit 1) ;; + esac +then + # Is this a new git that lists number of commits since the last + # tag or the previous older version that did not? + # Newer: v6.10-77-g0f8faeb + # Older: v6.10-g0f8faeb + case $v in + *-*-*) : git describe is okay three part flavor ;; + *-*) + : git describe is older two part flavor + # Recreate the number of commits and rewrite such that the + # result is the same as if we were using the newer version + # of git describe. + vtag=`echo "$v" | sed 's/-.*//'` + numcommits=`git rev-list "$vtag"..HEAD | wc -l` + v=`echo "$v" | sed "s/\(.*\)-\(.*\)/\1-$numcommits-\2/"`; + ;; + esac + + # Change the first '-' to a '.', so version-comparing tools work properly. + # Remove the "g" in git describe's output string, to save a byte. + v=`echo "$v" | sed 's/-/./;s/\(.*\)-g/\1-/'`; +else + v=UNKNOWN +fi + +#v=`echo "$v" |sed 's/^v//'` + +v=`echo "$v" | sed "s/${UKUI_TAG_PATTERN}_//" | tr _ .` + +# Don't declare a version "dirty" merely because a time stamp has changed. +git status > /dev/null 2>&1 + +dirty=`sh -c 'git diff-index --name-only HEAD' 2>/dev/null` || dirty= +case "$dirty" in + '') ;; + *) # Append the suffix only if there isn't one already. + case $v in + *-dirty) ;; + *) v="$v-dirty" ;; + esac ;; +esac + +# Omit the trailing newline, so that m4_esyscmd can use the result directly. +echo "$v" | tr -d '\012' + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-end: "$" +# End: diff --git a/data/Makefile.am b/data/Makefile.am new file mode 100644 index 0000000..f16f680 --- /dev/null +++ b/data/Makefile.am @@ -0,0 +1,40 @@ +NULL = + +SUBDIRS = \ + icons \ + $(NULL) + +@INTLTOOL_DESKTOP_RULE@ +autostartdir = $(sysconfdir)/xdg/autostart +autostart_in_files = ukui-volume-control-applet.desktop.in +autostart_DATA = $(autostart_in_files:.desktop.in=.desktop) + +appsdir = $(datadir)/applications +apps_in_files = ukui-volume-control.desktop.in +apps_DATA = $(apps_in_files:.desktop.in=.desktop) + +gsettingsschema_in_files = org.ukui.media.gschema.xml.in +gsettings_SCHEMAS = $(gsettingsschema_in_files:.xml.in=.xml) +@GSETTINGS_RULES@ +@INTLTOOL_XML_RULE@ + +EXTRA_DIST = \ + $(autostart_in_files) \ + ukui-volume-control.desktop.in.in \ + $(gsettingsschema_in_files) \ + $(NULL) + +CLEANFILES = \ + ukui-volume-control.desktop \ + $(gsettings_SCHEMAS) \ + $(NULL) + +DISTCLEANFILES = \ + ukui-volume-control-applet.desktop \ + $(NULL) + +MAINTAINERCLEANFILES = \ + Makefile.in \ + $(gsettings_SCHEMAS:.xml=.valid) + +-include $(top_srcdir)/git.mk diff --git a/data/icons/16x16/Makefile.am b/data/icons/16x16/Makefile.am new file mode 100644 index 0000000..05a9700 --- /dev/null +++ b/data/icons/16x16/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = status + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/16x16/status/Makefile.am b/data/icons/16x16/status/Makefile.am new file mode 100644 index 0000000..9ca7ba0 --- /dev/null +++ b/data/icons/16x16/status/Makefile.am @@ -0,0 +1,21 @@ +NULL = + +themedir = $(pkgdatadir)/icons/hicolor +size = 16x16 +context = status + +iconsdir = $(themedir)/$(size)/$(context) + +icons_DATA = \ + audio-input-microphone-high.png \ + audio-input-microphone-low.png \ + audio-input-microphone-medium.png \ + audio-input-microphone-muted.png \ + $(NULL) + +EXTRA_DIST = \ + $(icons_DATA) \ + $(NULL) + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/16x16/status/audio-input-microphone-high.png b/data/icons/16x16/status/audio-input-microphone-high.png new file mode 100644 index 0000000..160d2b8 Binary files /dev/null and b/data/icons/16x16/status/audio-input-microphone-high.png differ diff --git a/data/icons/16x16/status/audio-input-microphone-low.png b/data/icons/16x16/status/audio-input-microphone-low.png new file mode 100644 index 0000000..b08ab64 Binary files /dev/null and b/data/icons/16x16/status/audio-input-microphone-low.png differ diff --git a/data/icons/16x16/status/audio-input-microphone-medium.png b/data/icons/16x16/status/audio-input-microphone-medium.png new file mode 100644 index 0000000..48a4c05 Binary files /dev/null and b/data/icons/16x16/status/audio-input-microphone-medium.png differ diff --git a/data/icons/16x16/status/audio-input-microphone-muted.png b/data/icons/16x16/status/audio-input-microphone-muted.png new file mode 100644 index 0000000..7aed52c Binary files /dev/null and b/data/icons/16x16/status/audio-input-microphone-muted.png differ diff --git a/data/icons/22x22/Makefile.am b/data/icons/22x22/Makefile.am new file mode 100644 index 0000000..05a9700 --- /dev/null +++ b/data/icons/22x22/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = status + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/22x22/status/Makefile.am b/data/icons/22x22/status/Makefile.am new file mode 100644 index 0000000..d855c38 --- /dev/null +++ b/data/icons/22x22/status/Makefile.am @@ -0,0 +1,21 @@ +NULL = + +themedir = $(pkgdatadir)/icons/hicolor +size = 22x22 +context = status + +iconsdir = $(themedir)/$(size)/$(context) + +icons_DATA = \ + audio-input-microphone-high.png \ + audio-input-microphone-low.png \ + audio-input-microphone-medium.png \ + audio-input-microphone-muted.png \ + $(NULL) + +EXTRA_DIST = \ + $(icons_DATA) \ + $(NULL) + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/22x22/status/audio-input-microphone-high.png b/data/icons/22x22/status/audio-input-microphone-high.png new file mode 100644 index 0000000..ca3770f Binary files /dev/null and b/data/icons/22x22/status/audio-input-microphone-high.png differ diff --git a/data/icons/22x22/status/audio-input-microphone-low.png b/data/icons/22x22/status/audio-input-microphone-low.png new file mode 100644 index 0000000..75d0612 Binary files /dev/null and b/data/icons/22x22/status/audio-input-microphone-low.png differ diff --git a/data/icons/22x22/status/audio-input-microphone-medium.png b/data/icons/22x22/status/audio-input-microphone-medium.png new file mode 100644 index 0000000..c1efeb5 Binary files /dev/null and b/data/icons/22x22/status/audio-input-microphone-medium.png differ diff --git a/data/icons/22x22/status/audio-input-microphone-muted.png b/data/icons/22x22/status/audio-input-microphone-muted.png new file mode 100644 index 0000000..9f3dd3c Binary files /dev/null and b/data/icons/22x22/status/audio-input-microphone-muted.png differ diff --git a/data/icons/24x24/Makefile.am b/data/icons/24x24/Makefile.am new file mode 100644 index 0000000..05a9700 --- /dev/null +++ b/data/icons/24x24/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = status + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/24x24/status/Makefile.am b/data/icons/24x24/status/Makefile.am new file mode 100644 index 0000000..6b9b71c --- /dev/null +++ b/data/icons/24x24/status/Makefile.am @@ -0,0 +1,21 @@ +NULL = + +themedir = $(pkgdatadir)/icons/hicolor +size = 24x24 +context = status + +iconsdir = $(themedir)/$(size)/$(context) + +icons_DATA = \ + audio-input-microphone-high.png \ + audio-input-microphone-low.png \ + audio-input-microphone-medium.png \ + audio-input-microphone-muted.png \ + $(NULL) + +EXTRA_DIST = \ + $(icons_DATA) \ + $(NULL) + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/24x24/status/audio-input-microphone-high.png b/data/icons/24x24/status/audio-input-microphone-high.png new file mode 100644 index 0000000..fe10ab2 Binary files /dev/null and b/data/icons/24x24/status/audio-input-microphone-high.png differ diff --git a/data/icons/24x24/status/audio-input-microphone-low.png b/data/icons/24x24/status/audio-input-microphone-low.png new file mode 100644 index 0000000..ee180d8 Binary files /dev/null and b/data/icons/24x24/status/audio-input-microphone-low.png differ diff --git a/data/icons/24x24/status/audio-input-microphone-medium.png b/data/icons/24x24/status/audio-input-microphone-medium.png new file mode 100644 index 0000000..eb6aa28 Binary files /dev/null and b/data/icons/24x24/status/audio-input-microphone-medium.png differ diff --git a/data/icons/24x24/status/audio-input-microphone-muted.png b/data/icons/24x24/status/audio-input-microphone-muted.png new file mode 100644 index 0000000..b969738 Binary files /dev/null and b/data/icons/24x24/status/audio-input-microphone-muted.png differ diff --git a/data/icons/32x32/Makefile.am b/data/icons/32x32/Makefile.am new file mode 100644 index 0000000..05a9700 --- /dev/null +++ b/data/icons/32x32/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = status + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/32x32/status/Makefile.am b/data/icons/32x32/status/Makefile.am new file mode 100644 index 0000000..24d4e98 --- /dev/null +++ b/data/icons/32x32/status/Makefile.am @@ -0,0 +1,21 @@ +NULL = + +themedir = $(pkgdatadir)/icons/hicolor +size = 32x32 +context = status + +iconsdir = $(themedir)/$(size)/$(context) + +icons_DATA = \ + audio-input-microphone-high.png \ + audio-input-microphone-low.png \ + audio-input-microphone-medium.png \ + audio-input-microphone-muted.png \ + $(NULL) + +EXTRA_DIST = \ + $(icons_DATA) \ + $(NULL) + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/32x32/status/audio-input-microphone-high.png b/data/icons/32x32/status/audio-input-microphone-high.png new file mode 100644 index 0000000..8bd9d5b Binary files /dev/null and b/data/icons/32x32/status/audio-input-microphone-high.png differ diff --git a/data/icons/32x32/status/audio-input-microphone-low.png b/data/icons/32x32/status/audio-input-microphone-low.png new file mode 100644 index 0000000..8a09c9f Binary files /dev/null and b/data/icons/32x32/status/audio-input-microphone-low.png differ diff --git a/data/icons/32x32/status/audio-input-microphone-medium.png b/data/icons/32x32/status/audio-input-microphone-medium.png new file mode 100644 index 0000000..a45c79c Binary files /dev/null and b/data/icons/32x32/status/audio-input-microphone-medium.png differ diff --git a/data/icons/32x32/status/audio-input-microphone-muted.png b/data/icons/32x32/status/audio-input-microphone-muted.png new file mode 100644 index 0000000..8161f1f Binary files /dev/null and b/data/icons/32x32/status/audio-input-microphone-muted.png differ diff --git a/data/icons/Makefile.am b/data/icons/Makefile.am new file mode 100644 index 0000000..7362b10 --- /dev/null +++ b/data/icons/Makefile.am @@ -0,0 +1,24 @@ +NULL = + +SUBDIRS = \ + scalable \ + 16x16 \ + 22x22 \ + 24x24 \ + 32x32 \ + $(NULL) + +gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/ukui + +install-data-hook: update-icon-cache +uninstall-hook: update-icon-cache +update-icon-cache: + @-if test -z "$(DESTDIR)"; then \ + echo "Updating Gtk icon cache."; \ + $(gtk_update_icon_cache); \ + else \ + echo "*** Icon cache not updated. After (un)install, run this:"; \ + echo "*** $(gtk_update_icon_cache)"; \ + fi + +-include $(top_srcdir)/git.mk diff --git a/data/icons/scalable/Makefile.am b/data/icons/scalable/Makefile.am new file mode 100644 index 0000000..2cf31cf --- /dev/null +++ b/data/icons/scalable/Makefile.am @@ -0,0 +1,4 @@ +SUBDIRS = status devices + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/scalable/devices/Makefile.am b/data/icons/scalable/devices/Makefile.am new file mode 100644 index 0000000..404f6e5 --- /dev/null +++ b/data/icons/scalable/devices/Makefile.am @@ -0,0 +1,35 @@ +NULL = + +themedir = $(pkgdatadir)/icons/hicolor +size = 48x48 +context = devices + +iconsdir = $(themedir)/$(size)/$(context) + +icons_DATA = \ + audio-speaker-center.svg \ + audio-speaker-center-testing.svg \ + audio-speaker-left-back.svg \ + audio-speaker-left-back-testing.svg \ + audio-speaker-left.svg \ + audio-speaker-left-side.svg \ + audio-speaker-left-side-testing.svg \ + audio-speaker-left-testing.svg \ + audio-speaker-right-back.svg \ + audio-speaker-right-back-testing.svg \ + audio-speaker-right.svg \ + audio-speaker-right-side.svg \ + audio-speaker-right-side-testing.svg \ + audio-speaker-right-testing.svg \ + audio-speaker-center-back-testing.svg \ + audio-speaker-center-back.svg \ + audio-subwoofer.svg \ + audio-subwoofer-testing.svg \ + $(NULL) + +EXTRA_DIST = \ + $(icons_DATA) \ + $(NULL) + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/scalable/devices/audio-speaker-center-back-testing.svg b/data/icons/scalable/devices/audio-speaker-center-back-testing.svg new file mode 100644 index 0000000..55f3e4d --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-center-back-testing.svg @@ -0,0 +1,539 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + center + testing + highlighted + + + audio-speaker-center-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-center-back.svg b/data/icons/scalable/devices/audio-speaker-center-back.svg new file mode 100644 index 0000000..fa93c18 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-center-back.svg @@ -0,0 +1,506 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + center + + + audio-speaker-center + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-center-testing.svg b/data/icons/scalable/devices/audio-speaker-center-testing.svg new file mode 100644 index 0000000..e9f37b9 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-center-testing.svg @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + center + testing + highlighted + + + audio-speaker-center-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-center.svg b/data/icons/scalable/devices/audio-speaker-center.svg new file mode 100644 index 0000000..2833128 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-center.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + center + + + audio-speaker-center + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-left-back-testing.svg b/data/icons/scalable/devices/audio-speaker-left-back-testing.svg new file mode 100644 index 0000000..07c8ae8 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-left-back-testing.svg @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + left-back + testing + highlighted + + + audio-speaker-left-b-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-left-back.svg b/data/icons/scalable/devices/audio-speaker-left-back.svg new file mode 100644 index 0000000..df4a81b --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-left-back.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + left-back + + + audio-speaker-left-back + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-left-side-testing.svg b/data/icons/scalable/devices/audio-speaker-left-side-testing.svg new file mode 100644 index 0000000..0639ea2 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-left-side-testing.svg @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + left-side + testing + highlighted + + + audio-speaker-left-side-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-left-side.svg b/data/icons/scalable/devices/audio-speaker-left-side.svg new file mode 100644 index 0000000..90b95aa --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-left-side.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + left-side + + + audio-speaker-left-side + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-left-testing.svg b/data/icons/scalable/devices/audio-speaker-left-testing.svg new file mode 100644 index 0000000..0c40d37 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-left-testing.svg @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + left + testing + highlighted + + + audio-speaker-left-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-left.svg b/data/icons/scalable/devices/audio-speaker-left.svg new file mode 100644 index 0000000..55579f2 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-left.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + left + + + audio-speaker-left + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-right-back-testing.svg b/data/icons/scalable/devices/audio-speaker-right-back-testing.svg new file mode 100644 index 0000000..26ea427 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-right-back-testing.svg @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + right-back + testing + highlighted + + + audio-speaker-right-back-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-right-back.svg b/data/icons/scalable/devices/audio-speaker-right-back.svg new file mode 100644 index 0000000..f7f8178 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-right-back.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + right-back + + + audio-speaker-right-back + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-right-side-testing.svg b/data/icons/scalable/devices/audio-speaker-right-side-testing.svg new file mode 100644 index 0000000..ad16311 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-right-side-testing.svg @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + right-side + testing + highlighted + + + audio-speaker-right-side-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-right-side.svg b/data/icons/scalable/devices/audio-speaker-right-side.svg new file mode 100644 index 0000000..9712896 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-right-side.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + right-side + + + audio-speaker-right-side + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-right-testing.svg b/data/icons/scalable/devices/audio-speaker-right-testing.svg new file mode 100644 index 0000000..028ca8c --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-right-testing.svg @@ -0,0 +1,913 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + right + testing + highlighted + + + audio-speaker-right-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-speaker-right.svg b/data/icons/scalable/devices/audio-speaker-right.svg new file mode 100644 index 0000000..f532b61 --- /dev/null +++ b/data/icons/scalable/devices/audio-speaker-right.svg @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + speaker + output + right + + + audio-speaker-right + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-subwoofer-testing.svg b/data/icons/scalable/devices/audio-subwoofer-testing.svg new file mode 100644 index 0000000..a689150 --- /dev/null +++ b/data/icons/scalable/devices/audio-subwoofer-testing.svg @@ -0,0 +1,240 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + audio + device + subwoofer + output + testing + highlighted + + + audio-subwoofer-testing + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/devices/audio-subwoofer.svg b/data/icons/scalable/devices/audio-subwoofer.svg new file mode 100644 index 0000000..36dce73 --- /dev/null +++ b/data/icons/scalable/devices/audio-subwoofer.svg @@ -0,0 +1,325 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + audio + device + subwoofer + output + + + audio-subwoofer + + + Evangeline McGlynn + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/status/Makefile.am b/data/icons/scalable/status/Makefile.am new file mode 100644 index 0000000..29c6369 --- /dev/null +++ b/data/icons/scalable/status/Makefile.am @@ -0,0 +1,21 @@ +NULL = + +themedir = $(pkgdatadir)/icons/hicolor +size = scalable +context = status + +iconsdir = $(themedir)/$(size)/$(context) + +icons_DATA = \ + audio-input-microphone-high.svg \ + audio-input-microphone-low.svg \ + audio-input-microphone-medium.svg \ + audio-input-microphone-muted.svg \ + $(NULL) + +EXTRA_DIST = \ + $(icons_DATA) \ + $(NULL) + + +-include $(top_srcdir)/git.mk diff --git a/data/icons/scalable/status/audio-input-microphone-high.svg b/data/icons/scalable/status/audio-input-microphone-high.svg new file mode 100644 index 0000000..fa30895 --- /dev/null +++ b/data/icons/scalable/status/audio-input-microphone-high.svg @@ -0,0 +1,1076 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/status/audio-input-microphone-low.svg b/data/icons/scalable/status/audio-input-microphone-low.svg new file mode 100644 index 0000000..2aec722 --- /dev/null +++ b/data/icons/scalable/status/audio-input-microphone-low.svg @@ -0,0 +1,1045 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/status/audio-input-microphone-medium.svg b/data/icons/scalable/status/audio-input-microphone-medium.svg new file mode 100644 index 0000000..ba8b5a4 --- /dev/null +++ b/data/icons/scalable/status/audio-input-microphone-medium.svg @@ -0,0 +1,1066 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/icons/scalable/status/audio-input-microphone-muted.svg b/data/icons/scalable/status/audio-input-microphone-muted.svg new file mode 100644 index 0000000..962b4de --- /dev/null +++ b/data/icons/scalable/status/audio-input-microphone-muted.svg @@ -0,0 +1,1040 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/images/application-audio.png b/data/images/application-audio.png new file mode 100644 index 0000000..e4d717e Binary files /dev/null and b/data/images/application-audio.png differ diff --git a/data/images/audio-input-microphone-high.png b/data/images/audio-input-microphone-high.png new file mode 100644 index 0000000..160d2b8 Binary files /dev/null and b/data/images/audio-input-microphone-high.png differ diff --git a/data/images/audio-input-microphone-low.png b/data/images/audio-input-microphone-low.png new file mode 100644 index 0000000..b08ab64 Binary files /dev/null and b/data/images/audio-input-microphone-low.png differ diff --git a/data/images/audio-input-microphone-medium.png b/data/images/audio-input-microphone-medium.png new file mode 100644 index 0000000..48a4c05 Binary files /dev/null and b/data/images/audio-input-microphone-medium.png differ diff --git a/data/images/audio-input-microphone-muted.png b/data/images/audio-input-microphone-muted.png new file mode 100644 index 0000000..7aed52c Binary files /dev/null and b/data/images/audio-input-microphone-muted.png differ diff --git a/data/images/audio-volume-high.png b/data/images/audio-volume-high.png new file mode 100644 index 0000000..98c8042 Binary files /dev/null and b/data/images/audio-volume-high.png differ diff --git a/data/images/audio-volume-low.png b/data/images/audio-volume-low.png new file mode 100644 index 0000000..5a46c6a Binary files /dev/null and b/data/images/audio-volume-low.png differ diff --git a/data/images/audio-volume-medium.png b/data/images/audio-volume-medium.png new file mode 100644 index 0000000..99eba04 Binary files /dev/null and b/data/images/audio-volume-medium.png differ diff --git a/data/images/audio-volume-muted.png b/data/images/audio-volume-muted.png new file mode 100644 index 0000000..7d6d836 Binary files /dev/null and b/data/images/audio-volume-muted.png differ diff --git a/data/images/blank.png b/data/images/blank.png new file mode 100644 index 0000000..9e938b3 Binary files /dev/null and b/data/images/blank.png differ diff --git a/data/images/emblem-unreadable.png b/data/images/emblem-unreadable.png new file mode 100644 index 0000000..6a712db Binary files /dev/null and b/data/images/emblem-unreadable.png differ diff --git a/data/images/images.qrc b/data/images/images.qrc new file mode 100644 index 0000000..cb77645 --- /dev/null +++ b/data/images/images.qrc @@ -0,0 +1,15 @@ + + + blank.png + emblem-unreadable.png + audio-volume-muted.png + audio-volume-medium.png + audio-volume-low.png + audio-volume-high.png + application-audio.png + audio-input-microphone-muted.png + audio-input-microphone-medium.png + audio-input-microphone-low.png + audio-input-microphone-high.png + + diff --git a/data/org.ukui.media.gschema.xml.in b/data/org.ukui.media.gschema.xml.in new file mode 100644 index 0000000..00e7b73 --- /dev/null +++ b/data/org.ukui.media.gschema.xml.in @@ -0,0 +1,13 @@ + + + + + + + + 'vertical' + ukui-volume-control-applet orientation + Used to set the orientation of ukui-volume-control-applet + + + diff --git a/data/org.ukui.media.sound.gschema.xml b/data/org.ukui.media.sound.gschema.xml new file mode 100644 index 0000000..add9b80 --- /dev/null +++ b/data/org.ukui.media.sound.gschema.xml @@ -0,0 +1,14 @@ + + + + '' + Filename + Prompt sound file name. + + + '' + Name + Description associated with a custom keybinding. + + + diff --git a/data/org.ukui.sound.gschema.xml b/data/org.ukui.sound.gschema.xml new file mode 100644 index 0000000..18914b7 --- /dev/null +++ b/data/org.ukui.sound.gschema.xml @@ -0,0 +1,34 @@ + + + + '' + Default mixer device + The default mixer device used by the multimedia key bindings. + + + [] + Default mixer tracks + The default mixer tracks used by the multimedia key bindings. + + + false + Enable ESD + Enable sound server startup. + + + false + Sounds for events + Whether to play sounds on user events. + + + 'freedesktop' + Sound theme name + The XDG sound theme to use for event sounds. + + + false + Input feedback sounds + Whether to play sounds on input events. + + + diff --git a/data/ukui-media-control-mute-led.service b/data/ukui-media-control-mute-led.service new file mode 100644 index 0000000..437ed84 --- /dev/null +++ b/data/ukui-media-control-mute-led.service @@ -0,0 +1,11 @@ +[Unit] +Description=Mate media control leds daemon +After=lightdm.service + +[Service] +Restart=always +RestartSec=2 +ExecStart=/usr/bin/ukui-media-control-led + +[Install] +WantedBy=multi-user.target diff --git a/data/ukui-volume-control-applet.desktop b/data/ukui-volume-control-applet.desktop new file mode 100644 index 0000000..1308a38 --- /dev/null +++ b/data/ukui-volume-control-applet.desktop @@ -0,0 +1,17 @@ +[Desktop Entry] +_Name=Volume Control +_Comment=Show desktop volume control +Icon=multimedia-volume-control +Exec=ukui-volume-control-applet-qt +Terminal=false +Type=Application +Categories=AudioVideo;Mixer;Settings;HardwareSettings; +Keywords=UKUI;volume;control;mixer;settings;sound; +NoDisplay=true +OnlyShowIn=UKUI; +X-UKUI-Bugzilla-Bugzilla=UKUI +X-UKUI-Bugzilla-Product=ukui-media +X-UKUI-Bugzilla-Component=ukui-volume-control +# See http://bugzilla.ukui.org/show_bug.cgi?id=568320 +X-UKUI-AutoRestart=true +X-UKUI-Autostart-Phase=Application diff --git a/data/ukui-volume-control.desktop.in.in b/data/ukui-volume-control.desktop.in.in new file mode 100644 index 0000000..0c9c0b7 --- /dev/null +++ b/data/ukui-volume-control.desktop.in.in @@ -0,0 +1,16 @@ +[Desktop Entry] +_Name=Sound +_Comment=Change sound volume and sound events +Exec=ukui-volume-control +Icon=multimedia-volume-control +Terminal=false +Type=Application +StartupNotify=true +Categories=AudioVideo;Mixer;Settings;HardwareSettings; +Keywords=UKUI;volume;control;mixer;settings;sound;events; +OnlyShowIn=UKUI; +X-UKUI-Bugzilla-Bugzilla=UKUI +X-UKUI-Bugzilla-Product=ukui-media +X-UKUI-Bugzilla-Component=ukui-volume-control +X-UKUI-Bugzilla-Version=@VERSION@ +NoDisplay=true diff --git a/man/Makefile.am b/man/Makefile.am new file mode 100644 index 0000000..83ba2fd --- /dev/null +++ b/man/Makefile.am @@ -0,0 +1,3 @@ +man_MANS = ukui-volume-control.1 ukui-volume-control-applet.1 ukui-volume-control-applet-qt.1 + +EXTRA_DIST = $(man_MANS) diff --git a/man/ukui-media-control-led.1 b/man/ukui-media-control-led.1 new file mode 100644 index 0000000..41a1c58 --- /dev/null +++ b/man/ukui-media-control-led.1 @@ -0,0 +1,35 @@ +.\" Man Page for ukui-volume-control-applet-qt +.TH UKUI-MEDIA-CONTROL-LED 1 "20 February 2019" "UKUI Desktop Environment" +.\" Please adjust this date when revising the manpage. +.\" +.SH "NAME" +\fBukui-media-control-led\fR \- The UKUI Volume Control Applet(Qt) +.SH "SYNOPSIS" +.B ukui-media-control-led [OPTIONS] +.SH "DESCRIPTION" +The UKUI Volume Control Applet is used for adjusting audio levels from the notification area. +.SH "OPTIONS" +.TP +\fB\-v, \-\-version\fR +Output version information and exit. +.TP +\fB\-d, \-\-debug\fR +Enable debugging code. +.TP +\fB\-\-display=DISPLAY\fR +X display to use. +.TP +\fB\-?, \-h, \-\-help\fR +Print standard command line options. +.TP +\fB\-\-help\-all\fR +Print all command line options. +.SH "BUGS" +.SS Should you encounter any bugs, they may be reported at: +http://github.com/ukui/ukui-media/issues +.SH "AUTHORS" +.SS This Manual Page has been written for the UKUI Desktop Environment by: +Adam Erdman (2014) +.SH "SEE ALSO" +.SS Further information may also be available at: http://ukui.org +.BR ukui-media-control-led (1) diff --git a/man/ukui-volume-control-applet-qt.1 b/man/ukui-volume-control-applet-qt.1 new file mode 100644 index 0000000..abcea6b --- /dev/null +++ b/man/ukui-volume-control-applet-qt.1 @@ -0,0 +1,35 @@ +.\" Man Page for ukui-volume-control-applet-qt +.TH UKUI-VOLUME-CONTROL-APPLET-QT 1 "20 February 2019" "UKUI Desktop Environment" +.\" Please adjust this date when revising the manpage. +.\" +.SH "NAME" +\fBukui-volume-control-applet-qt\fR \- The UKUI Volume Control Applet(Qt) +.SH "SYNOPSIS" +.B ukui-volume-control-qt [OPTIONS] +.SH "DESCRIPTION" +The UKUI Volume Control Applet is used for adjusting audio levels from the notification area. +.SH "OPTIONS" +.TP +\fB\-v, \-\-version\fR +Output version information and exit. +.TP +\fB\-d, \-\-debug\fR +Enable debugging code. +.TP +\fB\-\-display=DISPLAY\fR +X display to use. +.TP +\fB\-?, \-h, \-\-help\fR +Print standard command line options. +.TP +\fB\-\-help\-all\fR +Print all command line options. +.SH "BUGS" +.SS Should you encounter any bugs, they may be reported at: +http://github.com/ukui/ukui-media/issues +.SH "AUTHORS" +.SS This Manual Page has been written for the UKUI Desktop Environment by: +Adam Erdman (2014) +.SH "SEE ALSO" +.SS Further information may also be available at: http://ukui.org +.BR ukui-volume-control (1) diff --git a/po/ChangeLog b/po/ChangeLog new file mode 100644 index 0000000..06cd42c --- /dev/null +++ b/po/ChangeLog @@ -0,0 +1,6821 @@ +2009-04-18 Funda Wang + + * zh_CN.po: Updated zh_CN translation. + +2009-04-08 Mark Krapivner + + * he.po: Updated Hebrew translation. + +2009-04-03 Simos Xenitellis + + * el.po: Updated Greek translation (Sterios Prosiniklis). + +2009-04-03 Baris Cicek + + * tr.po: Updated Turkish translation. + +2009-03-26 Amitakhya Phukan + + * as.po: Updated Assamese translations. + +2009-03-26 Amitakhya Phukan + + * as.po: Updated Assamese translations. + +2009-03-25 Shankar Prasad + + * kn.po: Updated few correction to Kannada translations. + +2009-03-23 Reinout van Schouwen + + * nl.po: Fixed typo (geluidgen -> geluiden) + +2009-03-23 Shankar Prasad + + * kn.po: Updated Kannada translations. + +2008-03-22 Nickolay V. Shmyrev + + * ru.po: Updated Russian translation. + +2009-03-21 Goran Rakic + + * sr.po, sr@latin.po: Updated Serbian translation by Miloš Popović. + +2009-03-18 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2009-03-18 Djihed Afifi + + * ar.po: Updated Arabic translation by Anas Afif Emad. + +2009-03-18 Gabor Kelemen + + * hu.po: Translation updated. + +2009-03-16 Marc-André Lureau + + * POTFILES.skip: added + sound-theme/sounds/mate-sounds-default.xml.in. + +2009-03-16 Kostas Papadimas + + * el.po: Updated Greek Translation by Fotis Tsamis. + +2009-03-15 Rajesh Ranjan + + * mai.po: corrected msgfmt chk for Maithili translation. + +2009-03-15 Ignacio Casal Quinteiro + + * gl.po: Updated Galician translation by Suso Baleato + +2009-03-15 Rajesh Ranjan + + * mai.po: added Maithili translation. + * LINGUAS: Added Maithili (mai) to the list of Languages. + +2009-03-14 Rajesh Ranjan + + * hi.po: Updated Hindi Translation. + +2009-03-14 Praveen Arimbrathodiyil + + * ml.po: Malayalam Translation updated by Abhishek Jacob. + +2009-03-14 Mișu Moldovan + + * ro.po: Updated Romanian translation by Adi Roiban. + +2009-03-14 Gabor Kelemen + + * hu.po: Translation updated. + +2009-03-14 Kenneth Nielsen + + * da.po: Updated Danish translation by Ask H. Larsen + +2009-03-13 Sandeep Shedmake + + * mr.po: Updated Marathi Translations. + +2009-03-13 felix@redhat.com> + + * ta.po: Tamil Translation updated + +2009-03-13 Runa Bhattacharjee + + * bn_IN.po: Updated Bengali India Translation + +2009-03-12 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2009-03-12 Gintautas Miliauskas + + * lt.po: Updated Lithuanian translation. + +2009-03-12 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2009-03-11 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2009-03-10 Inaki Larranaga Murgoitio + + * eu.po: Updated Basque translation. + +2009-03-10 Ankitkumar Patel + + * gu.po: Updated Gujarati Translations. + +2009-03-10 Tommi Vainikainen + + * fi.po: Updated Finnish translation. + +2009-03-10 Hendrik Richter + + * de.po: Updated German translation. + +2009-03-09 Tomasz Dominikowski + + * pl.po: Updated Polish translation + +2009-03-09 Krishnababu K + + * te.po: Updated Telugu Translation. + +2009-03-08 Yair Hershkovitz + + * he.po: Updated Hebrew translation. + +2009-03-08 Petr Kovar + + * cs.po: Updated Czech translation. + +2009-03-08 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2009-03-07 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2009-03-07 Milo Casagrande + + * it.po: Updated Italian translation. + +2009-03-07 Gabor Kelemen + + * hu.po: Translation updated. + +2009-03-07 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2009-03-07 Claude Paroz + + * fr.po: Updated French translation. + +2009-03-07 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2009-03-07 Wouter Bolsterlee + + * nl.po: Updated Dutch translation by Wouter Bolsterlee. + +2009-03-06 Krishnababu K + + * te.po: Updated Telugu Translation. + +2009-03-06 Philip Withnall + + * en_GB.po: Updated British English translation. + +2009-03-05 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2009-03-05 Gil Forcada + + * ca.po: Updated Catalan translation. + +2009-03-05 Jonh Wendell + + * pt_BR.po: Updated Brazilian Portuguese translation by Krix Apolinário + and myself. + +2009-03-05 Manoj Kumar Giri + + * or.po: Updated Oriya Translation + +2009-03-05 Jonh Wendell + + * POTFILES.in: Updated. + +2009-03-03 Claude Paroz + + * fr.po: Updated French translation. + +2009-03-03 Gabor Kelemen + + * hu.po: Translation updated. + +==================== 2.25.92 ==================== + +2009-03-02 Priit Laes + + * et.po: Translation updated by Ivar Smolin + +2009-03-01 Og Maciel + + * it.po: Updated Italian translation by Milo Casagrande. + +2009-02-28 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2009-02-28 Chao-Hsiung Liao + + * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + +2009-02-26 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2009-02-25 Ihar Hrachyshka + + * be@latin.po: Updated Belarusian Latin translation by Ihar Hrachyshka. + +2009-02-25 Christian Kirbach + + * de.po: Updated German translation. + +2008-09-24 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2009-02-23 Philip Withnall + + * en_GB.po: Updated British English translation. + +2008-09-19 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2009-02-18 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2009-02-18 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2009-02-17 Gabor Kelemen + + * hu.po: Translation updated. + +2009-02-17 Jani Monoses + + * ro.po: Updated Romanian translation + by Adi Roiban + +2009-02-17 Gil Forcada + + * ca.po: Updated Catalan translation. + +2009-02-17 Sweta Kothari + + * gu.po: Committed Gujarati Translation. + +2009-02-15 Wouter Bolsterlee + + * nl.po: Updated Dutch translation by Wouter Bolsterlee. + +2009-02-15 Kenneth Nielsen + + * da.po: Updated Danish translation by Ask H. Larsen + +2009-02-14 Tomasz Dominikowski + + * pl.po: Updated Polish translation + +2009-02-14 Jani Monoses + + * ro.po: Updated Romanian translation + by Adi Roiban + +2009-02-14 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2009-02-14 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2009-02-13 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2009-02-12 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2009-02-12 Inaki Larranaga Murgoitio + + * eu.po: Updated Basque translation. + +2009-02-11 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2009-02-11 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2009-02-10 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2009-02-10 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2009-02-07 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2009-02-07 Gabor Kelemen + + * hu.po: Translation updated. + +2009-02-05 Sweta Kothari + + * gu.po: Committed Gujarati Translation. + +2009-02-05 Chao-Hsiung Liao + + * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + +2009-01-27 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2009-01-25 Raivis Dejus + + * lv.po: Updated Latvian translation. + +2009-01-25 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2009-01-23 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2009-01-21 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2009-01-20 Bastien Nocera + + * POTFILES.in: + * POTFILES.skip: Update for distcheck + +2009-01-19 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2009-01-18 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2009-01-16 Thierry Randrianiriana + + * mg.po: Updated Malagasy translation. + +2009-01-08 Leonardo Ferreira Fontenelle + + * pt_BR.po: Updated Brazilian Portuguese translation. Contributed by + Djavan Fagundes. + +2009-01-05 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2009-01-04 Raivis Dejus + + * lv.po: Updated latvian translation + +2009-01-03 Priit Laes + + * et.po: Translation updated by Ivar Smolin + +2008-12-26 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2008-12-21 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2008-12-20 Claude Paroz + + * fr.po: Updated French translation. + +2008-12-19 Bastien Nocera + + * POTFILES.in: Add a .desktop file for g-v-c + +2008-12-17 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2008-12-16 William Jon McCann + + * POTFILES.in: Add missing files. + +2008-12-15 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2008-12-15 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2008-11-14 Jorge Gonzalez + + * es.po: Updated Spanish translation. + +2008-11-08 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-11-05 Nickolay V. Shmyrev + + * ru.po: Updated Russian translation by Anton Shestakov. + +2008-11-03 William Jon McCann + + * POTFILES.in: + +2008-11-02 Hendrik Richter + + * de.po: Updated German translation, fix #556582. + +2008-10-19 Djihed Afifi + + * ar.po: Updated Arabic Translation by Anas Afif Emad. + +2008-10-11 Ihar Hrachyshka + + * be@latin.po: Updated Belarusian Latin translation by Ihar Hračyška. + +2008-09-25 Jovan Naumovski + + * mk.po: Updated Macedonian translation. + +2008-09-24 Takeshi AIHANA + + * ja.po: Fixed wrong translation. + +2008-09-23 Laurent Dhima + + * sq.po: Updated Albanian Translation. + +2008-09-21 Kenneth Nielsen + + * da.po: Updated Danish translation by Kenneth Nielsen + +2008-09-22 Mugurel Tudor + + * ro.po: Updated Romanian translation by + Mişu Moldovan + +2008-09-21 Djihed Afifi + + * ar.po: Updated Arabic Translation by Anas Afif Emad. + +2008-09-21 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2008-09-20 Simos Xenitellis + + * el.po: Updated Greek translation. + +2008-09-20 Goran Rakić + + * sr.po, sr@latin.po: Updated Serbian Translation. + +2008-09-19 Tommi Vainikainen + + * fi.po: Fix from Timo Jyrinki. + +2008-09-19 Shankar Prasad + + * kn.po: Updated Kannada Translation. + +2008-09-18 I. Felix + + * ta.po: Tamil Translation updated + +2008-09-18 Shankar Prasad + + * kn.po: Added Kannada Translation. + * LINGUAS: Added kn to list of Languages + +2008-09-18 Inaki Larrañaga Murgoitio + + * eu.po: Updated Basque translation. + +2008-09-18 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-09-18 Gil Forcada + + * ca.po: Updated Catalan translation. + +2008-09-17 Rajesh Ranjan + + * hi.po: Updated Hindi Translation. + +2008-09-15 Gabor Kelemen + + * hu.po: Translation updated. + +2008-09-15 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-09-15 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2008-09-14 Goran Rakić + + * sr.po, sr@latin.po: Updated Serbian translation (by Miloš Popović). + +2008-09-14 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2008-09-14 Baris Cicek + + * tr.po: Updated Turkish Translation. + +2008-09-13 Gintautas Miliauskas + + * lt.po: Updated Lithuanian translation. + +2008-09-12 Sandeep Shedmake + + * mr.po: Updated Marathi Translations. + +2008-09-11 Robert Sedak + + * hr.po: Updated Croatian translation. + +2008-09-10 Krishnababu K + + * te.po: Updated Telugu Translation. + +2008-09-09 Luca Ferretti + + * it.po: Updated Italian translation by Milo Casagrande. + +2008-09-09 Robert Sedak + + * hr.po: Updated Croatian translation. + +2008-09-08 Tomasz Dominikowski + + * pl.po: Updated Polish translation + +2008-09-08 Robert Sedak + + * hr.po: Updated Croatian translation. + +2008-09-08 Petr Kovar + + * cs.po: Updated Czech translation. + +2008-09-07 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2008-09-07 Wouter Bolsterlee + + * nl.po: Updated Dutch translation by Wouter Bolsterlee. + +2008-09-06 Philip Withnall + + * en_GB.po: Updated British English translation. + +2008-09-06 Funda Wang + + * zh_CN.po: Updated zh_CN translation. + +2008-09-05 Runa Bhattacharjee + + * bn_IN.po: Updated Bengali India Translation + +2008-09-04 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2008-09-04 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2008-09-04 Sweta Kothari + + * gu.po: Committed Gujarati Translation. + +2008-09-03 Hendrik Richter + + * de.po: Updated German translation. + +2008-09-02 Ignacio Casal Quinteiro + + * gl.po: Updated Galician translation + +2008-09-02 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2008-09-02 Robert-André Mauchin + + * fr.po: Updated French translation. + +2008-09-02 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-09-02 Nguyễn Thái Ngọc Duy + + * vi.po: Updated Vietnamese translation + +2008-09-02 Priit Laes + + * et.po: Translation updated by Ivar Smolin + +2008-09-02 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2008-09-01 Leonardo Ferreira Fontenelle + + * pt_BR.po: Updated Brazilian Portuguese translation and fixed some + terminology. + +2008-08-30 Chao-Hsiung Liao + + * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + +2008-08-29 Seán de Búrca + + * ga.po: Updated Irish translation. + +2008-08-29 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-08-28 Petr Kovar + + * cs.po: Updated Czech translation. + +2008-08-27 Runa Bhattacharjee + + * bn_IN.po: Updated Bengali India Translation + +2008-08-26 Inaki Larranaga Murgoitio + + * eu.po: Updated Basque translation. + +2008-08-25 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2008-08-25 Goran Rakic + + * LINGUAS, sr@latin.po, sr@Latn.po: Conversion from sr@Latn to sr@latin. + +2008-80-24 Arangel Angov + + * mk.po: Updated Macedonian translation. + +2008-08-22 Inaki Larranaga Murgoitio + + * eu.po: Updated Basque translation. + +2008-08-17 Yair Hershkovitz + + * he.po: Updated Hebrew translation. + +2008-08-12 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2008-08-11 Og Maciel + + * pt_BR.po: Updated translation by Djavan Fagundes. + +2008-08-11 Ilkka Tuohela <> + + * fi.po: Updated Finnish translation. + +2008-08-10 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2008-08-02 Leonardo Ferreira Fontenelle + + * pt_BR.po: Terminology fixes by Fabrício Godoy. + +2008-08-01 Sweta Kothari + + * gu.po: Updated Gujarati Translation by Sweta Kothari + +2008-07-29 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-07-27 Leonardo Ferreira Fontenelle + + * pt_BR.po: Fixed translation of "lock" (by Vladimir Melo). + +2008-07-16 Yair Hershkovitz + + * he.po: Updated Hebrew translation. + +2008-07-10 Matej Urbančič + + * sl.po: Updated Slovenian translation. + +2008-07-02 Yannig Marchegay + + * oc.po: Updated Occitan translation. + +2008-06-21 Claude Paroz + + * fr.po: Updated French translation. + +2008-06-11 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-06-11 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2008-06-07 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2008-06-03 Priit Laes + + * et.po: Translation updated by Ivar Smolin + +2008-06-01 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2008-06-01 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2008-05-28 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-05-25 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2008-05-22 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-05-22 Yair Hershkovitz + + * he.po: Updated Hebrew translation. + +2008-05-21 Ankit Patel + + * gu.po: Updated Gujarati Translation on behalf of Sweta Kothari. + +2008-05-19 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-05-08 Vincent van Adrighem + + * nl.po: Translation updated by Tino Meinen. + +2008-05-06 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2008-04-29 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +>>>>>>> .r3888 +2008-04-19 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2008-04-19 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-03-25 Philip Withnall + + * en_GB.po: Updated British English translation. + +2008-03-30 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-03-12 Sunil Mohan Adapa + + * te.po: Added Telugu traslation done by + Krishna Babu K . + +2008-03-09 Gabor Kelemen + + * hu.po: Translation updated + +2008-03-05 Stéphane Raimbault + + * fr.po: Updated French translation. + +2008-03-05 Rahul Bhalerao + + * mr.po: Updated Marathi Translations by Sandeep Shedmake. + +2008-03-03 Jorge Gonzalez + + * es.po: Updated Spanish translation + +2008-03-03 Vasiliy Faronov + + * ru.po: Updated Russian translation. + +2008-03-03 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2008-03-01 Luca Ferretti + + * it.po: Updated Italian translation by Milo Casagrande. + +2008-02-27 Nikos Charonitakis + + * el.po: Updated Greek translation. + +2008-02-22 Ilkka Tuohela + + * fi.po: Updated Finnish translation (bug #490774). + +2008-02-20 Inaki Larranaga Murgoitio + + * eu.po: Fixed some term. + +2008-02-17 Vincent van Adrighem + + * nl.po: Translation updated by Tino Meinen. + +2008-02-14 Pawan Chitrakar + + * ne.po: Updated Nepali Translation. + +2008-02-01 Amitakhya Phukan + + * LINGUAS: Added as to LINGUAS. + * as.po: Updated assamese translations. + +2008-01-31 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2008-01-25 Petr Kovar + + * cs.po: Updated Czech translation. + +2008-01-25 Petr Kovar + + * cs.po: Fixed Czech translation. + +2008-01-08 Inaki Larranaga Murgoitio + + * eu.po: Updated Basque translation. + +2007-12-31 Yannig Marchegay + + * oc.po: Updated Occitan translation. + +2007-12-08 Jakub Friedl + + * cs.po: Czech Translation updated by Petr Kovar. + +2007-12-01 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2007-11-17 Ihar Hrachyshka + + * be@latin.po: Updated Belarusian Latin translation. + +2007-11-14 Matej Urbančič + + * sl.po: Updated Slovenian translation. + +2007-11-09 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2007-11-04 Alessio Frusciante + + * it.po: Updated Italian translation by + Milo Casagrande . + +2007-11-01 Gil Forcada + + * ca.po: Updated Catalan translation by Joan Duran. + +2007-10-23 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2007-10-21 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2007-10-21 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2007-10-08 Priit Laes + + * et.po: Translation update by Ivar Smolin. + +2007-09-27 Gintautas Miliauskas + + * lt.po: Updated Lithuanian translation. + +2007-09-25 Kostas Papadimas + + * el.po: Updated Greek translation. + +2007-09-23 Ihar Hrachyshka + + * be@latin.po: Added Belarusian Latin translation by Alaksandar Navicki. + * LINGUAS: Added be@latin. + +2007-09-17 Baris Cicek + + * tr.po: Updated Turkish translation from Emrah Unal + +2007-09-17 Wouter Bolsterlee + + * nl.po: Translation updated by Wouter Bolsterlee. + +2007-09-16 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2007-09-15 Mugurel Tudor + + * ro.po: Updated Romanian translation + +2007-09-15 Andre Klapper + + * sk.po: Updated Slovak translation on behalf of Peter Tuharsky + . + +2007-09-13 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2007-09-08 Inaki Larranaga Murgoitio + + * eu.po: Fixed some typos in Basque translation. + +2007-09-07 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2007-09-06 Vincent van Adrighem + + * nl.po: Translation updated by Tino Meinen. + +2007-09-06 Stéphane Raimbault + + * fr.po: Fixed French translation by Claude Paroz. + +2007-09-02 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2007-08-28 Priit Laes + + * et.po: Estonian translation updates by Ivar Smolin + +2007-08-20 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2007-08-20 Stéphane Raimbault + + * fr.po: Updated French translation. + +2007-08-18 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2007-08-17 Stéphane Raimbault + + * fr.po: Fixed typo found by Claude Paroz. + +2007-08-17 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2007-08-16 Priit Laes + + * et.po: Fixed typo in Estonian translation. + +2007-08-16 Ani Peter + + * ml.po: Updated Malayalam Translation + +2007-08-05 Leonardo Ferreira Fontenelle + + * pt_BR.po: s/_Conteúdo/S_umário; see bug #461308. + +2007-08-03 Danishka Navin + + * si.po: Added Sinhala translation by Danishka Navin + * LINGUAS: Added "si". + +2007-07-16 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2007-06-18 I Felix + + * ta.po: Updated Tamil Translation. + +2007-06-08 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2007-06-04 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2007-05-31 Priit Laes + + * et.po: Updated Estonian translation by Ivar Smolin . + +2007-05-22 Yair Hershkovitz + + * he.po: Updated Hebrew translation. + +2007-05-13 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2007-05-06 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2007-04-22 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation from + Yang Zhang. + +2007-04-18 Sven Herzberg + + * de.po: Fixed German translation + +2007-04-15 Christophe Merlet + + * oc.po: Added Occitan translation from + Yannig MARCHEGAY (Kokoyaya) . + * LINGUAS: Added "oc". + +2007-04-09 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2007-04-05 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation from + Espen Stefansen. + +2007-04-04 Inaki Larranaga Murgoitio + + * eu.po: Updated Basque translation + +2007-03-29 Claudio Saavedra + + * es.po: Updated Spanish translation by Jorge González. + +2007-03-25 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2007-03-21 Pema Geyleg + + * dz.po: Updated Dzongkha Translation. + +2007-03-12 Goran Rakić + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2007-03-11 Gintautas Miliauskas + + * lt.po: Updated Lithuanian translation. + +2007-03-11 Josep Puigdemont i Casamajó + + * ca.po: Updated Catalan translation by + Jordi Mallach . + +2007-03-10 Nickolay V. Shmyrev + + * ru.po: Updated Russian translation. + +2007-03-07 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2007-03-05 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2007-03-05 Maxim Dziumanenko + + * uk.po: Update Ukrainian translation. + +2007-03-05 Jovan Naumovski + + * mk.po: Updated Macedonian translation. + +2007-03-04 Erdal Ronahi + + * ku.po: Updated Kurdish translation + +2007-03-03 Yair Hershkovitz + + * he.po: Updaed Hebrew translation. + +2007-03-03 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2007-03-02 Chao-Hsiung Liao + + * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + +2007-02-27 Gintautas Miliauskas + + * lt.po: Updated Lithuanian translation. + +2007-02-27 Priit Laes + + * et.po: Updated Estonian translation by Ivar Smolin . + +2007-02-27 Hendrik Richter + + * de.po: Updated German translation, by + Christian Kintner + +2007-02-25 Peter Bach + + * da.po: Updated Danish translation. + +2007-02-25 Matic Zgur + + * sl.po: Updated Slovenian translation. + +2007-02-25 Gabor Kelemen + + * hu.po: Translation updated. + +2007-02-23 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2007-02-23 Nguyễn Thái Ngọc Duy + + * vi.po: Updated Vietnamese translation + +2007-02-22 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2007-02-22 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Vladimir Petkov + +2007-02-18 Alessio Frusciante + + * it.po: Updated Italian translation by + Milo Casagrande . + +2007-02-18 Priit Laes + + * et.po: Updated Estonian translation by Ivar Smolin . + +2007-02-17 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2007-02-16 Yair Hershkovitz + + * he.po: Updated Hebrew translation + +2007-02-14 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2007-02-14 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2007-02-12 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2007-02-11 Changwoo Ryu + + * ko.po: Updated Korean translation by Young-Ho Cha. + +2007-02-09 David Lodge + + * en_GB.po: Updated English (British) translation + +2007-02-8 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2007-02-07 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2007-02-04 Stéphane Raimbault + + * fr.po: Updated French translation by Jonathan Ernst. + +2007-02-04 Raphael Higino + + * pt_BR.po: Updated Brazilian Portuguese translation + by Og Maciel . + +2007-02-04 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2007-02-03 Ihar Hrachyshka + + * be.po: Updated Belarusian translation. + +2007-02-02 Stéphane Raimbault + + * fr.po: Updated French translation by Robert-André Mauchin, + Claude Paroz et Stéphane Raimbault. + +2007-01-31 Ihar Hrachyshka + + * be.po: Updated Belarusian translation. + +2007-01-30 Gabor Kelemen + + * hu.po: Translation updated. + +2007-01-29 Priit Laes + + * et.po: Updated Estonian translation by Ivar Smolin . + +2007-01-26 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Yavor Doganov + +2007-01-24 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + +2007-01-23 David Lodge + + * en_GB.po: Updated English (British) translation + +2007-01-15 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2007-01-15 Djihed Afifi + + * ar.po: Updated Arabic Translation by Khaled Hosny. + +2007-01-13 Djihed Afifi + + * ar.po: Updated Arabic Translation by Mohamed Magdy. + +2007-01-12 Daniel Nylander + + * sv.po: Updated Swedish translation. + * POTFILES.in: Added 1 missing file. + +2007-01-09 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2007-01-09 Priit Laes + + * et.po: Estonian translation update by Ivar Smolin . + +2007-01-08 David Lodge + + * en_GB.po: Updated English (British) translation + +2007-01-07 Priit Laes + + * et.po: Estonian translation update by Ivar Smolin. + +2007-01-05 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2007-01-3 Djihed Afifi + + * ar.po: Updated Arabic Translation by Mohamed Magdy. + +2006-12-29 David Lodge + + * en_GB.po: Updated English (British) translation + +2006-12-29 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-12-28 Kjartan Maraas + + * POTFILES.skip: Add some missing files. + * nb.po: Updated Norwegian bokmål translation. + +2006-12-27 Djihed Afifi + + * ar.po: Updated Arabic Translation. + +2006-12-24 Djihed Afifi + + * ar.po: Updated Arabic Translation. + +2006-12-23 Ales Nyakhaychyk + + * be.po: Updated Belarusina Translation by Ihar Hrachyshka. + +2006-12-22 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2006-12-22 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2006-12-20 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2006-12-20 Raivis Dejus + + * lv.po: Updated Latvian Translation. + +2006-12-20 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2006-12-20 Jovan Naumovski + + * mk.po: Updated Macedonian translation. + +2006-12-1 Djihed Afifi + + * ar.po: Updated Arabic Translation. + +2006-11-19 Wouter Bolsterlee + + * pl.po: Translation updated by Artur Flinta. + +2006-11-18 Djihed Afifi + + * ar.po: Updated Arabic Translation. + +2006-11-10 Djihed Afifi + + * ar.po: Updated Arabic Translation. + +2006-11-02 Christophe Merlet + + * fr.po: Updated French translation. + +2006-11-01 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2006-10-30 Djihed Afifi + + * ar.po: Updated Arabic Translation. + +2006-10-30 Satoru SATOH + + * ja.po: Fixed wrong plural form entries. + +2006-10-15 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-10-01 Guilherme de S. Pastore + + * pt_BR.po: Updated Brazilian Portuguese translation (bug #355852). + +2006-09-21 Pawan Chitrakar + + * ne.po: Updated Nepali Translation + +2006-09-10 David Lodge + + * en_GB.po: Updated English (British) translation. + +2006-09-06 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-09-05 Lucas Rocha + + * pt_BR.po: Updated Brazilian Portuguese translation + by Leonardo Ferreira Fontenelle + +2006-09-04 Runa Bhattacharjee + + * bn_IN.po: Updated Bengali India Translation. + +2006-09-01 Jovan Naumovski + + * mk.po: Updated Macedonian translation. + +2006-08-31 Alessio Frusciante + + * it.po: Updated Italian translation by + Milo Casagrande . + +2006-08-31 Rajesh Ranjan + + * hi.po: Updated Hindi Translation. + +2006-08-31 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2006-08-29 Rajesh Ranjan + + * hi.po: Updated Hindi Translation. + +2006-08-29 Rahul Bhalerao + + * LINGUAS: Added an entry for Marathi(mr). + * mr.po: Added the file and updated Marathi translation. + +2006-08-27 Theppitak Karoonboonyanan + + * POTFILES.in: Removed mate-cd/eggtrayicon.c + * th.po: Updated Thai translation. + +2006-08-25 Josep Puigdemont i Casamajó + + * ca.po: Updated Catalan translation. + +2006-08-24 Raivis Dejus + + * lv.po: Updated Latvian translation. + +2006-08-24 Abel Cheung + + * zh_HK.po, zh_TW.po: Updated traditional Chinese translations. + +2006-08-22 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2006-08-22 Matic Žgur + + * sl.po: Updated Slovenian translation. + +2006-08-22 Leonid Kanter + + * ru.po: Updated Russian translation + +2006-08-17 Jordi Mas + + * ca.po: Fixes small mistakes in Catalan translation + +2006-08-17 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2006-08-16 Baris Cicek + + * tr.po: Updated Turkish Translation from Onur Can Cakmak + +2006-08-16 Gabor Kelemen + + * hu.po: Translation updated. + +2006-08-15 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2006-08-14 Maxim Dziumanenko + + * uk.po: Update Ukrainian translation. + +2006-08-11 Wouter Bolsterlee + + * nl.po: Translation updated by Wouter Bolsterlee. + +2006-08-07 Inaki Larranaga + + * eu.po: Fixed some typos. + +2006-08-06 Ani Peter + + * ml.po: Updated Malayalam translation + +2006-08-04 Thierry Randrianiriana + + * mg.po: Added Malagasy translation. + * LINGUAS: Added Malagasy 'mg'. + +2006-08-01 Jovan Naumovski + + * mk.po: Updated/fixed Macedonian translation. + +2006-07-28 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2006-07-09 Changwoo Ryu + + * ko.po: Updated Korean translation by Young-Ho Cha. + +2006-07-03 Runa Bhattacharjee + + * bn_IN.po: Added Bengali India Translation + * LINGUAS: Added Bengali India (bn_IN) to the list of languages. + +2006-06-29 Rajesh Ranjan + + * hi.po: Updated Hindi Translation. + +2006-06-27 I. Felix + + * ta.po: Updated Tamil translation. + +2006-06-25 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2006-06-15 Hendrik Richter + + * de.po: Updated German translation. + +2006-06-08 Ahmad Riza H Nst + + * id.po: Updated. + +2006-06-05 Gabor Kelemen + + * hu.po: Translation updated. + +2006-06-04 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2006-05-28 Pema Geyleg + + * dz.po: Updated Dzongkha translation. + +2006-05-25 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2006-05-24 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-05-21 Benoît Dejean + + * fr.po: Updated French translation. + +2006-05-10 Inaki Larranaga + + * eu.po: Updated Basque translation. + +2006-05-06 Benoît Dejean + + * fr.po: Updated French translation. + +2006-05-01 Hendrik Richter + + * de.po: Updated German translation. + +2006-04-30 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation + +2006-04-29 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-04-26 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2006-04-24 Rhys Jones + + * cy.po: Updated Welsh translation. + +2006-04-24 Kostas Papadimas + + * el.po Updated Greek Translation + +2006-04-24 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2006-04-23 Lukas Novotny + + * cs.po: Updated Czech translation. + +2006-04-23 Chao-Hsiung Liao + + * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + +2006-04-21 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2006-04-21 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-04-21 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2006-04-21 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2006-04-18 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2006-04-17 Kjartan Maraas + + * LINGUAS: Remove obsolete entry for no_NO. + * no.po: And the translation. + +2006-04-17 Josep Puigdemont Casamajó + + * ca.po: Updated Catalan translation. + +2006-04-17 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2006-04-17 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2006-04-17 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2006-04-16 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2006-04-16 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-04-16 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2006-04-15 Daniel Nylander + + * sv.po: Swedish translation updated. + +2006-04-15 Vincent van Adrighem + + * nl.po: Translation updated. + +2006-04-14 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2006-04-13 Pema Geyleg + + * dz.po: Updated Dzongkha translation. + +2006-04-09 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2006-04-04 Jérémy Ar Floc'h + + * br.po: Updated Breton translation. + +2006-04-04 Gora Mohanty + + * or.po: Added Oriya translation. + +2006-04-02 Raphael Higino + + * lv.po: Updated Latvian translation with corrections by + Raivis Dejus + +2006-04-01 Raphael Higino + + * lv.po: Updated Latvian translation by + Raivis Dejus + +2006-03-30 Daniel Nylander + + * sv.po: Updated Swedish translation. + +2006-03-29 Jérémy Ar Floc'h + + * br.po: Added Breton translation. + +2006-03-24 Tommi Vainikainen + + * dz.po: Added Dzongkha translation from Pema Geyleg. + +2006-03-24 Ales Nyakhaychyk + + * be.po: Updated Belarusian translation by Ihar Hrachyshka. + +2006-03-18 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-03-12 Miloslav Trmac + + * cs.po: Updated Czech translation by Petr Tomeš. + +2006-03-09 Ole Laursen + + * da.po: Updated Danish translation. + +2006-03-09 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2006-03-06 Rajesh Ranjan + + * hi.po: Updated Hindi Translation. + +2006-03-06 Daniel Nylander + + * sv.po: Updated Swedish translation + +2006-03-05 Mugurel Tudor + + * ro.po: Updated Romanian translation + +2006-03-05 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2006-03-03 Maxim Dziumanenko + + * uk.po: Updated Ukrainian translation. + +2006-03-02 Hendrik Richter + + * de.po: Updated German translation. + +2006-02-26 Alessio Frusciante + + * it.po: Updated Italian translation by + Milo Casagrande . + +2006-02-25 Rhys Jones + + * cy.po: Updated Welsh translation. + +2006-02-25 Chao-Hsiung Liao + + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + * zh_HK.po: Updated Traditional Chinese translation(Hong Kong). + +2006-02-23 Raphael Higino + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2006-02-23 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2006-02-23 Clytie Siddall + + * ka.po: Added Georgian translation by Alexander Didebulidze . + +2006-02-22 Inaki Larranaga + + * eu.po: Updated Basque translation. + +2006-02-22 Leonid Kanter + + * ru.po: Updated Russian translation + +2006-02-21 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2006-02-18 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same. + +2006-02-17 Kostas Papadimas + + * el.po: Updated Greek Translation + +2006-02-17 Gabor Kelemen + + * hu.po: Hungarian translation updated by Mate ORY. + +2006-02-17 Satoru SATOH + + * ja.po: Updated Japanese translation. + +2006-02-17 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2006-02-16 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-02-15 Yair Hershkovitz + + * he.po: Updated Hebrew translation. + +2006-02-15 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2006-02-13 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2006-02-13 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same. + +2006-02-10 Raphael Higino + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2006-02-07 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2006-02-07 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2006-02-07 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-02-05 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2006-02-03 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2006-02-02 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Rostislav Raykov + +2006-01-31 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2006-01-31 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-01-31 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-01-31 Slobodan D. Sredojevic + + * sr.po, sr@Latn.po: Updated Serbian translation + +2006-01-31 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2006-01-31 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2006-01-30 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation (merged from BRANCH-GSTREAMER-0-10). + +2006-01-27 Evandro Fernandes Giovanini + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2006-01-26 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2006-01-23 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2006-01-22 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2006-01-21 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-01-21 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2006-01-21 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2006-01-20 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2006-01-19 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2006-01-18 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2006-01-08 Ilkka Tuohela + + * fi.po: Updated Finnish translation + +2006-01-17 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2006-01-17 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2006-01-16 Erdal Ronahi + + * ku.po: Updated Kurdish translation. + +2006-01-16 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2006-01-15 Christian Rose + + * sv.po: Updated Swedish translation. + +2006-01-14 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2006-01-14 Chao-Hsiung Liao + + * zh_TW.po: Updated Traditional Chinese translation(Taiwan). + * zh_HK.po: Added Traditional Chinese translation(Hong Kong). + +2006-01-13 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same. + +2006-01-12 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-01-11 Gabor Kelemen + + * hu.po: Hungarian translation updated. + +2006-01-11 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2006-01-11 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2006-01-11 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2006-01-11 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2006-01-10 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2006-01-09 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2006-01-04 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2006-01-03 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2006-01-02 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same. + +2005-12-30 Ilkka Tuohela + + * fi.po: Updatd Finnish translation + +2005-12-30 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2005-12-29 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2005-12-28 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-12-27 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2005-12-26 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2005-12-25 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2005-12-25 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-12-25 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-12-23 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-12-14 Inaki Larranaga + + * eu.po: Updated Basque translation. + +2005-12-12 Christophe Merlet + + * fr.po: Updated French translation. + +2005-12-09 Alessio Frusciante + + * it.po: Updated Italian translation by + Luca Ferretti . + +2005-12-09 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2005-12-07 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-12-07 Žygimantas Beručka + + * lt.po: Oops.. forgot fuzzy entries. + +2005-12-07 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2005-12-06 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2005-12-06 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-12-04 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same + +2005-12-03 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-12-02 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-11-30 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-11-30 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2005-11-28 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-11-28 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2005-11-28 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2005-11-19 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-11-16 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-10-29 Erdal Ronahi + + * ku.po: Added Kurdish translation. + +2005-10-13 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-10-06 Christian Rose + + * sv.po: Updated Swedish translation. + +2005-09-21 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-09-19 Josep Puigdemont + + * ca.po: Fixed string in Catalan translation. + +2005-09-16 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2005-09-14 Runa Bhattacharjee + * bn.po: Updated Bengali (bn) Translation by + Progga + +2005-09-12 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-09-08 Inaki Larranaga + + * eu.po: Updated Basque translation. + +2005-09-07 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2005-09-05 Baris Cicek + + * tr.po: Updated Turkish Translation + +2005-09-02 Josep Puigdemont + + * ca.po: Reviewed Catalan translation, fixed typos, etc. + Mostly by Xavier Conde Rueda . + +2005-09-01 Rhys Jones + + * cy.po: Updated Welsh translation. + +2005-08-31 Alessio Frusciante + + * it.po: Updated Italian translation by + Salvatore Isaja . + +2005-08-30 Hendrik Richter + + * de.po: Updated German translation. + +2005-08-29 Changwoo Ryu + + * ko.po: Updated Korean translation by Young-Ho Cha. + +2005-08-28 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2005-08-28 Christophe Merlet + + * fr.po: Updated French translation. + +2005-08-27 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2005-08-26 Leonid Kanter + + * ru.po: Updated Russian translation + +2005-08-25 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2005-08-24 Raphael Higino + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2005-08-23 Gabor Kelemen + + * hu.po: Hungarian translation updated. + +2005-08-22 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2005-08-22 Mugurel Tudor + + * ro.po: Updated Romanian translation + +2005-08-21 Maxim Dziumanenko + + * uk.po: Updated Ukrainian translation. + +2005-08-21 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2005-08-21 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-08-20 Roozbeh Pournader + + * fa.po: Updated Persian translation by Alireza Kheirkhahan + , Meelad Zakaria , + and myself. + +2005-08-18 Mugurel Tudor + + * ro.po: Updated Romanian translation + +2005-08-17 Priit Laes + + * et.po: Translation updated. + +2005-08-17 Chao-Hsiung Liao + + * zh_TW.po: Updated Traditional Chinese translation. + +2005-08-16 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2005-08-14 Mugurel Tudor + + * ro.po: Updated Romanian translation + +2005-08-14 Terance Sola + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same. + +2005-08-13 Mohammad DAMT + + * id.po: Updated Indonesian translation + +2005-08-13 Kostas Papadimas + + * el.po Updated Greek Translation + +2005-08-12 Mohammad DAMT + + * id.po: Updated Indonesian translation + +2005-08-08 Danilo Šegan + + * sr.po, sr@Latn.po: Updated by Igor Nestorović. + +2005-08-06 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Philip Dimitrov + +2005-08-07 Guilherme de S. Pastore + + * pt_BR.po: fixed HIG compliance by pushing the verbs + in the Comment in the .desktop file to the imperative + form, as well as some other minor fixes. + +2005-08-02 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-08-02 Nikos Charonitakis + + * el.po: Updated Greek translation. + +2005-08-01 Vincent van Adrighem + + * nl.po: Translation updated. + +2005-07-31 Ilkka Tuohela + + * fi.po: Bulk updates to Finnish translation + for new mate.fi website. + +2005-07-30 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-07-28 Ilkka Tuohela + + * fi.po: Bulk change to some Finnish translations. + +2005-07-27 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2005-07-24 Ilkka Tuohela + + * fi.po: Updated Finnish translation. + +2005-07-24 Kjartan Maraas + + * nb.po: Updated Norwegian bokmål translation. + * no.po: Same + +2005-07-23 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-07-23 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2005-07-22 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2005-07-22 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation by Justina Klingaitė. + +2005-07-21 Gabor Kelemen + + * hu.po: Hungarian translation updated. + +2005-07-21 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-07-20 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2005-07-19 Clytie Siddall + + * vi.po: Updated Vietnamese translation. + +2005-07-18 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-07-18 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-07-18 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-07-18 Priit Laes + + * et.po: Translation updated. + +2005-07-17 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-07-15 Ignacio Casal Quinteiro + + * gl.po: Updated Galician Translation. + +2005-07-10 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-07-06 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-07-06 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-07-04 Hendrik Richter + + * de.po: Fixed German translation by + Jens Seidel . + +2005-07-03 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-07-03 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-07-03 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-07-02 Priit Laes + + * et.po: Translation updated. + +2005-07-02 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2005-07-02 Priit Laes + + * et.po: Translation updated. + +2005-06-22 Abel Cheung + + * zh_TW.po: Fix language team reference. + +2005-06-20 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2005-06-17 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-06-15 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Rostislav Raykov + +2005-06-15 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-06-15 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2005-06-14 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-06-12 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-06-12 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2005-06-10 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2005-06-10 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-06-09 Terance Sola + + * nb.po: Updated Norwegian translation + * no.po: Same as above + +2005-06-09 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2005-06-09 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2005-06-08 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-06-08 Sebastien Bacher + + * POTFILES.in: removed obsolete file. + +2005-06-08 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Vladimir Petkov + +2005-05-27 Pawan Chitrakar + + * ne.po: Updated Nepali Translation + +2005-05-11 Kostas Papadimas + + * el.po Updated Greek Translation + +2005-05-04 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-05-03 Priit Laes + + * et.po: Translation updated. + +2005-04-15 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-04-12 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-04-07 Gareth Owen + + * en_GB.po: Updated British English translation. + +2005-03-31 Steve Murphy + + * rw.po: Added Kinyarwanda translation. + +2005-03-30 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-03-30 Adi Attar + + * xh.po: Updated Xhosa translation. + +2005-03-29 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-03-29 Frank Arnold + + * POTFILES.in: Removed missing file and added new ones. + * de.po: Updated German translation. + +2005-03-22 Adi Attar + + * xh.po: Added Xhosa translation. + +2005-03-12 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-03-07 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation from MATE HK Team + +2005-03-07 Mugurel Tudor + + * ro.po: Updated Romanian translation. + +2005-03-06 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2005-03-05 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2005-03-04 Christophe Merlet + + * fr.po: Updated French translation from + Baptiste Mille-Mathias . + +2005-03-04 Laszlo Dvornik + + * hu.po: Hungarian translation updated by Gabor Kelemen. + +2005-03-03 Baris Cicek + + * tr.po: Updated Turkish Translation by Furkan Duman + +2005-03-02 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2005-02-28 Kostas Papadimas + + * el.po: Updated Greek translation. + +2005-02-25 Nikos Charonitakis + + * el.po: Updated Greek translation. + +2005-02-25 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Vladimir Petkov + +2005-02-23 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2004-02-23 Ankit Patel + + * gu.po: Updated Gujarati Translation. + +2004-02-22 Roozbeh Pournader + + * fa.po: Updated Persian translation by Sara Khalatbari + . + +2004-02-22 Leonid Kanter + + * ru.po: Updated Russian translation + +2005-02-22 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2005-02-22 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-02-22 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2005-02-21 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-02-21 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2005-02-21 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-02-20 Raphael Higino + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2005-02-18 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-02-18 Kostas Papadimas + + * el.po: Updated Greek translation + +2005-02-18 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2005-02-17 Ilkka Tuohela + + * Updated Finnish translation. + +2005-02-18 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2005-02-17 Hendrik Richter + + * de.po: Updated German translation. + +2005-02-17 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2005-02-17 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-02-16 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Alexander Shopov + +2005-02-16 Francisco Javier Fernandez + + * es.po: Updated Spanish translation. + +2005-02-16 Maxim Dziumanenko + + * uk.po: Updated Ukrainian translation. + +2005-02-16 Kjartan Maraas + + * nb.po: + +2005-02-15 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-02-15 David Lodge + + * en_GB.po: Update English (British) translation. + +2005-02-15 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2005-02-14 Christian Rose + + * sv.po: Updated Swedish translation. + +2005-02-14 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2005-02-14 Hendrik Richter + + * de.po: Updated German translation. + +2005-02-14 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2005-02-14 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2005-02-13 David Lodge + + * en_GB.po: Updated British translation. + +2005-02-13 Theppitak Karoonboonyanan + + * th.po: Updated Thai translation. + +2005-02-13 Priit Laes + + * et.po: Translation updated. + +2005-02-13 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-02-12 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-02-11 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-02-11 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-02-11 Christian Rose + + * POTFILES.in: Added UTF-8 keyword. + * sv.po: Updated Swedish translation. + +2005-02-09 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-02-07 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-02-06 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-02-05 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2005-02-04 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-02-04 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-02-04 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-02-04 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-02-04 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2005-02-02 Alessio Frusciante + + * it.po: Updated Italian translation by + Salvatore Isaja . + +2005-02-02 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2005-01-31 Alessio Frusciante + + * it.po: Updated Italian translation by + Salvatore Isaja . + +2005-01-31 Priit Laes + + * et.po: Translation updated by Ivar Smolin. + +2005-01-30 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2005-01-29 Raphael Higino + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2005-01-29 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-01-28 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-01-28 Kjartan Maraas + + * nb.po: Update + * no.po: Update + +2005-01-28 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2005-01-28 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-01-28 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-01-28 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2005-01-26 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-01-26 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2005-01-26 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-01-25 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-01-25 Hendrik Richter + + * de.po: Updated German translation. + +2005-01-23 Christian Rose + + * .cvsignore: Added notexist file. + +2005-01-23 Christian Rose + + * POTFILES.skip: Removed no longer existing files. + * sv.po: Updated Swedish translation. + +2005-01-22 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2005-01-21 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation by Lucas Vieites. + +2005-01-21 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2005-01-20 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2005-01-20 Frank Arnold + + * de.po: Updated German translation. + +2005-01-19 Marcel Telka + + * sk.po: Updated Slovak translation. + +2005-01-18 Priit Laes + + * et.po: Translation updated. + +2005-01-15 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2005-01-15 Kjartan Maraas + + * POTFILES.skip: Add some files to avoid noise. + * nb.po: Update + * no.po: Update + +2005-01-15 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2005-01-11 Kjartan Maraas + + * nb.po: Update + * no.po: Update + +2005-01-09 Sven Herzberg + + * de.po: Fixed a Typo + +2005-01-07 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2005-01-04 Rajeev Shrestha + + * ne.po: Updated Nepali Translation + +2005-01-03 Kostas Papadimas + + * el.po: Updated Greek translation + +2004-12-31 Christian Rose + + * sv.po: Updated Swedish translation. + +2004-12-29 Pawan Chitrakar + + * ne.po: Added Nepali Translation + +2004-12-23 Leonid Kanter + + * ru.po: Updated Russian translation + +2004-12-22 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Vladimir Petkov + +2004-12-17 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-12-13 David Lodge + + * en_GB.po: Updated British translation. + +2004-12-12 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-12-11 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-12-11 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2004-12-08 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2004-12-07 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2004-12-05 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2004-12-03 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2004-11-29 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2004-11-28 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2004-11-26 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-11-26 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-11-25 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2004-11-16 Hendrik Richter + + * de.po: Updated German translation. + +2004-11-14 David Lodge + + * en_GB.po: Updated British translation. + +2004-11-11 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-11-09 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-11-08 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2004-11-06 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-11-05 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2004-11-05 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-11-03 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-11-02 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-10-31 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2004-10-29 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation by Lucas Vieites. + +2004-10-15 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2004-10-09 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-10-03 David Lodge + + * en_GB.po: Updated British English translation. + +2004-10-03 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-10-01 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-09-29 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2004-09-12 Theppitak Karoonboonyanan + + * th.po: Applied 'msgmerge' with current POT. The last commit was for + an old version. + +2004-09-12 Laszlo Dvornik + + * hu.po: Updated Hungarian translation by Gabor Kelemen. + +2004-09-12 Supranee Thirawatthanasuk + + * th.po: Updated Thai translation + +2004-09-11 Dafydd Harries + + * cy.po: Updated Welsh translation. + +2004-09-10 Nikos Charonitakis + + * el.po: Updated Greek translation. + +2004-09-08 Mugurel Tudor + + * ro.po: Updated Romanian translation + +2004-09-06 Kostas Papadimas + + * el.po: Updated Greek translation + +2004-09-05 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2004-09-05 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-09-04 Mətin Əmirov + + * az.po: Translation updated. + +2004-09-04 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-09-03 Baris Cicek + + * tr.po: Updated Turkish Translation + +2004-09-03 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2004-09-02 Nikos Charonitakis + + * el.po: Updated Greek translation. + +2004-09-01 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2004-08-31 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2004-08-31 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-08-31 Maxim Dziumanenko + + * uk.po: Updated Ukrainian translation. + +2004-08-31 Martin Willemoes Hansen + + * da.po: Updated Danish translation. + +2004-08-31 Arafat Medini + + * ar.po: Updated Arabic translation. + +2004-08-28 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2004-08-28 Akagic Amila + + * bs.po: Added Bosnian translation. + +2004-08-24 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2004-08-21 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2004-08-20 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-08-20 Maxim Dziumanenko + + * uk.po: Updated Ukrainian translation. + +2004-08-18 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-08-17 Christian Rose + + * sv.po: Updated Swedish translation. + +2004-08-17 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2004-08-16 Kjartan Maraas + + * nb.po: Add this. + +2004-08-12 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2004-08-07 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2004-08-06 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2004-08-02 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2004-08-02 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-07-31 Martin Willemoes Hansen + + * da.po: Updated Danish translation + +2004-08-01 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2004-07-31 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2004-07-05 Francisco Javier F. Serrador + + * es.po: updated by Lucas Vieites + +2004-07-28 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-07-27 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Rostislav "zbrox" Raykov + +2004-07-21 Guntupalli Karunakar + + * hi.po: Updated Hindi translation. + +2004-07-14 Gustavo Maciel Dias Vieira + + * pt_BR.po: Updated Brazilian Portuguese translation done by + Raphael Higino . + +2004-07-08 Alexander Shopov + + * bg.po: Updated Bulgarian translation by + Vladimir "Kaladan" Petkov + +2004-07-05 Pablo Gonzalo del Campo + + * es.po: Updated Spanish translation by Lucas Vieites + +2004-07-04 Andras Timar + + * hu.po: Updated Hungarian translation. + +2004-07-04 Christiam Neumair + + * de.po: Updated German translation. + +2004-06-29 Laurent Dhima + + * sq.po: Translation updated. + +2004-06-28 Laurent Dhima + + * sq.po: Translation updated. + +2004-06-21 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2004-06-20 Gareth Owen + + * en_GB.po: Updated British English translation + +2004-06-20 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-06-11 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2004-06-03 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2004-05-31 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-05-30 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-05-29 Dinesh Nadarajah + + * ta.po: Updated Tamil Translation + +2004-05-29 Christian Rose + + * tk.po: Added Turkmen translation by + Gurban Mühemmet Tewekgeli . + +2004-05-27 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2004-05-25 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-05-24 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-05-24 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2004-05-18 Gareth Owen + + * en_GB.po: Updated British English translation + +2004-05-16 Adam Weinberger + + * en_CA.po: Updated Canadian English translation. + +2004-05-15 Baris Cicek + + * tr.po: Updated Turkish Translation + +2004-05-13 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation. + +2004-05-11 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-05-11 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-04-15 Andras Timar + + * hu.po: Updated Hungarian translation. + +2004-04-15 Theppitak Karoonboonyanan + + * th.po: Fix spellings. + +2004-04-14 Iñaki Larrañaga + + * eu.po: Updated Basque translation. + +2004-04-09 Guntupalli Karunakar + + * gu.po: Added Gujurati translation by + Gujarati Team . + +2004-03-30 Pablo Saratxaga + + * wa.po: Updated Walloon file + +2004-03-29 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2004-03-28 Robert Sedak + + * hr.po: Updated Croatian translation. + +2004-03-26 Andras Timar + + * hu.po: Updated Hungarian translation. + +2004-03-23 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2004-03-22 Guntupalli Karunakar + + * pa.po: Punjabi translation by + Jaswinder Singh Phulewala . + +2004-03-22 Dmitry G. Mastrukov + + * ru.po: Updated Russian translation + from Russian team . + +2004-03-21 Alastair McKinstry + + * ga.po: Updated Irish translation. + +2004-03-21 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation from + Woodman Tuen . + +2004-03-20 Gareth Owen + + * en_GB.po: Updated British translation + +2004-03-19 Andras Timar + + * hu.po: Updated Hungarian translation. + +2004-03-19 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2004-03-18 Arafat Medini + + * ar.po: Updated Arabic translation. + +2004-03-17 Dafydd Harries + + * cy.po: Updated Welsh translation from Dafydd Tomos. + +2004-03-15 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2004-03-14 Abel Cheung + + * ar.po: Mark wrong entry as fuzzy (msgfmt check failed). + +2004-03-14 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation from + Woodman Tuen . + +2004-03-13 Ales Nyakhaychyk + + * be.po: Updated Belarusian translation. + +2004-03-13 Maxim Dziumanenko + + * uk.po: Updated Ukrainian translation + +2004-03-13 Christophe Merlet + + * fr.po: Updated French translation. + +2004-03-12 Gustavo Maciel Dias Vieira + + * pt_BR.po: Updated Brazilian Portuguese translation done by + Raphael Higino . + +2004-03-11 Alexander Winston + + * en_CA.po: Added Canadian English translation. + +2004-03-11 Alessio Frusciante + + * it.po: Updated Italian translation. + +2004-03-11 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-03-08 Ole Laursen + + * da.po: Updated Danish translation. + +2004-03-08 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2004-03-08 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2004-03-07 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2004-03-07 Funda Wang + + * zh_CN.po: Updated Simplified Chinese translation. + +2004-03-06 Mətin Əmirov + + * az.po: Translation updated. + +2004-03-06 Jarkko Ranta + + * fi.po: Updated finnish translation. + +2004-03-06 Priit Laes + + * et.po: Translation updated. + +2004-03-05 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation by Lucas Vieites. + +2004-03-05 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2004-03-04 Christiam Neumair + + * de.po: Updated German translation. + +2004-03-03 Artur Flinta + + * pl.po: Updated Polish translation. + +2004-03-02 Kostas Papadimas + + * el.po: Updated Greek translation. + +2004-03-01 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2004-03-01 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2004-03-01 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-03-01 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-03-01 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2004-03-01 Christian Rose + + * sv.po: Updated Swedish translation. + +2004-02-29 Christophe Merlet + + * fr.po: Updated French translation. + +2004-02-28 Francisco Javier F. Serrador + + * es.po: Updated Spansih translation. + +2004-02-28 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2004-02-28 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2004-02-27 Priit Laes + + * et.po: Translation updated by T?ivo Leedj?rv. + +2004-02-26 Vincent van Adrighem + + * nl.po: Translation updated by Kees van den Broek. + +2004-02-26 Vincent van Adrighem + + * nl.po: Translation updated by Reinout van Schouwen. + +2004-02-25 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2004-02-25 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-02-25 Artur Flinta + + * pl.po: Updated Polish translation. + +2004-02-25 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-02-24 Alastair McKinstry + + * ga.po: Updated Irish translation. + +2004-02-24 Artur Flinta + + * pl.po: Updated Polish translation. + +2004-02-24 Kostas Papadimas + + * el.po: Updated Greek translation. + +2004-02-25 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2004-02-24 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-02-24 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2004-02-23 Ole Laursen + + * da.po: Updated Danish translation. + +2004-02-23 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-02-23 Christian Rose + + * sv.po: Updated Swedish translation. + +2004-02-23 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2004-02-23 Kostas Papadimas + + * el.po: Updated Greek translation. + +2004-02-21 Paisa Seeluangsawat + + * th.po: Added Thai translation by Sawit Kasuriya, + Sapa, and Chanchai Junlouchai. + +2040-02-21 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2004-02-20 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2004-02-20 Laurent Dhima + + * sq.po: Fixed Albanian translation. + +2004-02-20 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2004-02-17 Alessio Frusciante + + * it.po: Updated Italian translation by + Salvatore Isaja . + +2004-02-17 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2004-02-16 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-02-13 Christian Rose + + * sv.po: Updated Swedish translation. + +2004-02-13 Alessio Frusciante + + * it.po: Updated Italian translation. + +2004-02-12 Arafat Medini + + * ar.po: Updated faulty Arabic translation. + +2004-02-11 Arafat Medini + + * ar.po: Updated Arabic translation. + +2004-02-09 Nikos Charonitakis + + * el.po: Updated Greek translation. + +2004-02-07 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2004-02-06 Robert Sedak + + * hr.po: Updated Croatian translation. + +2004-02-06 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2004-02-01 Mətin Əmirov + + * az.po: Translation updated. + +2004-02-01 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-01-31 Mətin Əmirov + + * az.po: Translation updated. + +2004-01-29 Kjartan Maraas + + * POTFILES.skip: Add some generated files. + * no.po: Updated Norwegian translation. + +2004-01-28 Miloslav Trmac + + * cs.po: Fixed Czech translation. + +2004-01-27 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2004-01-27 Christophe Merlet + + * fr.po: Updated French translation. + +2004-01-22 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2004-01-21 Vincent van Adrighem + + * nl.po: Translation updated by Kees van den Broek. + +2004-01-18 Christiam Neumair + + * de.po: Updated German translation. + +2004-01-15 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2004-01-14 Francisco Javier F. Serrador + + * es.po: Updated spanish translation by Lucas Vieites + +2004-01-13 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2004-01-13 Vincent van Adrighem + + * nl.po: Translation updated by Kees van den Broek. + +2004-01-13 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-01-13 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2004-01-13 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2004-01-12 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-01-10 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2004-01-10 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + + * POTFILES.in: Added missing files. + +2004.01.09 Arafat Medini + + * ar.po: Updated Arabic translation + +2004-01-09 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2004-01-06 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2004-01-06 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2004-01-05 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation by Lucas Vieites. + +2004-01-04 Duarte Loreto + + * pt.po: Updated and revised Portuguese translation. + +2004-01-04 Christiam Neumair + + * de.po: Updated German translation. + +2004-01-04 Christophe Merlet + + * fr.po: Updated French translation. + +2004-01-03 Robert Sedak + + * hr.po: Updated Croatian translation. + +2004-01-02 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2003-12-31 Artur Flinta + + * pl.po: Updated Polish translation by MATE PL Team. + +2003-12-27 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2003-12-26 Kostas Papadimas + + * el.po: Updated Greek translation. + +2003-12-23 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2003-12-23 Åsmund Skjæveland + + * nn.po: Updated Norwegian Nynorsk translation. + +2003-12-20 Arafat Medini + + * ar.po: Updated Arabic translation + +2003-12-20 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation by Lucas Vieites. + +2003-12-20 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2003-12-18 Danilo Šegan + + * sr.po, sr@Latn.po: Cleaned up Serbian translation. + +2003-12-15 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-12-15 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2003-12-14 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-12-14 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + + * POTFILES.in: Added missing files. + +2003-12-12 Francisco Javier F. Serrador + + * es.po: Updated Spanish translation by Lucas Vieites + +2003-11-28 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-11-17 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2003-11-12 Kostas Papadimas + + * el.po: Updated Greek translation. + +2003-11-05 Vincent van Adrighem + + * nl.po: Dutch translation updated by Vincent van Adrighem. + +2003-11-01 KAMAGASAKO Masatoshi + + * ja.po: Updated Japanese translation. + +2003-10-26 Danilo Šegan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2003-10-25 Ole Laursen + + * da.po: Updated Danish translation. + +2003-10-11 Žygimantas Beručka + + * lt.po: Updated Lithuanian translation. + +2003-10-04 Miloslav Trmac + + * cs.po: Fixed bugs in Czech translation. + +2003-09-29 Gustavo Maciel Dias Vieira + + * pt_BR.po: Applied revision by Augusta Marques da Silva + . + +2003-09-17 Fatih Demir + + * ta.po: Committed new Tamil translation by Dinesh. + +2003-09-16 Artur Flinta + + * pl.po: Updated Polish translation. + +2003-09-15 Alessio Frusciante + + * it.po: Fixed typo (bug #122048). + +2003-09-14 Andras Timar + + * hu.po: Updated Hungarian translation. + +2003-09-13 Fatih Demir + + * tr.po: Committed updated Turkish translation by Gorkem. + +2003-09-11 Yuriy Syrota + + * uk.po: Updated Ukrainian translation. + +2003-09-09 Taneem Ahmed + + * bn.po: Updated Bangla (Bengali) translation. + +2003-09-10 Roozbeh Pournader + + * en_GB.po: Converted to UTF-8. + +2003-09-07 Nikos Charonitakis + + * el.po: A few fixes for Greek translation + +2003-09-07 Nikos Charonitakis + + * el.po: Review of Greek translation + +2003-09-07 Pablo Saratxaga + + * vi.po: Updated Vietnamese file + +2003-09-05 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2003-09-05 Taneem Ahmed + + * bn.po: Added Bangla translation by Sayamindu + of Ankur group . + +2003-09-05 Abel Cheung + + * eu.po, gl.po, lt.po: Converted to UTF-8. + +2003-09-04 Ivan Stojmirov + + * mk.po: Updated Macedonian translation. + +2003-09-03 Jarkko Ranta + + * fi.po: Updated Finnish translation again. + +2003-09-02 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2003-09-02 Mugurel Tudor + + * ro.po: Updated Romanian translation. + +2003-09-01 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2003-08-30 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2003-08-28 Pablo Gonzalo del Campo + + * es.po: Revision of Spanish translation by + Francisco Javier F. Serrador . + +2003-08-27 Alessio Frusciante + + * it.po: Updated Italian translation. + +2003-08-27 Vincent van Adrighem + + * nl.po: Dutch translation updated by Kees van den Broek. + +2003-08-26 Dafydd Harries + + * cy.po: Updated Welsh translation. + +2003-08-25 Duarte Loreto + + * pt.po: Fixed typos and accels in Portuguese translation. + +2003-08-24 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2003-08-23 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2003-08-22 Kjartan Maraas + + * no.po: Update Norwegian translation. + +2003-08-19 Yanko Kaneti + + * bg.po: Updated Bulgarian translation by Evgeni Boevski. + +2003-08-18 Metin Amiroff + + * az.po: Updated Azerbaijani translation. + +2003-08-13 Danilo Šegan + + * be.po: Updated Belarusian translation by Ales Nyakhaychyk + . + +2003-08-09 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2003-08-08 Metin Amiroff + + * az.po: Updated Azerbaijani translation. + +2003-08-08 Guntupalli Karunakar + + * hi.po: Updated Hindi translation. + +2003-08-08 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2003-08-07 Christophe Merlet + + * fr.po: Updated French translation. + +2003-08-07 Wang Jian + + * zh_CN.po: Updated Simplified Chinese translation by + Funda Wang . + +2003-08-07 Vincent van Adrighem + + * nl.po: Dutch translation updated by Reinout van Schouwen. + +2003-08-06 Ole Laursen + + * da.po: Updated Danish translation. + +2003-08-03 Kostas Papadimas + + * el.po: Updated Greek translation. + +2003-08-02 Telsa Gwynne + + * cy.po: More typo fixes. + +2003-08-01 Telsa Gwynne + + * cy.po: Typo fixes. + +2003-07-31 Christophe Merlet + + * fr.po: Updated French translation. + +2003-07-29 Christian Rose + + * sv.po: Updated Swedish translation. + +2003-07-27 Evandro Fernandes Giovanini + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2003-07-27 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2003-07-26 Gil "Dolfin" Osher + + * he.po: Updated Hebrew translation. + +2003-07-25 Pablo Saratxaga + + * vi.po: Updated Vietnamese file + * ms.po: Fixed syntax error + +2003-07-24 Dafydd Harries + + * cy.po: Updated Welsh translation. + +2003-07-23 Christian Neumair + + * de.po: Updated German translation. + +2003-07-23 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2003-07-22 Pablo Gonzalo del Campo + + * es.po: Updated Spanish translation by + Yelitza Louze + +2003-07-22 Danilo Segan + + * sr.po, sr@Latn.po: Updated Serbian translation by Serbian team + (Prevod.org). + +2003-07-22 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-07-22 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2003-07-21 Artur Flinta + + * pl.po: Updated Polish translation. + +2003-07-20 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2003-07-20 Telsa Gwynne + + * cy.po: Updated Welsh translation from Owain Green, + Dafydd Jones, Steve Griffiths and Dafydd Harries. + And I did one too :) + +2003-07-19 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2003-07-19 Gil "Dolfin" Osher + + * he.po: Updated Hebrew translation. + +2003-07-17 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-07-17 Vincent van Adrighem + + * nl.po: Dutch translation updated by Kees van den Broek. + +2003-07-17 Artur Flinta + + * pl.po: Updated Polish translation. + +2003-07-17 Artur Flinta + + * pl.po: Updated Polish translation. + +2003-07-16 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-07-16 Christian Neumair + + * de.po: Updated German translation. + +2003-07-15 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-07-15 Christian Rose + + * POTFILES.in: Added missing file. + * sv.po: Updated Swedish translation. + +2003-07-13 Metin Amiroff + + * az.po: Updated Azerbaijani translation. + +2003-07-11 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2003-07-10 Evandro Fernandes Giovanini + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2003-07-06 Andras Timar + + * hu.po: Updated Hungarian translation. + +2003-07-02 Artur Flinta + + * pl.po: Updated Polish translation. + +2003-06-30 Pauli Virtanen + + * fi.po: Set translator_credits. + +2003-06-30 Mohammad DAMT + + * id.po: Added Indonesian translation + +2003-06-26 Gil "Dolfin" Osher + + * he.po: Updated Hebrew translation. + +2003-06-23 Vincent van Adrighem + + * nl.po: Dutch translation updated by Kees van den Broek. + +2003-06-16 Dmitry G. Mastrukov + + * ru.po: Updated Russian translation + from Russian team . + +2003-06-04 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2003-06-04 Christian Neumair + + * de.po: Updated German translation. + +2003-05-28 Vincent van Adrighem + + * nl.po: Dutch translation updated by Reinout van Schouwen. + +2003-05-26 Paul Duffy + + * ga.po: Updated Irish Translation + +2003-05-22 Danilo ? egan + + * sr.po, sr@Latn.po: Updated Serbian translation. + +2003-05-20 Danilo ? egan + + * sr.po, sr@Latn.po: Added Serbian translation by Serbian team + (Prevod.org). + +2003-05-16 Laurent Dhima + + * sq.po: Updated Albanian translation. + +2003-05-13 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-01-14 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2003-05-12 Christophe Merlet + + * fr.po: Updated French translation. + +2003-05-11 KAMAGASAKO Masatoshi + + * ja.po: Updated Japanese translation. + +2003-05-07 Pablo Gonzalo del Campo + + * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites + +2003-05-07 Christian Rose + + * sv.po: Updated Swedish translation. + +2003-05-06 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2003-05-05 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-05-05 Dmitry G. Mastrukov + + * be.po: Updated Belarusian translation + from Belarusian team . + +2003-04-29 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-04-24 Abel Cheung + + * POTFILES.skip: Remove non-existant file(s). + +2003-03-29 Takeshi AIHANA + + * ja.po: Updated Japanese translation. + +2003-03-21 Guntupalli Karunakar + + * ml.po: Added Malayalam translation by + FSF-India + +2003-03-13 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2003-03-13 Sanlig Badral + + * mn.po: Updated Mongolian translation. + +2003-03-11 Metin Amiroff + + * az.po: Updated Azerbaijani translation. + +2003-03-10 Takeshi AIHANA + + * ja.po: Updated Japanese translation + by KAMAGASAKO Masatoshi . + +2003-03-07 Dmitry G. Mastrukov + + * be.po: Updated Belarusian translation + from Belarusian team . + +2003-03-05 Kostas Papadimas + + * el.po: Updated Greek translation. + +2003-03-04 Jarkko Ranta + * fi.po: Updated Finnish translation + +2003-03-03 Dmitry G. Mastrukov + + * ru.po: updated Russian translation + from Russian team . + +2003-03-03 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2003-02-27 Vincent van Adrighem + + * nl.po: Dutch translation updated by Reinout van Schouwen. + +2003-02-26 Ole Laursen + + * da.po: Updated Danish translation. + +2003-02-26 Miloslav Trmac + + * cs.po: Updated Czech translation. + +2003-02-25 Pablo Gonzalo del Campo + + * es.po: Updated one string in Spanish translation. + +2003-02-25 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2003-02-24 Christian Neumair + + * de.po: Updated German translation. + +2003-02-23 Christian Rose + + * sv.po: Updated Swedish translation. + +2003-02-23 Evandro Fernandes Giovanini + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2003-02-23 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2003-02-22 Laurent Dhima + + * sq.po: Updated Albanian translation + +2003-02-22 Christophe Merlet + + * fr.po: Updated French translation. + +2003-02-22 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2003-02-22 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2003-02-22 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2003-02-21 Roozbeh Pournader + + * fa.po: Added Persian translation. + +2003-02-21 Dmitry G. Mastrukov + + * be.po: Updated Belarusian translation + from Belarusian team . + +2003-02-18 Vincent van Adrighem + + * nl.po: Dutch translation updated by Vincent van Adrighem. + +2003-02-13 Vincent van Adrighem + + * nl.po: Dutch translation updated by Vincent van Adrighem. + +2003-02-11 Fatih Demir + + * tr.po: Committed updated Turkish translation by Arman. + +2003-02-07 Miloslav Trmac + + * cs.po: Fixed typo in Czech translation. + +2003-02-03 Daniel Yacob + + * am.po: Updated Amharic translation. + +2003-02-01 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2003-02-01 Christian Neumair + + * de.po: Updated German translation. + +2003-01-30 Fatih Demir + + * tr.po: Committed updated Turkish translation by Gorkem. + +2003-01-30 Christian Rose + + * sv.po: Some fixes for problems catched in translation review. + +2003-01-29 Dmitry G. Mastrukov + + * ru.po: updated Russian translation + from Russian team . + +2003-01-29 Laurent Dhima + + * sq.po: Added Albanian translation. + +2003-01-28 Yuriy Syrota + + * uk.po: Updated Ukrainiann translation + by Maxim Dzumanenko . + +2003-01-28 Dmitry G. Mastrukov + + * ru.po: updated Russian translation + from Russian team . + +2003-01-28 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2003-01-26 T???µivo Leedj??€rv + + * et.po: Updated Estonian translation. + +2003-01-26 Daniel Yacob + + * am.po: Updated Amharic translation. + +2003-01-26 Kang Jeong-Hee + + * ko.po: Updated Korean translation. + +2003-01-26 He Qiangqiang + + * zh_CN.po: Updated Simplified Chinese translation by + Xiong Jiang . + +2003-01-25 Christophe Merlet + + * fr.po: Updated French translation. + +2003-01-25 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2003-01-23 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2003-01-22 Christian Rose + + * mn.po: Added Mongolian translation by + Sanlig Badral . + +2003-01-22 Marius Andreiana + + * ro.po: updated ( thanks to Mugurel Tudor ) + +2003-01-22 Dmitry G. Mastrukov + + * ru.po: updated Russian translation + from Russian team . + +2003-01-22 Alessio Frusciante + + * it.po: Updated Italian translation + +2003-01-21 Christian Neumair + + * de.po: Updated German translation. + +2003-01-21 Kjartan Maraas + + * no.po: Updated Norwegian (bokmal) translation. + +2003-01-20 Pablo Saratxaga + + * vi.po: Updated Vietnamese file + +2003-01-20 Christian Neumair + + * de.po: Updated German translation. + +2003-01-19 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2003-01-18 Yanko Kaneti + + * bg.po: Updated Bulgarian translation by + Evgeni Boevski . + +2003-01-16 Gustavo Noronha Silva + + * pt_BR.po: updated translation. + +2003-01-16 Pablo Saratxaga + + * vi.po: Updated Vietnamese file + +2003-01-14 Daniel Yacob + + * am.po: Updated Amharic translation. + +2003-01-14 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2002-01-11 Daniel Yacob + + * am.po: Updated Amharic translation. + +2003-01-10 Pablo Saratxaga + + * vi.po: Updated Vietnamese file + * ms.po: Fixed syntax error + +2003-01-08 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2003-01-07 Kostas Papadimas + + * el.po: Updated Greek translation. + +2002-01-07 Naba Kumar + + * hi.po: New hindi translation by + Bhopal team + Guntupalli Karunakar + +2003-01-06 Artis Trops + + * lv.po: Updated Latvian translation. + +2003-01-06 Gil "Dolfin" Osher + + * he.po: Updated Hebrew translation. + +2003-01-03 Pablo Gonzalo del Campo + + * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites + +2003-01-03 Kjartan Maraas + + * no.po: Updated Norwegian (bokmal) translation. + +2003-01-01 Ole Laursen + + * da.po: Fixed a string in the Danish translation. + +2002-12-30 Vincent van Adrighem + + * nl.po: Dutch translation updated by Reinout van Schouwen. + +2002-12-23 Artis Trops + + * lv.po: Updated Latvian translation. + +2002-12-23 Miloslav Trmac + + * cs.po: Updated Czech translation from gstreamer-2-0 branch. + +2002-12-22 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-12-22 Ole Laursen + + * da.po: Updated Danish translation. + +2002-12-21 Hasbullah Bin Pit + + * ms.po: Updated Malay translation. + +2002-12-20 Gil "Dolfin" Osher + + * he.po: Updated Hebrew translation. + +2002-12-20 Christophe Merlet + + * fr.po: Updated French translation. + +2002-12-19 Andras Timar + + * hu.po: Updated Hungarian translation. + +2002-12-16 Christian Neumair + + * de.po: Updated German translation. + +2002-12-16 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-12-13 Daniel Yacob + + * am.po: Added Amharic translation. + +2002-12-12 Andras Timar + + * hu.po: Updated Hungarian translation. + +2002-12-09 Artis Trops + + * lv.po: sync with mate-2-0 branch. + +2002-12-04 Christian Neumair + + * POTFILES.(in/skip): Updated. + * de.po: Updated German translation. + +2002-12-03 Yuriy Syrota + + * uk.po: Ukrainian translation updated by + Maxim Dzumanenko + +2002-11-17 Kostas Papadimas + + * el.po: Updated Greek translation. + +2002-11-17 Ole Laursen + + * da.po: Updated Danish translation. + +2002-11-15 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-11-09 Dmitry G. Mastrukov + + * be.po: Updated Belarusian translation + * from Belarusian team . + +2002-11-05 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-11-03 Dmitry G. Mastrukov + + * be.po: Added Belarusian translation + * from Belarusian team . + +2002-10-19 Andras Timar + + * hu.po: Updated Hungarian translation. + +2002-10-13 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-10-11 Stanislav Brabec + + * cs.po: Updated Czech translation from Miloslav Trmac + . + +2002-10-10 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-10-08 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-10-08 Christian Neumair + + * de.po: Updated German translation. + +2002-10-08 Peteris Krisjanis + + * lv.po: Updated Latvian translation by Artis Trops + + +2002-10-06 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2002-09-30 Stanislav Brabec + + * cs.po: Updated Czech translation from Michal Bukovjan + . + +2002-09-29 Yanko Kaneti + + * bg.po. Updated Bulgarian translation. + +2002-09-29 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-09-28 Ole Laursen + + * da.po: Updated Danish translation. + +2002-09-28 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-09-29 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-09-25 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2002-09-24 Christian Neumair + + * de.po: Updated German translation. + +2002-09-24 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-09-13 Stanislav Brabec + + * cs.po: Updated Czech translation from Michal Bukovjan + . + +2002-09-13 Marius Andreiana + + * ro.po: updated ( thanks to Mugurel Tudor ) + +2002-09-12 Pablo Gonzalo del Campo + + * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites + +2002-09-11 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-08-31 Pablo Saratxaga + + * vi.po: Updated Vietnamese file + +2002-08-30 Takayuki KUSANO + + * ja.po: Updated Japanese translation. + +2002-08-28 He Qiangqiang + + * zh_CN.po: Updated Simplified Chinese translation. + +2002-08-21 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2002-08-20 Peteris Krisjanis + + * lv.po: Updated Latvian translation. + +2002-08-17 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2002-08-14 Peteris Krisjanis + + * lv.po: Updated Latvian translation. + +2002-08-13 Ole Laursen + + * da.po: Updated Danish translation. + +2002-08-13 Andras Timar + + * hu.po: Updated Hungarian translation. + +2002-08-10 Christian Meyer + + * de.po: Fixed. + +2002-08-08 Christian Meyer + + * de.po: Updated German translation. + +2002-08-08 Vincent van Adrighem + + * nl.po: Dutch translation updated by Taco Witte. + +2002-08-07 Evandro Fernandes Giovanini + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2002-08-07 Evandro Fernandes Giovanini + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2002-08-07 Christophe Merlet + + * fr.po: Updated French translation. + +2002-08-07 Christian Neumair + + * de.po: Updated German translation. + +2002-08-06 Yanko Kaneti + + * bg.po. Updated Bulgarian translation. + +2002-08-06 Christian Neumair + + * de.po: Updated German Translation. + +2002-08-06 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-08-06 Christophe Merlet + + * fr.po: Updated French translation. + +2002-08-05 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-08-05 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-08-05 T?????µivo Leedj????¢???‚???¬rv + + * et.po: Updated Estonian translation. + +2002-08-04 Gustavo Noronha Silva + + * pt_BR.po: update by + Evandro Fernandes Giovanini + +2002-08-03 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2002-08-03 Christian Rose + + * POTFILES.in: Fixed schemas file names. + * sv.po: Updated Swedish translation. + +2002-08-04 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-08-03 Dmitry G. Mastrukov + + * ru.po: updated Russian translation. + +2002-08-03 Dmitry G. Mastrukov + + * POTFILES.in: Fixed schemas filenames. + +2002-08-01 Iain + + * POTFILES.in: Added the schemas files... + +2002-08-01 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-07-30 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-07-29 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2002-07-28 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-07-28 Dmitry G. Mastrukov + + * ru.po: updated Russian translation. + +2002-07-27 Yanko Kaneti + + * bg.po. Updated Bulgarian translation. + +2002-07-27 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-07-24 Christian Meyer + + * de.po: Updated German translation. + +2002-07-21 Christophe Merlet + + * fr.po: Updated French translation. + +2002-07-19 Simos Xenitellis + + * el.po: Updated Greek translation by additions of Aarg. + +2002-07-18 Dmitry G. Mastrukov + + * POTFILES.in: Fixed cddb2/MATE_Media_CDDBSlave2.server.in.in. + +2002-07-13 Simos Xenitellis + + * el.po: Update of Greek translation by Nikos Charonitakis . + +2002-07-12 Jordi Mallach + + * ca.po: Updated Catalan translation. + +2002-07-03 Dmitry G. Mastrukov + + * ru.po: updated Russian translation. + +2002-06-25 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-06-24 Christophe Fergeau + + * fr.po : Updated French translation + +2002-06-23 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2002-06-22 Iain + + * POTFILES.in: Removed linux-cdrom.c and freebsd-cdrom.c as they don't + have _() in them any more. + +2002-06-21 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-06-20 Yanko Kaneti + + * bg.po. Updated Bulgarian translation. + +2002-06-20 Abel Cheung + + * .cvsignore: Ignore more files. + * POTFILES.in: Add missing file (freebsd-cdrom.c) + +2002-06-17 Takayuki KUSANO + + * ja.po: Updated Japanese translation. + +2002-06-15 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-06-11 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2002-06-11 Abel Cheung + + * POTFILES.skip: Ignore schemas files which contain no + translatable strings. + +2002-06-10 Pablo Saratxaga + + * vi.po: Updated Vientamese file + +2002-06-10 Yanko Kaneti + + * bg.po (added): Bulgarian translation by + Evgeni Boevski . + +2002-06-10 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-06-09 Vincent van Adrighem + + * nl.po: Dutch translation updated by Tino Meinen. + +2002-06-06 Dmitry G. Mastrukov + + * ru.po: updated Russian translation. + +2002-06-05 Christian Rose + + * sv.po: Fix. + +2002-06-04 T?????µivo Leedj????¢???‚???¬rv + + * et.po: Updated Estonian translation. + +2002-06-03 Germ??n Poo Caama?????±o + + * es.po: Updated Spanish translation from + Lucas 'Basurero' Vieites + +2002-06-03 Jarkko Ranta + + * fi.po: Updated Finnish Translation + +2002-06-03 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2002-06-03 Christian Rose + + * sv.po: Fixed Swedish translation. + +2002-06-02 Pablo Saratxaga + + * ca.po: Updated Catalan file + * vi.po: Updated Vietnamese file + +2002-06-01 Carlos Perell?????³ Mar?????­n + + * es.po: Updated by Lucas Vieites + +2002-06-01 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-05-31 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-05-31 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-05-31 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-05-31 Ole Laursen + + * POTFILES.in: Fixed s/.in.h/.in/ and added + gmix/mate-volume-control.desktop.in.in instead of + gmix/mate-volume-control.desktop.in. + + * da.po: Updated Danish translation. + +2002-05-29 Duarte Loreto + + * pt.po: Updated Portuguese translation + +2002-05-27 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-05-25 Ole Laursen + + * da.po: Updated Danish translation. + +2002-05-25 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-05-21 Ole Laursen + + * da.po: Updated Danish translation. + +2002-05-19 Vlad Harchev + + * ru.po: updated russian translation from Dmitry G. Mastrukov + . + +2002-05-19 Vlad Harchev + + * ru.po: updated russian translation from Dmitry G. Mastrukov + . + +2002-05-18 Alessio Frusciante + + * it.po: Updated Italian translation. + +2002-05-17 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-05-16 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-05-16 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-05-14 Christophe Merlet + + * fr.po: Updated French translation. + +2002-05-14 Pablo Saratxaga + + * es.po,uk.po: Fixed syntax errors + * vi.po: Added Vietnamese file + +2002-05-13 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-05-12 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-05-11 Ole Laursen + + * da.po: Updated Danish translation. + +2002-05-11 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-05-08 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-05-07 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-05-06 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2002-05-04 Duarte Loreto + + * pt.po: Updated Portuguese translation and converted to UTF-8. + +2002-05-03 Vincent van Adrighem + + * nl.po: Updated Dutch translation (Huib Kleinhout). + +2002-04-30 Pablo Saratxaga + + * eu.po: Added Basque file + * wa.po: Added Walloon file + +2002-04-30 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-04-29 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-04-26 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2002-04-24 T?????µivo Leedj????¢???‚???¬rv + + * et.po: Updated Estonian translation + by Ilmar Kerm . + +2002-04-23 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-04-22 Jarkko Ranta + + * fi.po: Updated Finnish translation again. + +2002-04-22 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2002-04-18 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-04-18 Changwoo Ryu + + * ko.po: Updated Korean translation again, to fix some wrong + translations. + +2002-04-17 Changwoo Ryu + + * ko.po: Updated Korean translation. + +2002-04-16 Christophe Merlet + + * fr.po: Updated French translation from work of + Christophe Fergeau + and converted to UTF-8. + +2002-04-15 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-04-15 Valek Filippov + + * ru.po: updated russian translation from Dmitry Mastrukov. + +2002-04-14 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2002-04-09 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-04-06 Ole Laursen + + * da.po: Updated Danish translation. + +2002-04-05 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-04-02 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-04-01 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-04-01 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-03-31 Wang Jian + + * zh_CN.po: Updated Simplified Chinese translation by + He Qiangqiang . + +2002-03-28 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-03-28 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-03-27 Jarkko Ranta + + * fi.po: Updated Finnish transltaion once again. + +2002-03-27 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2002-03-26 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-03-24 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-22 Ole Laursen + + * da.po: Updated Danish translation. + +2002-03-22 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-20 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-20 T?????µivo Leedj????¢???‚???¬rv + + * et.po: Updated Estonian translation and converterd to UTF-8. + +2002-03-19 Ole Laursen + + * da.po: Updated Danish translation. + +2002-03-17 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-03-15 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-03-15 Valek Filippov + + * ru.po: updated russian translation + +2002-03-13 Hasbullah Bin Pit + + * fi.po: Fixed invalid multibyte sequence + requested by 'boc' + +2002-03-13 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2002-03-13 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-03-12 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-03-11 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-03-10 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-03-09 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-08 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-07 Ole Laursen + + * da.po: Updated Danish translation. + +2002-03-07 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-03-07 Christian Rose + + * POTFILES.in: Added missing file (fixes #73750). + +2002-03-06 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2002-03-06 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-03-06 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-03-06 Valek Filippov + + * ru.po: updated russian translation + +2002-03-06 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-03-06 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-05 Carlos Perello Marin + + * es.po: Updated by Lucas 'Basurero' Vieites + +2002-03-05 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-03-04 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-03-04 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-03-04 Fatih Demir + + * tr.po: Committed updated Turkish translation by G?????¶rkem. + +2002-03-03 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-03 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-03-02 Ole Laursen + + * da.po: Updated Danish translation (with a little help from Caja). + +2002-03-02 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-03-02 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-03-01 Christian Rose + + * sv.po: Updated Swedish translation. + +2002-02-27 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-02-27 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-02-26 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-02-24 Zbigniew Chyla + + * pl.po: Updated Polish translation by + MATE PL Team . + +2002-02-23 Ole Laursen + + * da.po: Updated Danish translation. + +2002-02-22 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-02-22 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + * POTFILES.in: Added missing cddb-slave2 stuff. + +2002-02-20 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2002-02-16 Ole Laursen + + * da.po: Updated Danish translation and converted it to UTF-8. + +2002-02-10 Kjartan Maraas + + * no.po: Updated Norwegian (bokm?????¥l) translation. + +2002-02-10 Kjartan Maraas + + * no.po: Updated Norwegian translation. + * POTFILES.in: Populate some more. + +2002-02-08 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2002-02-07 Abel Cheung + + * zh_TW.po: Update traditional Chinese translation. + +2002-02-05 Abel Cheung + + * zh_CN.GB2312.po -> zh_CN.po + +2002-02-04 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2002-01-30 Roy-Magne Mo + + * nn.po: Updated Norwegian Nynorsk and converted to UTF-8 + +2002-01-29 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2002-01-28 Hasbullah Bin Pit + + * ms.po: Updated Malay Translation. + +2002-01-27 Christian Rose + + * sv.po: Updated and converted to UTF-8. + +2002-01-27 Kjartan Maraas + + * no.po: Updated Norwegian translation. + * POTFILES.in: Populate some more. + +2002-01-25 Roy-Magne Mo + + * nn.po: Updated Norwegian (nynorsk) translation. + +2002-01-23 Peteris Krisjanis + + * lv.po: Updated Latvian translation. + +2002-01-17 Hasbullah Bin Pit + + * ms.po: Added Malay Translation. + +2002-01-12 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2001-12-31 Valek Filippov + + * ru.po: updated russian translation + +2001-12-16 Duarte Loreto + + * pt.po: Updated Portuguese translation. + +2001-12-16 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2001-12-15 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-12-13 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-12-11 Abel Cheung + + * zh_TW.po: Update traditional Chinese translation. + +2001-12-08 Christian Rose + + * .cvsignore: Changed to incude all potfiles. + +2001-12-03 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-11-27 Roy-Magne Mo + + * nn.po: Updated Norwegian (nynorsk) translation. + +2001-11-18 Valek Filippov + + * ru.po: updated russian translation + +2001-11-11 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-11-09 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2001-11-09 Abel Cheung + + * zh_TW.po: Update traditional Chinese translation, converted to UTF8. + +2001-11-01 Peteris Krisjanis + + * lv.po: Updated Latvian translation by Artis Trops + + +2001-10-29 Andras Timar + + * hu.po: Updated Hungarian translation. + +2001-10-26 Peteris Krisjanis + + * lv.po: Updated Latvian translation by Artis Trops + + +2001-10-14 Gustavo Maciel Dias Vieira + + * pt_BR.po: Updated Brazilian Portuguese translation. + +2001-10-14 Zbigniew Chyla + + * pl.po: Updated Polish translation. + +2001-10-13 Christophe Merlet + + * fr.po: Updated French translation. + +2001-10-10 Carlos Perell?????³ Mar?????­n + + * pt.po: Updated by Duarte Loreto + +2001-10-07 Artis Trops + + * lv.po: Added Latvian translation. + +2001-10-06 Simos Xenitellis + + * el.po: Updated Greek translation. + +2001-10-03 Carlos Perell?????³ Mar?????­n + + * es.po: Updated Spanish translation by Lucas 'Basurero' Vieites + + +2001-10-03 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-09-28 Christopher R. Gabriel + + * it.po: More updates from Salvo Isaja + +2001-09-25 Christopher R. Gabriel + + * it.po: Updates from Salvo Isaja + +2001-09-25 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2001-09-22 Christophe Merlet + + * fr.po: Updated French translation. + +2001-09-21 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-09-20 Stanislav Brabec + + * cs.po: Updated translation. + +2001-09-21 Abel Cheung + + * zh_TW.po: Updated traditional Chinese translation. + +2001-09-17 Pablo Saratxaga + + * az.po: Updated Azeri file + +2001-09-13 Pablo Saratxaga + + * da.po: Updated Danish file + * ga.po: Updated Irish file + * ca.po: Updated Catalan file + +2001-09-09 Carlos Perell?????³ Mar?????­n + + * es.po: Updated Spanish translation by Lucas 'Basurero' + Vieites + +2001-09-06 Abel Cheung + + * zh_TW.po: updated traditional Chinese translation. + +2001-09-03 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-08-31 Abel Cheung + + * zh_TW.Big5.po: Rename to ...... + * zh_TW.po: This. + +2001-08-25 Christophe Merlet + + * fr.po: Updated French translation. + +2001-08-24 Andras Timar + + * hu.po: Updated and fixed linguistic issues. + +2001-08-19 Zbigniew Chyla + + * pl.po: Updated Polish translation. + +2001-08-19 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + +2001-08-07 Stanislav Brabec + + * POTFILES.in: Added vu-meter/reclevel.desktop.in. + * cs.po: Updated translation. + +2001-08-07 Zbigniew Chyla + + * pl.po: Updated Polish translation. + +2001-07-18 Fatih Demir + + * tr.po: Committed updated Turkish translation by + G?????¶rkem Cetin. + +2001-07-17 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-07-16 Kjartan Maraas + + * nn.po: Added Norwegian (nynorsk) translation. + +2001-07-11 Christopher R. Gabriel + + * it.po: Updated italian translation from Salvo Isaja + +Mon Jul 02 15:50:06 2001 George Lebl + + * zh_TW.Big5.po: update from "R.I.P. Deaddog" + +2001-07-01 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-06-12 Pablo Saratxaga + + * az.po: Updated Azeri file + +2001-06-17 Christian Meyer + + * de.po: Updated de.po. + +2001-06-14 Stanislav Brabec + + * cs.po: Updated translation. + +2001-06-13 Radek Doulik + + * cs.po: updated Czech translations + +2001-06-12 Pablo Saratxaga + + * ca.po: Updated Catalan file + +2001-06-11 Radek Doulik + + * cs.po: updated Czech translations + +2001-06-10 Pablo Saratxaga + + * az.po: Updated Azeri file + +2001-06-09 Kjartan Maraas + + * no.po: Updated Norwegian translation. + * POTFILES.in: Added gmix/prefs.c + +2001-06-07 Fatih Demir + + * tr.po: Committed updated Turkish translation + by G?????¶rkem. + +2001-06-07 Pablo Saratxaga + + * zh_TW.Big5.po: updated Chinese file + +2001-06-06 Christian Meyer + + * de.po: Updated German translation. + +2001-06-06 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-06-05 Gediminas Paulauskas + + * lt.po: Updated Lithuanian translation. + +2001-06-05 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2001-06-04 Pablo Saratxaga + + * ca.po: Updated Catalan file + +2001-06-04 Fatih Demir + + * tr.po: Committed updated Turkish translation + by G?????¶rkem. + +2001-06-03 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-06-03 Fatih Demir + + * ko.po: Committed updated ko.po by Young-Ho. + +2001-06-03 Karl Eichwalder + + * update.pl: Remove file; we're using xml-i18n-update. + * update.sh: Ditto. + +2001-06-02 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2001-06-02 Peter Teichman + + * cs.po, da.po, de.po, el.po, es.po, et.po, fi.po, fr.po, ga.po, + gl.po, hu.po, ja.po, ko.po, lt.po, no.po, pt.po, pt_BR.po, ru.po, + sk.po, sl.po, sv.po, tr.po, uk.po: + Merge translated strings from .desktop files into the po files. + The only changes are the additions of already-translated strings, + so this shouldn't step on any toes. + +2001-06-02 Fatih Demir + + * ko.po: Committed updated Korean translation by + Young-Ho. + +2001-06-02 Christian Rose + + * sv.po: Fixed Swedish translation. Thanks to + G?????¶ran Uddeborg and + Peter Karlsson for their input. + +2001-06-01 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-06-01 Christian Rose + + * sv.po: Updated Swedish translation. + * .cvsignore: Added messages. + +2001-05-31 Christian Meyer + + * de.po: Updated German translation. + +2001-05-29 Kjartan Maraas + + * no.po: Updated Norwegian translation. + * POTFILES.in: Added src/prefs.h. + +2001-05-21 Pablo Saratxaga + + * ja.po,ko.po,lt.po,pl.po,pt_BR.po,uk.po: fixed invalid multibyte + +2001-05-19 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2001-05-02 Pablo Saratxaga + + * az.po: Updated Azeri file + +2001-03-31 Pablo Saratxaga + + * ca.po: Updated Catalan file + +2001-03-28 Christian Meyer + + * de.po: Updated German translation. + +2001-03-28 Pablo Saratxaga + + {en_GB,et,ga,hu,nl}.po: corrected charset lines + +2001-03-23 Fatih Demir + + * tr.po: Updated Turkish translation by G?????¶rkem. + +2001-03-20 Stanislav Brabec + + * cs.po: Updated translation. + +2001-03-12 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2001-03-08 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + +2001-03-02 Christian Meyer + + * de.po: Revised German translation. + +2001-03-01 Carlos Perell?????³ Mar?????­n + + * es.po: Updated Spanish translation by Lucas 'Basurero' + Vieites + +2001-02-18 Simos Xenitellis + + * el.po: More minor corrections. + +2001-02-15 Valek Filippov + + * ru.po: updated russian translation + +2001-02-14 Dan Damian + + * ro.po: Update Romanian translation. + +2001-02-13 Simos Xenitellis + + * el.po: Minor corrections (verification). + + * el.po: Updated Greek translation. + +2001-02-12 Christophe Merlet + + * fr.po: Updated French translation. + +2001-02-12 Szabolcs Ban + + * hu.po: Updated Hungarian translations, + work of Gergely Nagy + +2001-02-09 Christian Meyer + + * de.po: Small fix. + +2001-02-09 Martin Norb????¢???‚???¬ck + + * sv.po: Updated Swedish translation. + +2001-02-07 Christopher R. Gabriel + + * it.po: Updated italian translation + +2001-02-06 Christian Meyer + + * de.po: Updated German translation. + +2001-01-24 Szabolcs Ban + + * hu.po: Tons of fixes by Andras and Emese (spelling, + terminology, headers) + +2001-01-23 Valek Filippov + + * ru.po: updated russian translation + +2001-01-19 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2001-01-16 Stanislav Brabec + + * cs.po: Updated translation. + * POTFILES.in: Added gmix/device_labels_alsa.h. + +2001-01-15 Christopher R. Gabriel + + * it.po: Updated italian translation from Salvo Isaja + +2001-01-13 Simos Xenitellis + + * el.po: Small addition. 8-/ + +2001-01-11 Jarkko Ranta + + * fi.po: Small addition ;) + +2001-01-11 Christian Rose + + * sv.po: Small correction. + +2001-01-10 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-01-10 Jarkko Ranta + + * fi.po: Updated Finnish translation. + +2001-01-09 Valek Filippov + + * ru.po: updated russian translation + +2001-01-09 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-01-04 Pablo Saratxaga + + * az.po: Added Azeri file + +2001-01-04 Christian Rose + + * sv.po: Updated Swedish translation. + +2001-01-02 Stanislav Visnovsky + + * sk.po: Updated and corrected Slovak translation. + +2000-12-27 Fatih Demir + + * tr.po: Dumdidum, Rama(d|z)an has finished .. now you're + worth getting an updated tr.po ,-) + +2000-12-12 Stanislav Visnovsky + + * sk.po: Updated Slovak translation. + +2000-12-08 Fatih Demir + + * ko.po: Committed updated Korean translation. + +2000-12-06 Stanislav Visnovsky + + * sk.po: Added Slovak translation. + +2000-12-05 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-11-16 Akira TAGOH + + * ja.po: Updated Japanese translation. + +2000-11-04 Zbigniew Chyla + + * pl.po: Updated Polish translation + +2000-11-04 Stanislav Brabec + + * cs.po: Updated translation. + +2000-10-10 Christophe Merlet + + * fr.po: Updated French translation. + +2000-10-08 Akira TAGOH + + * ja.po: Updated Japanese translation. + +2000-09-27 Stanislav Brabec + + * cs.po: Updated translation. + +2000-09-13 Christian Meyer + + * update.pl: Added perl script from kanikus. + * README.tools: Added text file. + +2000-08-16 Pablo Saratxaga + + * el.po: updated Greek file + * ga.po: corrected small syntax error + * ro.po: completed header so msgfmt -c works + +2000-08-14 Kai Lahmann + + * de.po: Updated German translation from chrisime + +2000-08-12 Kai Lahmann + + * de.po: Updated German translation + +2000-08-09 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-08-08 Kai Lahmann + + * de.po: Updated German translation + +2000-08-04 Kai Lahmann + + * de.po: Updated German translation + +2000-08-02 Jarkko Ranta + + * fi.po: Updated Finnish translation + +2000-07-31 Kai Lahmann + + * de.po: Updated German translation + +2000-07-13 Benedikt Roth + + * nl.po: Updated Dutch translation from Dennis Smit + +2000-06-30 Christopher R. Gabriel + + * it.po: updated italian translation from + Salvo Isaja + +2000-06-14 Christopher R. Gabriel + + * it.po: updated + +2000-06-11 Fatih Demir + + * tr.po: Updated the Turkish translation. + +Tue May 30 09:19:59 CEST 2000 Stanislav Brabec + + * cs.po: Updated translation. + +2000-05-23 Valek Filippov + + * ru.po: updated russian translation + * update.sh: 1.2.5 version. + +2000-05-20 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + * es.po: Updated Spanish translation. + +2000-05-20 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-20 Yukihiro Nakai + + * ja.po: Update from Akira TAGOH. + +2000-05-19 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-19 Yuri Syrota + + * uk.po: Update Ukrainian translation. + +2000-05-19 Karl Eichwalder + + * de.po: Update. + +2000-05-18 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-05-18 Yuri Syrota + + * uk.po: Update Ukrainian translation. + +2000-05-18 Yukihiro Nakai + + * ja.po: Update from Akira TAGOH. + +2000-05-18 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + * es.po: Updated Spanish translation. + +2000-05-17 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-05-17 Karl Eichwalder + + * de.po: Update. + +2000-05-17 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-16 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-16 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-05-14 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-14 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-13 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-05-13 Karl Eichwalder + + * de.po: Update. + +Wed May 10 23:08:12 CEST 2000 Stanislav Brabec + + * cs.po: Updated translation. + +2000-05-09 Andreas Hyden + + * sv.po: Updated Swedish translation. + * update.sh: Updated. + +2000-05-09 Karl Eichwalder + + * de.po: Update. + +2000-05-09 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + +2000-05-09 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-05-08 Karl Eichwalder + + * de.po: Update. + +2000-05-08 Kenneth Christiansen + + * da.po: Updated Danish translations. + +2000-05-08 Kenneth Christiansen + + * update.sh: Updated update.sh to support + merging, --help, easier porting to new + packages, et al. + +2000-05-08 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-06 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-05-06 Karl Eichwalder + + * de.po: Update. + +2000-05-05 Karl Eichwalder + + * pl.po: Merge in polish messages of the grecord module; done by + Marcin Owsiany . + +2000-05-04 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + +2000-05-03 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-04-30 Karl Eichwalder + + * de.po: Update. + +2000-04-29 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-04-29 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-04-29 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + +2000-04-29 Karl Eichwalder + + * de.po: More complete. + * POTFILES.in: Sort alphabetically. + * de.po: Improve it. + * de.po: Add some translations. + +2000-04-28 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-04-25 Valek Filippov + + * ru.po: Updated russian translation. + +2000-04-25 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-04-25 Jesus Bravo Alvarez + + * gl.po: Updated Galician translation. + +2000-04-25 Fatih Demir + + * tr.po : Updated the Turkish translation . + +2000-04-25 Arjan Scherpenisse + + * nl.po: Updated Dutch translation, credits to + Dennis Smit + +2000-04-24 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-04-24 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-04-21 Andreas Hyden + + * POTFILES.IN: Added grecord source files. + +2000-04-20 Andreas Hyden + + * sv.po: Updated Swedish translation. + +2000-04-17 Valek Filippov + + * ru.po: Updated translation. + +2000-04-16 Karl EICHWALDER + + * de.po: Cleanup. + +2000-04-08 Pablo Saratxaga + + * lt.po: added Lihuanian file + +2000-04-01 Kjartan Maraas + + * no.po: Updated Norwegian translation. + * ru.po: Updated Russian translation from Valek + Filippov . + +2000-03-26 Karl EICHWALDER + + * de.po: Fix header (charset). + +2000-03-08 Alastair McKinstry + + * ga.po: Updated Irish translation. + +2000-02-26 Christopher R. Gabriel + + * it.po: updated italian translation from + "Salvo Isaja" + +2000-02-26 Zbigniew Chyla + + * pl.po: Updated translation. + +2000-02-12 Fatih Demir + + * tr.po : Added the Turkish translation . + +2000-01-31 Yuan-Chung Cheng + + * zh_CN.GB2312.po: Added po file from TurboLinux Chinese Develop Team. + +2000-01-19 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +2000-01-12 Yuri Syrota + + * uk.po: Updated. + +2000-01-03 Kjartan Maraas + + * update.sh: A little script that lets people + update the .pot file without makefiles etc. + +2000-01-03 Jesus Bravo Alvarez + + * gl.po: Updated. + +1999-12-29 Zbigniew Chyla + + * pl.po: Updated translation. + +1999-12-16 Karl Eichwalder + + * de.po: Update. + +Thu Dec 16 11:35:59 1999 Changwoo Ryu + + * ko.po: Updated Korean translation. + +1999-12-16 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +1999-12-13 Stanislav Brabec + + * POTFILES.in: Added tcd/track_buttons.c. + * cs.po: Updated translation. + +1999-12-11 Christopher R. Gabriel + + * it.po: Updated italian translation by Salvo Isaja + +1999-12-01 Martin Norb????¢???‚???¬ck + + * sv.po: Updated Swedish translation. + +1999-11-27 Karl EICHWALDER + + * de.po: Update. + +1999-11-22 Yuri Syrota + + * uk.po: Updated Ukrainian translation. + +1999-11-17 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +1999-11-17 Pablo Saratxaga + * el.po: added Greek translation + * es.po: updated spanish translation + * *.po: run update-po as the *.po files were way out of date; + so translators can see updated files and complete them + +1999-11-02 Yuri Syrota + + * uk.po: Added Ukrainian translation. + +1999-10-21 Stanislav Brabec + + * POTFILES.in: After fix added back gmix/device_labels_linux.h. + +1999-10-12 Dan Damian + + * ro.po: Added Romanian translation. + +1999-10-07 Jesus Bravo Alvarez + + * gl.po: Added Galician translation. + +1999-10-05 Sergey Panov + + * ru.po: updated + +1999-10-04 Stanislav Brabec + + * POTFILES.in: Added gmix/device_labels_linux.h. + * cs.po: Updated. + +1999-10-02 Karl Eichwalder + + * de.po: Update. + +1999-10-02 +09 Changwoo Ryu + + * ko.po: Updated translation. + +1999-09-28 Kjartan Maraas + + * no.po: Updated Norwegian translation. + +1999-09-28 Martin Baulig + + * cs.po: Added from Stanislav Brabec + +1999-09-27 Rodrigo Stulzer Lopes + + * pt_BR.po: Added + +1999-09-27 Richard Hult + + * sv.po: Updated Swedish translation. + +1999-09-27 Zbigniew Chyla + + * pl.po: Updated translation. + +1999-09-26 Lauris Kaplinski + + * et.po: Added Estonian tranlation + +1999-09-23 Tomas Ogren + + * sv.po: Update from Andreas Persenius + +1999-09-23 Kjartan Maraas + + * da.po: Updated Danish translation from Kenneth + Christiansen + +1999-09-22 Vincent Renardias + + * fr.po: updated for 1.0.40: + > 114 translated messages, 6 fuzzy translations, 5 untranslated messages. + < 125 translated messages. + +1999-09-22 Yukihiro Nakai + + * ja.po: Update from ITANI Eiichiro. + +1999-09-19 Pablo Saratxaga + + * es.po: updated spanish language file + +1999-09-19 Zbigniew Chyla + + * pl.po: Updated. + +1999-09-18 Kjartan Maraas + + * no.po: Updated translation. + +1999-09-17 Kjartan Maraas + + * da.po: Updated Danish translation from Kenneth + Christiansen . + +1999-09-02 Zbigniew Chyla + + * pl.po: Added translation. + +1999-08-26 Kjartan Maraas + + * no.po: Updated translation. + +1999-08-15 Mikko Rauhala + + * fi.po: Updated. + +1999-07-27 Sergey Panov + + * ru.po: formerly ru_RU.po, updated + +1999-07-21 Vincent Renardias + + * fr.po: Completed. + +1999-07-11 Tomas Ogren + + * sv.po: Updated + +1999-06-04 Kjartan Maraas + + * en_GB.po: Added British translation from Robert Brady. + +1999-05-31 James Henstridge + + * fi.po: fixed problem with po file that Steve Luzynski mentioned + on mate-list. + +1999-05-26 Tuomas J. Lukka + + * fi.po: update + +1999-05-24 Kjartan Maraas + + * no.po: Updated translation. + +1999-05-19 Yukihiro Nakai + + * ja.po: Updated translation. + +1999-05-05 Kjartan Maraas + + * no.po: Updated translation. + +1999-05-02 Matthias Warkus + + * de.po: Minor update. + +1999-03-27 Kjartan Maraas + + * no.po: Updated. + +1998-12-20 Kjartan Maraas + + * no.po: Updated. + +1998-12-11 Tim P. Gerla + + * POTFILES.in: Added cddbslave/main.c + +1998-11-26 Tuomas J. Lukka + + * fi.po tiny addition + +1998-11-26 Tuomas J. Lukka + + * update fi.po + * cddb_status.c to POTFILES.in + +1998-11-26 Nuno Ferreira + + * pt.po: Updated. + +1998-11-17 Tuomas J. Lukka + + * Update fi.po with "normal" etc. strings from gtcd + +1998-11-17 Tuomas J. Lukka + + * fix da.po to compile + +1998-11-17 Tuomas J. Lukka + + * add fi.po + +1998-10-03 Nuno Ferreira + + * POTFILES.in: Added tcd/popup.c. + + * pt.po: Updated. + +1998-09-02 Nuno Ferreira + + * pt.po: Updated. + + * POTFILES.in: Added tcd/callbacks.c. + +1998-08-28 Tim P. Gerla + + * POTFILES.in: Changed tcd/properties.c to tcd/prefs.c, and added + tcd/tooltips.h. + +1998-08-26 Nuno Ferreira + + * POTFILES.in: Added `tcd/properties.c', `tcd/gtracked.c'. + +1998-08-18 Nuno Ferreira + + * POTFILES.in: Added `tcd/gtcd.c', `tcd/gabout.c', `tcd/gcddb.c'. + + * pt.po: Updated Portuguese translation. + +1998-08-14 Federico Mena Quintero + + * POTFILES.in: Removed gnomovision files from POTFILES.in since + they are not being distributed. + +1998-05-09 Marc Ewing + + * removed mail headers from ga.po + +Sat May 2 23:01:35 1998 Kjartan Maraas + + * no.po: New file. + +Sun, 22 Feb 1998 19:27:35 +0100 Vincent Renardias + + * fr.po: New file. + +1998-02-22 Carsten Schaar + + * de.po: New file. + +Tue Feb 17 11:01:49 KST 1998 Changwoo Ryu + + * ko.po: New file. diff --git a/po/LINGUAS b/po/LINGUAS new file mode 100644 index 0000000..126df2f --- /dev/null +++ b/po/LINGUAS @@ -0,0 +1,104 @@ +# please keep this list sorted alphabetically +af +am +ar +as +ast +az +be +bg +bn +bn_IN +br +bs +ca +ca@valencia +cmn +cs +cy +da +de +dz +el +en_AU +en_CA +en_GB +es +es_AR +es_CO +es_MX +es_PR +et +eu +fa +fi +fr +fr_CA +frp +ga +gl +gu +he +hi +hr +hu +hy +id +is +it +ja +jv +ka +kk +kn +ko +ku +ku_IQ +ky +lt +lv +mai +mg +mk +ml +mn +mr +ms +nb +nds +ne +nl +nn +oc +or +pa +pl +pms +pt +pt_BR +ro +ru +rw +sc +si +sk +sl +sq +sr +sr@latin +sv +ta +te +th +tk +tr +ug +uk +ur +uz +vi +wa +xh +zh_CN +zh_HK +zh_TW diff --git a/po/POTFILES.in b/po/POTFILES.in new file mode 100644 index 0000000..1ac9a0e --- /dev/null +++ b/po/POTFILES.in @@ -0,0 +1,6 @@ +# List of source files containing translatable strings. +# Please keep this file sorted alphabetically. +[encoding: UTF-8] +data/ukui-volume-control.desktop.in.in +data/ukui-volume-control-applet.desktop.in +ukui-volume-control-applet-qt/main.cpp diff --git a/po/POTFILES.skip b/po/POTFILES.skip new file mode 100644 index 0000000..4deed54 --- /dev/null +++ b/po/POTFILES.skip @@ -0,0 +1,9 @@ +data/ukui-volume-control.desktop.in +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_systemtray_widget.cpp +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_systemtray_widget.h +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia.pro +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_application.h +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_control_widget.cpp +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_control_widget.h +ukui-volume-control/ukui-volume-control-applet-qt/ukmedia_application.cpp +ukui-volume-control/ukui-volume-control-applet-qt/main.cpp diff --git a/po/af.po b/po/af.po new file mode 100644 index 0000000..ad80a72 --- /dev/null +++ b/po/af.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# F Wolff , 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Afrikaans (http://wiki.ukui.org/trans/af/)\n" +"Language: af\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Klank" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Verander klankvolume en klankgebeure" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volumebeheer" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Wys volumebeheer vir die werkskerm" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Weergawe van hierdie toepassing" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Volumebeheer" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Wat tans vir die klankstelsel om te reageer" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Beginbladsy" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Volumebeheer" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Toevoer" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Afvoer" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Volumebeheer" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Links" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Regs" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Agter" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Voor" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balans:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "Doo_f:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Onversterk" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Doof uit" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profiel:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ver_binding:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Gedeaktiveer" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u afvoer" +msgstr[1] "%u afvoere" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u toevoer" +msgstr[1] "%u toevoere" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Naam" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Klankeffekte" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "W_aarskuwingvolume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Afvoervolume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardeware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Kies 'n toestel om in te stel:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Instellings vir die gekose toestel:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Toevoervolume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Toevoervlak:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Kies 'n toestel vir klanktoevoer:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Kies 'n toestel vir klankafvoer:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Toepassings" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Daar is geen toepassing wat tans oudio speel of opneem nie." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Klankvoorkeure" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Geen klanke" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Ingebou" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Pasgemaak" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Verstek" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Vanaf tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipe" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Klank_tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Kies 'n waarskuwingklank:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Aktiveer _venster- en knoppieklanke" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Kon nie klankvoorkeure begin nie: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Doof uit" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Klankvoorkeure" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/am.po b/po/am.po new file mode 100644 index 0000000..f1454c5 --- /dev/null +++ b/po/am.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ge'ez Frontier Foundation , 2002 +# samson , 2013,2015,2017 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Amharic (http://wiki.ukui.org/trans/am/)\n" +"Language: am\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ድምፅ " + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "የድምፅ መጠን እና የድምፅ ሁኔታዎችን መቀየሪያ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "መጠን መቆጣጠሪያ " + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "የዴስክቶፕ መጠን መቆጣጠሪያ ማሳያ " + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "የመተግበሪያው እትም " + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "debug ማስቻያ" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — የሜት ድምፅ መቆጣጠሪያ ክፍል" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "የ ድምፅ ስርአት ዝግጁ አይደለም" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "የድምፅ ስርአት እስኪመልስ በመጠበቅ ላይ" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "የ ድምፅ ስርአት ተተኪ ተፈጥሯል" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "ገጹን በማስጀመር ላይ" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — የሜት ድምፅ መቆጣጠሪያ ክፍል" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ማስገቢያ " + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "ውጤት " + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "የማይክሮን መጠን " + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "የድምፅ ውጤት መጠን " + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " የ ሜት ድምፅ መቆጣጠሪያ ክፍል" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "የ ግራ " + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "የ ቀኝ " + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "የ ኋላ " + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "የ ፊት " + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "አነስተኛ " + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "ከፍተኛ " + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_እኩል:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_ማፍዘዣ:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_ሰብዉፈር:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "ያልጎላ" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "መቀነሻ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_ገጽታ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "አገ_ናኝ:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "ተሰናክሏል" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ውጤት " +msgstr[1] "%u ውጤቶች " + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ማስገቢያ " +msgstr[1] "%u ማስገቢያዎች " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ስም " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "ስፒከር በመሞከር ላይ ለ %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "ስፒከር መሞከሪያ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "የድምፅ ተጽእኖ " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_የማስጠንቀቂያ መጠን: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_የ ውጤት መጠን: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ጠንካራ አካል " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "አካል ይ_ምረጡ ለማዋቀር:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "ለተመረጠው አካል ማሰናጃ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_የማስገቢያ መጠን: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "የማስገቢያ መጠን:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ለ ድምጽ ማስገቢያ አካል ይ_ምረጡ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ለ ድምጽ ማውጫ አካል ይ_ምረጡ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "መተግበሪያዎች " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ምንም መተገበሪያ አይጫወትም ወይንም ድምጽ አይቀርጽም" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "የድምፅ ምርጫዎች " + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ድምፅ የለም" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "አብሮ-የተገነባ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "ማስተካከያ:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "የ ሁኔታዎች ድምፅ መሞከሪያ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ነባር " + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "ከ ገጽታ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "አይነት" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "የ ድምፅ _ገጽታ:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "የ ማስጠንቀቂያ ድምጽ ይ_ምረጡ:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "የ _መስኮት እና ቁልፎች ድምጽ ማስቻያ" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "ማስቆሚያ" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "መሞከሪያ" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "የ ድምጽ ምርጫዎችን ማስጀመር አልተቻለም: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_መቀነሻ " + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_የ ድምፅ ምርጫዎች" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "ያልታወቀ" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "ሞኖ" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "በ ግራ " + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "በ ቀኝ " + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "ፊት ለፊት መሀከል " + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "ዝቅተኛ ድግግሞሽ" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "ከኋላ በ ግራ " + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "ከኋላ በ ቀኝ" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "ከኋላ መሀከል" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "ፊት ለፊት በ ግራ መሀከል " + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "ፊት ለፊት በ ቀኝ መሀከል " + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "በ ግራ ጎን " + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "በ ቀኝ ጎን" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "ከ ላይ ፊት ለፊት በ ግራ " + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "ከ ላይ ፊት ለፊት በ ቀኝ" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "ከ ላይ ፊት ለፊት መሀከል" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "ከ ላይ መሀከል " + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "ከ ላይ ከኋላ በ ግራ " + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "ከ ላይ ከኋላ በ ቀኝ " + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "ከ ላይ ከኋላ መሀከል" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "ስቴሪዮ" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "ዙሪያ 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "ዙሪያ 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "ዙሪያ 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "ዙሪያ 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "ዙሪያ 7.1" diff --git a/po/ar.po b/po/ar.po new file mode 100644 index 0000000..f9f79a8 --- /dev/null +++ b/po/ar.po @@ -0,0 +1,456 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Abdulaziz Al-Arfaj , 2004 +# alibacha19 , 2015 +# Anas Afif Emad , 2002-2003 +# Djihed Afifi , 2006 +# Isam Bayazidi , 2002 +# Khaled Hosny , 2006-2010 +# , 2003 +# Mosaab Alzoubi , 2013 +# Sayed Jaffer Al-Mosawi , 2002 +# مهدي السطيفي , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Arabic (http://wiki.ukui.org/trans/ar/)\n" +"Language: ar\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " +"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "الصوت" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "غيّر شدة الصوت و أصوات الأحداث" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "التحكم في حجم الصوت" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "اعرض التحكم في حجم الصوت" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "إصدار هذا التطبيق" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "فعّل التنقيح" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — بريمج متّة للتحكم في حجم الصوت" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "نظام الصوت غير متاح" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ينتظر استجابة نظام الصوت" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "نظام صوت الخلفية" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "صفحة البدء" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — تحكم متّة في شدة الصوت" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "الإدخال" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "الإخراج" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "شدة صوت الميكروفون" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "شدة صوت الخرْج" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE الصغير للتحكم في شدة الصوت" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "اليسار" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "اليمين" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "المؤخرة" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "المقدمة" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "أدنى" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "أقصى" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ال_توازن:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ال_تلاشي:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_مضخم الصوت:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "غير مكبّر" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "كتم" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "ال_طور:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "المو_صّل:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "معطّل" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u مخرج" +msgstr[1] "مخرج (%u)" +msgstr[2] "مخرجان (%u)" +msgstr[3] "%u مخارج" +msgstr[4] "%u مخرجا" +msgstr[5] "%u مخرجا" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u مدخل" +msgstr[1] "مدخل (%u)" +msgstr[2] "مدخلان (%u)" +msgstr[3] "%u مداخل" +msgstr[4] "%u مدخلا" +msgstr[5] "%u مدخلا" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "الاسم" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "اختبار سماعات %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "اختبر السماعات" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "المؤثرات الصوتية" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "شدة صوت التنبي_ه:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "حجم صوت ال_إخراج:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "العتاد" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "ا_ختر جهازا لضبطه:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "إعدادات الجهاز المختار:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "حجم صوت ال_إدخال:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "مستوى الإدخال:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "اخ_تر جهازا لإدخال الصوت:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "اخ_تر جهازا لإخراج الصوت:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "التطبيقات" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "لا تطبيقات تشغل أو تسجل الصوت حاليا." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "تفضيلات الصوت" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "لا صوت" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "مدمج" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "مخصّص" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "يختبر صوت الحدث" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "المبدئي" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "من السمة" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "النوع" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_سمة الأصوات:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "اختر صوت تنبيه:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "فعّل أصوات ال_نوافذ والأزرار" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "أوقف" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "اختبِر" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "فشل بدء تفضيلات الصوت: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_كتم" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_تفضيلات الصوت" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "مجهول" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "أحادي" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "المقدّمة اليسرى" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "المقدّمة اليمنى" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "المقدّمة الوسطى" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "الخلفية اليسرى" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "الخلفية اليمنى" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "الخلفية الوسطى" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "المقدّمة اليسرى للوسط" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "المقدّمة اليمنى للوسط" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "الجنب الأيسر" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "الجنب الأيمن" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "المقدّمة اليسرى العلوية" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "المقدّمة اليسرى العلوية" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "المقدّمة الوسطى العلوية" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "الوسط الأعلى" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "الخلفية اليسرى العلوية" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "الخلفية اليمنى العلوية" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "الخلفية الوسطى العلوية" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "ستيريو" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/as.po b/po/as.po new file mode 100644 index 0000000..4580253 --- /dev/null +++ b/po/as.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Amitakhya Phukan , 2008 +# Amitakhya Phukan , 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Assamese (http://wiki.ukui.org/trans/as/)\n" +"Language: as\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ধ্বনি " + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "শব্দৰ মাত্ৰা o নিৰ্দিষ্ট ঘটনাৰ সৈতে যুক্ত শব্দ পৰিবৰ্তন কৰক" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ডেস্কটপত শব্দৰ মাত্ৰা নিয়ন্ত্ৰণ ব্যৱস্থা প্ৰদৰ্শন কৰা হ'ব" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "এপ্লিকেশনৰ সংস্কৰণ সংখ্যা" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "শব্দৰ ব্যৱস্থাপ্ৰণালীৰ পৰা প্ৰতিক্ৰিয়া প্ৰাপ্তিৰ অপেক্ষা কৰা হচ্ছে" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "প্ৰাৰম্ভিক পৃষ্ঠা" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "নিবেশ" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "নিৰ্গম" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "শব্দৰ মাত্ৰা নিয়ন্ত্ৰণকৰ্তা" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "বাওঁফালে" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "সোঁফালে" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "পশ্চাৎস্থিত" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "সম্মুখস্থিত" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "সৰ্বনিম্ন" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "সৰ্বোচ্চ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ভাৰসাম্য: (_B)" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "নিষ্প্ৰভ: (_F)" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ছাবউফাৰ: (_S)" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "এমপ্লিফাই নকৰা" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "নিঃশব্দ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "প্ৰোফাইল:(_P)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "সংযোগকৰ্তা: (_n)" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "নিষ্ক্ৰিয়" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u নিৰ্গম" +msgstr[1] "%u নিৰ্গম" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u নিবেশ" +msgstr[1] "%u নিবেশ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "নাম" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "শব্দৰ ইফেক্ট" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "সতৰ্কবাৰ্তাৰ শব্দৰ মাত্ৰা: (_A)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "নিৰ্গমৰ শব্দৰ মাত্ৰা: (_O)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "হাৰ্ডৱেৰ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "বিন্যাস কৰাৰ উদ্দেশ্যে এটা যন্ত্ৰ নিৰ্বাচন কৰক (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "নিৰ্বাচিত যন্ত্ৰেৰ বৈশিষ্ট্য:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "নিবেশৰ শব্দৰ মাত্ৰা: (_I)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "নিবেশ স্তৰ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "শব্দ নিবেশৰ বাবে এটা যন্ত্ৰ নিৰ্বাচন কৰক: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "শব্দ নিৰ্গমৰ বাবে এটা যন্ত্ৰ নিৰ্বাচন কৰক: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "অনুপ্ৰয়োগ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "কোনো এপ্লিকেশন দ্বাৰা বৰ্তমানে অডিও বাজানো অথবা ৰেকৰ্ড কৰা হচ্ছে না।" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "শব্দ সংক্ৰান্ত পছন্দ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "কোনো ধ্বনি নাই" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "বিল্ট-ইন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "নিজস্ব" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ঘটনাৰ বাবে চিহ্নিত শব্দ পৰীক্ষা কৰা হচ্ছে" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "অবিকল্পিত" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "থিমৰ পৰা" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "প্ৰকাৰ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "শব্দৰ থিম: (_t)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "সতৰ্কতামূলক এটা শব্দ নিৰ্বাচন কৰক: (_h)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "উইন্ডো আৰু বুটামৰ শব্দ সক্ৰিয় কৰক (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "শব্দ সংক্ৰান্ত পছন্দেৰ মান আৰম্ভ কৰিবলৈ ব্যৰ্থ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "নিঃশব্দ: (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "শব্দ সংক্ৰান্ত পছন্দ (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ast.po b/po/ast.po new file mode 100644 index 0000000..38914ad --- /dev/null +++ b/po/ast.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Astur , 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Asturian (http://wiki.ukui.org/trans/ast/)\n" +"Language: ast\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Soníu" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Camudar el volume del soníu y los eventos de soníu" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Control de Volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Amosar el control de volume de l'escritoriu" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versión d'esta aplicación" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Control de Volume" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Esperando respuesta del sistema de soníu" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Páxina d'aniciu" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Control de Volume" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Salida" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Control de Volume" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquierda" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Drecha" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Traseru" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frente" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínimu" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Máximu" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Esvanecimientu:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Ensin amplificar" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Silenciar" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_neutor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Desactiváu" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u salida" +msgstr[1] "%u salides" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entraes" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nome" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efeutos de soníu" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume d'_alerta: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Volume de sali_da: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Esbillar un preséu pa configurar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Axustes pal preséu seleicionáu:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume d'_entrada: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivel d'entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Esbillar un preséu pa la entrada de soníu" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Esbillar un preséu pa la salida de soníu" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicaciones" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Denguna aplicación ta reproduciendo o grabando soníu anguaño." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferencies de soníu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ensin soníos" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Internu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizáu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Comprobando'l soníu d'eventu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predetermináu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Del tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Triba" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema de soníu:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Esbillar un soníu d'alerta:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Activar soníos de _ventanes y botones" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Falló entamar Preferencies de Soníu: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Silenciu" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Preferencies de Soníu" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/az.po b/po/az.po new file mode 100644 index 0000000..e37ba0b --- /dev/null +++ b/po/az.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Mətin Əmirov , 2004 +# Vasif Ismailoglu MD , 2000 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Azerbaijani (http://wiki.ukui.org/trans/az/)\n" +"Language: az\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Səs İdarəsi" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Səs İdarəsi" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Səs İdarəsi" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Səs İdarəsi" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Xüsusi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Dayan" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/be.po b/po/be.po new file mode 100644 index 0000000..f0a7507 --- /dev/null +++ b/po/be.po @@ -0,0 +1,447 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# nab , 2004 +# nab , 2004 +# Ihar Hrachyshka , 2006 +# nab , 2004 +# Vital Khilko , 2003,2014-2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Belarusian (http://wiki.ukui.org/trans/be/)\n" +"Language: be\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" +"%100>=11 && n%100<=14)? 2 : 3);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Гук" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Кіраваць гучнасцю сістэмы і гукавымі падзеямі" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Кіраванне гукам" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Паказваць кіраўнік гучнасцю на стале" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Версія гэтай праграмы" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Уключыць наладку" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Аплет кіравання гукам MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Гукавая сістэма недаступна" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Чакаем, пакуль гукавая сістэма адкажа" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Бэкэнд гукавой сістэмы" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Пачатковая старонка" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Кіраўнік гуку асяроддзя MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Уваход" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Выхад" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Гучнасць мікрафона" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Гучнасць выходнага гуку" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Аплет кіравання гукам MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Левы" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Правы" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Задні" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Пярэдні" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Мінімум" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Максімум" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Баланс:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Знікненне:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Сабвуфер:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Няўзмоцнены" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Сцішыць" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Профіль:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ка_нэктар:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Адключаны" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u выхад" +msgstr[1] "%u выхады" +msgstr[2] "%u выхадаў" +msgstr[3] "%u выхадаў" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u уваход" +msgstr[1] "%u уваходы" +msgstr[2] "%u уваходаў" +msgstr[3] "%u уваходаў" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Назва" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Праверка калонак для %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Праверыць калонкі" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Гукавыя эфекты" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Гучнасць паведамлення:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Выходная гучнасць:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Апаратура" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "В_ылучыце прыладу для настáўлення:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Настáўленні вылучанай прылады:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Уваходная гучнасць: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Уваходны ўзровень:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Ад_значце прыладу для ўваходнага гуку:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Ад_значце прыладу для выходнага гуку:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Праграмы" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ніводная праграма цяпер не грае і не піша гук." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Настáўленні гуку" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Бязгучна" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Убудаваны" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Адмысловы" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Праверка гуку падзеі" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Стандартны" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "З тэмы" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Тып" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Гукавая _тэма:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "А_бярыце гук паведамленняў:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Уключыць гукі _вокнаў і кнопак" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Спыніць" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Праверка" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Не выйшла запусціць настáўленні гуку: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Сцішыць" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Настáўленні гуку" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Невядомы" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Мона" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Пярэдні левы" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Пярэдні правы" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Пярэдні цэнтральны" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Н/Ч" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Задні левы" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Задні правы" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Задні цэнтральны" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Пярэдні левы цэнтральнага" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Пярэдні правы цэнтральнага" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Баковы левы" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Баковы правы" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Верхні пярэдні левы" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Верхні пярэдні правы" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Верхні пярэдні цэнтральны" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Верхні цэнтральны" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Верхні задні левы" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Верхні задні правы" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Верхні задні цэнтральны" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Стэрэа" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/bg.po b/po/bg.po new file mode 100644 index 0000000..46c3850 --- /dev/null +++ b/po/bg.po @@ -0,0 +1,445 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alexander Shopov , 2005, 2008, 2009, 2010 +# Evgeni Boevski , 2002, 2003 +# Georgi Georgiev , 2015 +# Philip Dimitrov , 2005 +# Rostislav Raykov , 2004 +# Vladimir "Kaladan" Petkov , 2004 +# Yanko Kaneti , 2003 +# Yavor Doganov , 2007 +# Любомир Василев, 2016-2017 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Любомир Василев\n" +"Language-Team: Bulgarian (http://wiki.ukui.org/trans/bg/)\n" +"Language: bg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Звук" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Промяна на силата на звука и звуците свързани със събития" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Сила на звука" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Показване на управлението на звука" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Версия на тази програма" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Включване на изчистването на грешки" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— аплет на MATE за силата на звука" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Звуковата система не е достъпна" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Изчакване на отговор от аудио подсистемата" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Бекенд на звуковата система" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Начална страница" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— сила на звука на MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Вход" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Изход" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Сила на микрофона" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Сила на изхода" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Аплет на MATE за силата на звука" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Ляво" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Дясно" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Отзад" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Отпред" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Минимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Максимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Баланс:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Затихване:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Бас:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Без усилване" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100 %" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Заглушаване" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "Про_фил:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Конектор:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Изключен" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u изход" +msgstr[1] "%u изхода" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u вход" +msgstr[1] "%u входа" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Име" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Тестване на високоговорителите към %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Тестване на високоговорителите" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Аудио ефекти" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Сила на _известяването:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Сила на _изхода:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Хардуер" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Избор на устройството за настройване:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Настройки на избраното устройство:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Сила на _входа:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Ниво на входа:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Избор на входно аудио устройство:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Избор на изходно аудио устройство:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Програми" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "В момента никоя програма не записва и не възпроизвежда звук" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Настройки на звука" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Без звуци" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Вградена" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Потребителска" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Проба на звука за събитие" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "По подразбиране" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "От тема" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Вид" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Тема от звуци:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Избор на звук за известяване:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Включване на звуците за прозорци и бутони" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Спиране" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Тест" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Настройките на звука не могат да бъдат стартирани: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Заглушаване" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Настройки на звука" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Заглушено на" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Неизвестно" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Моно" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Отпред — ляво" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Отпред — дясно" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Отпред — среда" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "НЧЕ (LFE)" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Отзад — ляво" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Отзад — дясно" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Отзад — среда" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Отпред — ляво или среда" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Отпред — дясно или среда" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Отстрани — ляво" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Отстрани — дясно" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Отгоре и отпред — ляво" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Отгоре и отпред — дясно" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Отгоре и отпред — среда" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Отгоре — среда" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Отгоре и отзад — ляво" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Отгоре и отзад — дясно" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Отгоре и отзад — среда" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Стерео" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Обемен звук 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Обемен звук 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Обемен звук 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Обемен звук 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Обемен звук 7.1" diff --git a/po/bn.po b/po/bn.po new file mode 100644 index 0000000..1540f26 --- /dev/null +++ b/po/bn.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Sadia Afroz , 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Bengali (http://wiki.ukui.org/trans/bn/)\n" +"Language: bn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "শব্দ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ভলিউম পরিবর্তন করুন ও নির্দিষ্ট ঘটনার সাথে শব্দ যুক্ত করুন" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ভলিউম নিয়ন্ত্রণ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ডেস্কটপের মধ্যে ভলিউম নিয়ন্ত্রণ ব্যবস্থা প্রদর্শন করা হবে" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "এই অ্যাপ্লিকেশনের সংস্করণ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ভলিউম নিয়ন্ত্রণ" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "শব্দের সিস্টেম থেকে প্রতিক্রিয়া প্রাপ্তির অপেক্ষা করা হচ্ছে" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "প্রারম্ভিক পৃষ্ঠা" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ভলিউম নিয়ন্ত্রণ" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ইনপুট" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "আউটপুট" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ভলিউম নিয়ন্ত্রণ" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "বামদিকে" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ডানদিকে" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "পেছনের অংশ" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "সামনে" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "সর্বনিম্ন" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "সর্বোচ্চ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ভারসাম্য: (_B)" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ফেইড (_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "সাবউফার (_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "অ্যাম্পলিফাই করা হবেনা" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "১০০%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "নিঃশব্দ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "প্রোফাইল: (_P)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "সংযোগকারী: (_n)" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "নিষ্ক্রিয়" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u আউটপুট" +msgstr[1] "%u আউটপুট" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ইনপুট" +msgstr[1] "%u ইনপুট" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "নাম" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "শব্দের ইফেক্ট" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "সতর্কবার্তার ভলিউম: (_A)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "আউটপুট ভলিউম: (_O)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "হার্ডওয়্যার" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "কনফিগার করার জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "নির্বাচিত ডিভাইসের বৈশিষ্ট্য:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ইনপুট ভলিউম: (_I)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ইনপুটের মাত্রা:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "শব্দের ইনপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "শব্দের আউটপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "অ্যাপ্লিকেশন" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "কোনো অ্যাপ্লিকেশন দ্বারা বর্তমানে অডিও বাজানো অথবা রেকর্ড করা হচ্ছে না।" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "শব্দ সংক্রান্ত পছন্দ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "শব্দবিহীন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "বিল্ট-ইন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "স্বনির্ধারিত" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ঘটনার জন্য চিহ্নিত শব্দ পরীক্ষা করা হচ্ছে" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ডিফল্ট" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "থিম থেকে প্রাপ্ত" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "ধরন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "শব্দের থিম: (_t)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "সতর্কবার্তার জন্য একটি শব্দ নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "উইন্ডো ও বোতামের শব্দগুলো সক্রিয় করুন (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "শব্দ সংক্রান্ত পছন্দের মান আরম্ভ করতে ব্যর্থ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "নিঃশব্দ (_M):" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "শব্দ সংক্রান্ত পছন্দ (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/bn_IN.po b/po/bn_IN.po new file mode 100644 index 0000000..4150851 --- /dev/null +++ b/po/bn_IN.po @@ -0,0 +1,441 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Progga , 2005 +# Runa Bhattacharjee , 2003 +# runa , 2006 +# runab , 2008, 2009, 2010 +# Sayamindu Dasgupta , 2003 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Bengali (India) (http://wiki.ukui.org/trans/bn_IN/)\n" +"Language: bn_IN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "শব্দ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "শব্দের মাত্রা o নির্দিষ্ট ঘটনার সাথে যুক্ত শব্দ পরিবর্তন করুন" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ডেস্কটপের মধ্যে শব্দের মাত্রা নিয়ন্ত্রণ ব্যবস্থা প্রদর্শন করা হবে" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "অ্যাপ্লিকেশনের সংস্করণ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "শব্দের সিস্টেম থেকে প্রতিক্রিয়া প্রাপ্তির অপেক্ষা করা হচ্ছে" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "প্রারম্ভিক পৃষ্ঠা" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ইনপুট" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "আউটপুট" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "শব্দের মাত্রা নিয়ন্ত্রণকারী" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "বাঁদিকে" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ডানদিকে" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "পশ্চাৎস্থিত" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "সম্মুখস্থিত" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "সর্বনিম্ন" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "সর্বোচ্চ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ভারসাম্য: (_B)" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "নিষ্প্রভ: (_F)" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "সাব-উফার: (_S)" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "অ্যামপ্লফাই না করা" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "১০০%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "নিঃশব্দ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "প্রোফাইল: (_P)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "সংযোগকারী: (_n)" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "নিষ্ক্রিয়" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u-টি আউটপুট" +msgstr[1] "%u-টি আউটপুট" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u-টি ইনপুট" +msgstr[1] "%u-টি ইনপুট" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "নাম" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "শব্দের ইফেক্ট" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "সতর্কবার্তার শব্দের মাত্রা: (_A)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "আউটপুটের শব্দের মাত্রা: (_O)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "হার্ডওয়্যার" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "কনফিগার করার উদ্দেশ্যে একটি ডিভাইস নির্বাচন করুন (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "নির্বাচিত ডিভাইসের বৈশিষ্ট্য:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ইনপুটের শব্দের মাত্রা: (_I)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ইনপুটের মাত্রা:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "শব্দ ইনপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "শব্দ আউটপুটের জন্য একটি ডিভাইস নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "অ্যাপ্লিকেশন" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "কোনো অ্যাপ্লিকেশন দ্বারা বর্তমানে অডিও বাজানো অথবা রেকর্ড করা হচ্ছে না।" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "শব্দ সংক্রান্ত পছন্দ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "শব্দবিহীন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "বিল্ট-ইন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "স্বনির্ধারিত" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ঘটনার জন্য চিহ্নিত শব্দ পরীক্ষা করা হচ্ছে" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ডিফল্ট" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "থিম থেকে প্রাপ্ত" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "ধরন" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "শব্দের থিম: (_t)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "সতর্কতামূলক একটি শব্দ নির্বাচন করুন: (_h)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "উইন্ডো ও বাটনের শব্দ সক্রিয় করুন (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "শব্দ সংক্রান্ত পছন্দের মান আরম্ভ করতে ব্যর্থ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "নিঃশব্দ: (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "শব্দ সংক্রান্ত পছন্দ (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/br.po b/po/br.po new file mode 100644 index 0000000..007961f --- /dev/null +++ b/po/br.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alan Monfort , 2016 +# Jérémy Ar Floc'h , 2006 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Breton (http://wiki.ukui.org/trans/br/)\n" +"Language: br\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Son" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Kemmañ tregern ar son ha sonioù ar degouezhioù" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Reoliñ an dregern" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Diskouez reolererezh tregern ar burev" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Handelv an arload-mañ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Gweredekaat an diveugañ" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— Ardoadig MATE da reoliañ an dregern" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "An trevnad evit ar son n'eo ket hegerz" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Emañ c'hortoz respont an trevnad son" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Trevnad son kein" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Pajennad loc'hañ" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— Reolerezh tregern MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Enankad" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Ec'hankad" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Tregern ar glevell" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Tregern ec'hankad ar son" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Arloadig MATE da reoliañ an dregern" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Kleiz" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dehou" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "A-dreñv" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "A-dal" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Izek" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Uc'hek" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Kempouez :" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Blinaat :" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Eil uhel-gomzer boud :" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Disamplaet" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Mut" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Aelad :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ke_nnasker :" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Diweredekaet" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ec'hankad :" +msgstr[1] "%u ec'hankad :" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u enankad :" +msgstr[1] "%u enankad :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Anv" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Prouadur an uhel-gomzer evit %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Prouadiñ an uhel-gomzerioù" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efedoù son" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Tregern ar _galv-diwall :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Tregern an e_c'hankad :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Periant" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Dibab un drobarz_hell da gefluniañ :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Arventennoù evit an drobarzhell diuzet :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Tregern an _enankad :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Live an Enankad :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Dibab un drobarz_hell da enankañ sonioù :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Dibab un drobarz_hell da ec'hankañ sonioù :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Arloadoù" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "N'eus arload ebet o lenn pe oc'h enrollañ aodio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Gwellvezioù ar son" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Son ebet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Enkorfet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personelaet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Prouadur sonioù an degouezhioù" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Dre ziouer" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Diouzh an neuz" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Rizh" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Dodenn ar son :" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Dibab son ar _galv-diwall :" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Gweredekaat sonioù an afelloù hag ar prenestroù" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Arsaviñ" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Prouadiñ" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "C'hwitadenn war loc'hañ Gwellvezioù ar son : %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Mut" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Gwellvezioù ar _son" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Dianav" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Tal a-gleiz" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Tal a-zehou" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Tal e-kreiz" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "A-dreñv a-gleiz" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "A-dreñv -zehou" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "A-dreñv e-kreiz" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Tal a-gleiz ar c'hreiz" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Tal a-zehou ar c'hreiz" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Tu a-gleiz" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Tu a-zehou" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Lein an tal a-gleiz" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Lein an tal a-zehou" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Lein an tal e-kreiz" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Lein e-kreiz" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Lein a-dreñv a-gleiz" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Lein a-dreñv a-zehou" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Lein a-dreñv e-kreiz" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/bs.po b/po/bs.po new file mode 100644 index 0000000..f72e019 --- /dev/null +++ b/po/bs.po @@ -0,0 +1,441 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Mehemed Sacirovic , 2004 +# Sky Lion , 2016 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Bosnian (http://wiki.ukui.org/trans/bs/)\n" +"Language: bs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zvuk" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Kontrola zvuka" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Kontrola zvuka" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Kontrola zvuka" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Kontrola zvuka" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Lijevo" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Desno" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Onemogućeno" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Naziv" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testiraj Zvučnike" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardver" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Prilagođeno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ca.po b/po/ca.po new file mode 100644 index 0000000..f9b48c6 --- /dev/null +++ b/po/ca.po @@ -0,0 +1,444 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Antoni Lacasta i Sulla , 2002 +# jodufi , 2009, 2010 +# Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007 +# Josep Puigdemont , 2007 +# Pere O. , 2012-2013 +# Robert Antoni Buj Gelonch , 2017 +# Robert Antoni Buj Gelonch , 2015-2016 +# Softcatalà , 2000 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Robert Antoni Buj Gelonch \n" +"Language-Team: Catalan (http://wiki.ukui.org/trans/ca/)\n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "So" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Canvieu el volum del so i els sons dels esdeveniments" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Control del volum" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Mostra el control del volum de l'escriptori" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versió d'aquesta aplicació" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Habilita la depuració" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " Miniaplicació del control de volum de MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "El sistema de so no està disponible" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "S'està esperant que el sistema de so respongui" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Programari especialitzat del sistema de so" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Pàgina inicial" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Control de volum de MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Sortida" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volum del micròfon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volum de sortida" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Miniaplicació del control de volum de MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquerre" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dret" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Posterior" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frontal" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínim" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Màxim" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanç:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Esvair:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Altaveu de greus:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Sense amplificar" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Silenci" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Inhabilitat" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u sortida" +msgstr[1] "%u sortides" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entrades" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nom" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Prova d'altaveus per a %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Prova els altaveus" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efectes de so" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volum d'_alerta: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Volum de sortida: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Maquinari" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Seleccioneu un _dispositiu per configurar-lo:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Ajusts per al dispositiu seleccionat:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Volum d'entrada: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivell d'entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Seleccioneu un dispositiu per a l'entrada de so:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "S_eleccioneu un dispositiu per a la sortida de so:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicacions" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "No hi ha cap aplicació que estigui reproduint o enregistrant àudio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferències de so" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Sense sons" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Integrat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalitzat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Prova d'esdeveniment de so" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predeterminat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Del tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipus" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema de sons:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Trieu un so d'alerta:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Habilita els sons de les _finestres i dels botons" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Atura" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Prova" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "No s'han pogut iniciar les preferències del so: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Silenci" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferències del _so" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Silenciat a" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconegut" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Frontal esquerre" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Frontal dret" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Frontal centre" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Posterior esquerre" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "posterior dret" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Posterior centre" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Frontal esquerre del centre" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Frontal dret del centre" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Costat esquerre" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "costat dret" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Frontal esquerre superior" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Frontal dret superior" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Frontal esquerre centre" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Superior centre" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Superior posterior esquerre" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Superior posterior dret" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Superior posterior centre" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estèreo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Envoltant 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Envoltant 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Envoltant 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Envoltant 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Envoltant 7.1" diff --git a/po/ca@valencia.po b/po/ca@valencia.po new file mode 100644 index 0000000..10c745c --- /dev/null +++ b/po/ca@valencia.po @@ -0,0 +1,445 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Antoni Lacasta i Sulla , 2002 +# jodufi , 2009, 2010 +# jodufi , 2009-2010 +# Jordi Mallach , 2002-2007 +# Josep Puigdemont , 2007 +# Josep Puigdemont , 2007 +# Pilar Embid Giner , 2016 +# Softcatalà , 2000 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Catalan (Valencian) (http://wiki.ukui.org/trans/ca" +"%40valencia/)\n" +"Language: ca@valencia\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "So" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Canvieu el volum del so i els sons dels esdeveniments" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Control del volum" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Mostra el control del volum de l'escriptori" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versió d'aquesta aplicació" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Habilita la depuració" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " Miniaplicació del control de volum del MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "El sistema de so no està disponible" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "S'està esperant que el sistema de so responga" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Programari especialitzat del sistema de so" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Pàgina inicial" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Control de volum del MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Eixida" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volum del micròfon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volum d'eixida" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Miniaplicació del control de volum del MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquerre" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dret" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Posterior" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frontal" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínim" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Màxim" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanç:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Esvaïment:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Altaveu de greus:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Sense amplificar" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Silenci" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Inhabilitat" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u eixida" +msgstr[1] "%u eixides" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entrades" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nom" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Prova d'altaveus per a %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Prova els altaveus" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efectes de so" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volum d'_avís: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Volum d'eixida: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Maquinari" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Seleccioneu un _dispositiu per a configurar-lo:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Paràmetres per al dispositiu seleccionat:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Volum d'entrada: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivell d'entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Seleccioneu un dispositiu per a l'entrada de so:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "S_eleccioneu un dispositiu per a l'eixida de so:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicacions" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "No hi ha cap aplicació que estiga reproduint o gravant àudio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferències de so" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Sense sons" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Integrat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalitzat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Prova d'esdeveniment de so" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predeterminat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Del tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipus" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema de sons:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Trieu un so d'avís:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Habilita els sons de les _finestres i dels botons" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Para" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Prova" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "No s'han pogut iniciar les preferències del so: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Silenci" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferències del _so" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconegut" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Frontal esquerre" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Frontal dret" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Frontal centre" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Posterior esquerre" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "posterior dret" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Posterior centre" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Frontal esquerre del centre" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Frontal dret del centre" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Costat esquerre" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "costat dret" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Frontal esquerre superior" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Frontal dret superior" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Frontal centre superior" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Superior centre" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Posterior esquerre superior" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Posterior dret superior" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Posterior centre superior" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estèreo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Envoltant 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Envoltant 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Envoltant 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Envoltant 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Envoltant 7.1" diff --git a/po/cmn.po b/po/cmn.po new file mode 100644 index 0000000..7bd3e77 --- /dev/null +++ b/po/cmn.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Chao-Hsiung Liao , 2008 +# Fernando , 1999 +# 趙惟倫 , 2012-2013 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 17:25+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Chinese (Mandarin) (http://wiki.ukui.org/trans/cmn/)\n" +"Language: cmn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "聲音" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "改變音效的音量和音效事件" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "音量控制" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "顯示桌面音量控制" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "這個程式的版本" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE 音量控制面板程式" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "正在等候音效系統回應" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "啟始頁面" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE 音量控制" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "輸入" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "輸出" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "麥克風音量" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "音效輸出音量" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — MATE 音量控制面板程式" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "左" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "右" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "後" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "前" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "最小值" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "最大值" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "平衡(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "淡化(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "重低音(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "未經放大" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "靜音" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "側寫檔(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "連接器(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "已停用" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u 輸出" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u 輸入" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "名稱" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s 的喇叭測試" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "測試喇叭" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "聲音效果" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "警示音量(_A):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "輸出音量(_O):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "硬體" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "選擇要設定的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "已選取裝置的設定值:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "輸入音量(_I):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "輸入等級:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "選擇聲音輸入的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "選擇聲音輸出的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "應用程式" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "沒有應用程式目前正在播放或錄製音效。" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "音效偏好設定" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "不使用音效" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "內建" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "自訂" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "測試事件音效" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "預設值" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "從主題" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "類型" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "音效主題(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "選擇警示音效(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "啟用視窗與按鈕音效(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "停止" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "測試" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "啟動音效偏好設定失敗:%s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "靜音(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "音效偏好設定(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/cs.po b/po/cs.po new file mode 100644 index 0000000..59a2722 --- /dev/null +++ b/po/cs.po @@ -0,0 +1,451 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# huskyviking , 2014 +# huskyviking , 2014 +# Lukas Novotny , 2006 +# Martin Kříž , 2016 +# Michal Bukovjan , 2002 +# Miloslav Trmač , 2003, 2004, 2005, 2006 +# Miloslav Trmač , 2003-2006 +# Petr Kovar , 2007, 2008, 2009, 2010 +# Petr Kovar , 2007-2010 +# Petr Tomeš , 2006 +# Stanislav Brabec , 2000-2001 +# Stanislav Kučera , 2015 +# Stanislav Kučera , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: ToMáš Marný\n" +"Language-Team: Czech (http://wiki.ukui.org/trans/cs/)\n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zvuk" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Změní hlasitost zvuku a přiřadí zvuky k událostem" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Ovládání hlasitosti" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Zobrazí ovládání hlasitosti pracovního prostředí" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Verze této aplikace" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Zapnout ladění" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " – applet ovládání hlasitosti MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Zvukový systém není dostupný" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Čekání na odpověď zvukového systému" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Backend zvukového systému" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Spouštěcí stránka" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " – ovládání hlasitosti MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Vstup" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Výstup" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Hlasitost mikrofonu" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Výstupní hlasitost zvuku" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Zvukový řídící applet MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Levý" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Pravý" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Zadní" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Přední" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Vyvážení:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Prolínání:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Nezesílené" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Ztlumit" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ko_nektor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Zakázáno" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u výstup" +msgstr[1] "%u výstupy" +msgstr[2] "%u výstupů" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u vstup" +msgstr[1] "%u vstupy" +msgstr[2] "%u vstupů" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Název" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Testování reproduktorů %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Otestovat reproduktory" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Zvukové efekty" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Hl_asitost upozornění: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Výstupní hlasitost: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Zařízení nastavíte je_ho vybráním:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Nastavení vybraného zařízení:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Vstupní hlas_itost: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Vstupní úroveň:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "V_yberte zařízení zvukového vstupu:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "V_yberte zařízení zvukového výstupu:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplikace" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Žádná aplikace aktuálně nepřehrává nebo nezaznamenává zvuk." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Předvolby zvuku" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Bez zvuků" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Zabudované" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Vlastní" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testují se zvuky událostí" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Výchozí" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Z motivu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Typ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Mo_tiv zvuku:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "V_yberte zvuk upozornění:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "P_ovolit zvuky oken a tlačítek" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Zastavit" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Otestovat" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Nezdařilo se spustit předvolby zvuku: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "Z_tlumit" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Př_edvolby zvuku" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Ztlumeno při" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Neznámý" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "přední levý" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "pravý přední" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "přední střední" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE, subwoofer" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "zadní levý" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "zadní pravý" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "zadní střední" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "přední levý nebo prostřední" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "přední pravý nebo prostřední" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Postranní levý" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Postranní pravý" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Hlavní přední vlevo" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Hlavní přední vpravo" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Hlavní přední uprostřed" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Hlavní střed" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Hlavní zadní vlevo" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Hlavní zadní vpravo" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Hlavní zadní uprostřed" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/cy.po b/po/cy.po new file mode 100644 index 0000000..fab9380 --- /dev/null +++ b/po/cy.po @@ -0,0 +1,448 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# ciaran, 2015 +# Dafydd Harries , 2003 +# Dafydd Jones, 2003 +# KGyfieithu , 2003 +# Owain Green, 2003 +# Steve Griffiths, 2003 +# www.kyfieithu.co.uk , 2003 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Welsh (http://wiki.ukui.org/trans/cy/)\n" +"Language: cy\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != " +"11) ? 2 : 3;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sain" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Rheolydd y sain" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Dangos rheolydd y sain yn y bwrdd gwaith" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Rheolydd y sain" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Rheolydd y sain" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Mewnbwn" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Allbwn" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Rheolydd y sain" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Chwith" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dde" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Cefn" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Blaen" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Isaf" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Uchaf" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Analluogwyd" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Enw" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Caledwedd" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Addasedig" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Rhagosodiad" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Math" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Atal" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Profi" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Anhysbys" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Unsain" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "blaen chwith" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "blaen dde" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Blaen canol" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "cefn chwith" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "cefn de" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Cefn canol" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Sain amgylchynol 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Sain amgylchynol 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Sain amgylchynol 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Sain amgylchynol 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Sain amgylchynol 7.1" diff --git a/po/da.po b/po/da.po new file mode 100644 index 0000000..13fe946 --- /dev/null +++ b/po/da.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# askhl , 2010 +# Joe Hansen , 2014-2017 +# Peter Bach , 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Joe Hansen \n" +"Language-Team: Danish (http://wiki.ukui.org/trans/da/)\n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Lyd" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Skift lydstyrke og lydbegivenheder" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Lydstyrkekontrol" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Vis lydstyrkekontrol til skrivebordet" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versionen af dette program" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Aktiver fejlsøgning" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE-panelprogram til lydstyrkekontrol" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Lydsystem er ikke tilgængeligt" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Venter på svar fra lydsystemet" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Motor for lydsystem" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Opstartsside" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Lydstyrkekontrol til MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Input" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Output" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Lydstyrke for mikrofon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Afspilningslydstyrke" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE-panelprogram til lydstyrkekontrol" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Venstre" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Højre" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Bagved" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Foran" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Dæmp:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Uforstærket" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Stilhed" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ko_nnektor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Deaktiveret" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u output" +msgstr[1] "%u output" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u input" +msgstr[1] "%u input" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Navn" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Højttalertest for %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Afprøv højttalere" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Lydeffekter" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Påmindelseslydstyrke: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Afspilningslydstyrke: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Vælg en enhed at konfigurere:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Indstillinger for den valgte enhed:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Optagelydstyrke: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Inputniveau:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Vælg en enhed til lydinput:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Vælg en enhed til lydoutput:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programmer" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Intet program afspiller eller optager i øjeblikket lyd." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Lydindstillinger" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ingen lyde" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Indbygget" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Brugerdefineret" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Afprøver begivenhedslyd" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Standard" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Fra tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Lyd_tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Vælg en påmindelseslyd:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Aktiver lyde for _vinduer og knapper" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Kunne ikke starte lydindstillinger: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Stilhed" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Lydindstillinger" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Tavs ved" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Ukendt" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Venstre front" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Højre Front" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Midt front" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Venstre bagerst" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Højre bagerst" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Centrum bagerst" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Venstre front for centrum" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Højre front for centrum" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Venstre side" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Højre side" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Øverste front til venstre" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Øverste front til højre" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Øverste front i centrum" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Øverst centrum" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Øverste baggrund til venstre" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Øverste Øverste baggrund til højre" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Øverste baggrund i centrum" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/de.po b/po/de.po new file mode 100644 index 0000000..6344233 --- /dev/null +++ b/po/de.po @@ -0,0 +1,444 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Christian , 2009 +# debianer82 , 2017 +# Ettore Atalan , 2015 +# Hendrik Richter , 2004, 2005, 2006, 2008, 2009 +# Karl Eichwalder , 1999, 2000 +# Mario Blättermann , 2010 +# Matthias Warkus , 1999 +# Tobias Bannert , 2014-2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: debianer82 \n" +"Language-Team: German (http://wiki.ukui.org/trans/de/)\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Klang" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Lautstärke und Ereignissenklänge ändern" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Lautstärkeregler" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Lautstärkeregler anzeigen" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Version dieser Anwendung" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Fehlerdiagnose aktivieren" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE-Lautstärkeregleranzeige" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Klangsystem ist nicht verfügbar" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Es wird auf eine Antwort des Klangsystems gewartet" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Klangsystemhintergrundprogramm" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Startseite" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE-Lautstärkeregler" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Eingang" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Ausgang" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofonlautstärke" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Ausgangslautstärke" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE-Lautstärkeregleranzeige" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Links" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Rechts" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Hinten" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Vorn" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Ein-/Ausblenden:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Nicht verstärkt" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Stumm" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Verbindungsglied:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Deaktiviert" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Ausgang" +msgstr[1] "%u Ausgänge" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Eingang" +msgstr[1] "%u Eingänge" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Name" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Lautsprecher werden für %s getestet" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Lautsprechertest" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Klangeffekte" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Warnlautstärke: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Ausgangslautstärke: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Geräte" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Ein Gerät zum Konfigurieren auswählen:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Einstellungen für das gewählte Gerät:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Eingangslautstärke: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Eingangsniveau:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Ein Gerät für den Toneingang auswählen:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Ein Gerät für den Tonausgang auswählen:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Anwendungen" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Derzeit wird von keiner Tonanwendung aufgenommen oder wiedergegeben." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Klangeinstellungen" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Keine Klänge" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Eingebaut" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Angepasst" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Ereignisklang wird getestet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Vorgabe" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Von Thema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Art" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Klangthema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Einen Warnklang auswählen:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Fenster- und Knopfklänge einschalten" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stopp" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Testen" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Das Starten der Klangeinstellungen schlug fehl: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Stumm" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Klangeinstellungen" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Stumm geschaltet" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Unbekannt" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Vorne links" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Vorne rechts" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Vorne Mitte" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Hinten links" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Hinten rechts" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Hinten Mitte" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Vorne links von der Mitte" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Vorne rechts von der Mitte" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Seite links" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Seite rechts" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Oben vorne links" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Oben vorne rechts" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Oben vorne Mitte" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Oben Mitte" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Oben hinten links" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Oben hinten rechts" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Oben hinten Mitte" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/dz.po b/po/dz.po new file mode 100644 index 0000000..7a3b449 --- /dev/null +++ b/po/dz.po @@ -0,0 +1,434 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Dzongkha (http://wiki.ukui.org/trans/dz/)\n" +"Language: dz\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "སྐད་ཤུགས་ཚད་འཛིན།" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "སྐད་ཤུགས་ཚད་འཛིན།" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "སྐད་ཤུགས་ཚད་འཛིན།" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "སྐད་ཤུགས་ཚད་འཛིན།" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "སྲོལ་སྒྲིག" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "སྔོན་སྒྲིག་" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "བཀག" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/el.po b/po/el.po new file mode 100644 index 0000000..82156cf --- /dev/null +++ b/po/el.po @@ -0,0 +1,447 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# AARG! Anonymous , 2002 +# Efstathios Iosifidis , 2014,2016 +# Fotis Tsamis , 2009 +# Kostas Papadimas , 2003, 2004, 2005, 2006 +# Kostas Papadimas 2002, 2003 +# Nikos Charonitakis , 2005 +# Nikos Charonitakis , 2002, 2003, 2004 +# Simos Xenitellis , 2008 +# Simos Xenitellis , 1999, 2000, 2001, 2002 +# Αλέξανδρος Καπετάνιος , 2017 +# Γιώργος Μηντζιλώνης, 2017 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: Αλέξανδρος Καπετάνιος \n" +"Language-Team: Greek (http://wiki.ukui.org/trans/el/)\n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Ήχος" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Αλλαγή έντασης ήχου και ηχητικών γεγονότων" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Έλεγχος έντασης ήχου" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Εμφάνιση ελέγχου ήχου επιφάνειας εργασίας" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Έκδοση αυτής της εφαρμογής" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Ενεργοποίηση αποσφαλμάτωσης" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " - Μικροεφαρμογή ελέγχου έντασης ήχου MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Το σύστημα ήχου δεν είναι διαθέσιμο" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Αναμονή για την ανταπόκριση του συστήματος ήχου" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Σύστημα υποστήριξης συστήματος ήχου" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Αρχική σελίδα" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " - Έλεγχος έντασης ήχου MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Είσοδος" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Έξοδος" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Ένταση μικροφώνου" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Ένταση εξόδου ήχου:" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Μικροεφαρμογή ελέγχου έντασης ήχου MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Αριστερά" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Δεξιά" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Πίσω" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Μπροστά" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Ελάχιστο" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Μέγιστο" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "Ι_σοστάθμιση:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "Βα_θμιαία μείωση έντασης:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Χωρίς ενισχυτή" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Σίγαση" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Προφίλ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Σύν_δεσμος:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Απενεργοποιημένο" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "Έξοδος %u" +msgstr[1] "Έξοδοι %u" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "Είσοδος %u" +msgstr[1] "Είσοδοι %u" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Όνομα" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Δοκιμή ηχείου για %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Δοκιμή ηχείων" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Ηχητικά εφέ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Έ_νταση ειδοποίησης: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Ένταση ήχου ε_ξόδου: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Υλικό" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Επιλέ_ξτε μια συσκευή για ρύθμιση:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Ρυθμίσεις για την επιλεγμένη συσκευή:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Ένταση ήχου ει_σόδου: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Επίπεδο εισόδου:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Επιλέ_ξτε μια συσκευή για την είσοδο ήχου:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Επι_λέξτε μια συσκευή για την έξοδο ήχου:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Εφαρμογές" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Προς το παρόν καμία εφαρμογή δεν αναπαράγει ή καταγράφει ήχο." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Προτιμήσεις ήχου" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Όχι ήχοι" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Ενσωματωμένο" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Προσαρμοσμένο" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Γίνεται δοκιμή ήχου γεγονότος" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Προεπιλογή" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Από θέμα" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Τύπος" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Θέμα ήχων:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Επιλέ_ξτε έναν ήχο ειδοποίησης:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Ενεργοποίηση ήχων _παραθύρων και κουμπιών" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Διακοπή" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Δοκιμή" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Αποτυχία εκκίνησης προτιμήσεων ήχου: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "Σίγα_ση" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Προτιμήσεις ή_χου" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Σίγαση στο" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Άγνωστο" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Μονοφωνικό" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Μπροστά αριστερά" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Μπροστά δεξιά" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Μπροστά στο κέντρο" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Πίσω αριστερά" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Πίσω δεξιά" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Πίσω κέντρο" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Μπροστά αριστερά του κέντρου" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Μπροστά δεξιά του κέντρου" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Πλάι αριστερά " + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Πλάι δεξιά" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Μπροστά επάνω αριστερά" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Μπροστά επάνω δεξιά" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Μπροστά επάνω κέντρο" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Κέντρο επάνω" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Πίσω επάνω αριστερά" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Πίσω επάνω δεξιά" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Πίσω επάνω κέντρο" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Στερεοφωνικό" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/en_AU.po b/po/en_AU.po new file mode 100644 index 0000000..8e3c400 --- /dev/null +++ b/po/en_AU.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Michael Findlay , 2012,2014-2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:36+0000\n" +"Last-Translator: monsta \n" +"Language-Team: English (Australia) (http://wiki.ukui.org/trans/en_AU/)\n" +"Language: en_AU\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sound" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Change sound volume and sound events" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volume Control" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Show desktop volume control" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Version of this application" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Enable debug" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Volume Control Applet" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sound system is not available" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Waiting for sound system to respond" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Sound system backend" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Startup page" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Volume Control" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Input" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Output" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Microphone Volume" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Sound Output Volume" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE Volume Control Applet" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Left" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Right" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Rear" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Front" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fade:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Unamplified" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Mute" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profile:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Disabled" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Output" +msgstr[1] "%u Outputs" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Input" +msgstr[1] "%u Inputs" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Name" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Speaker Testing for %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Test Speakers" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Sound Effects" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Alert volume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Output volume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "C_hoose a device to configure:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Settings for the selected device:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Input volume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Input level:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "C_hoose a device for sound input:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "C_hoose a device for sound output:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Applications" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "No application is currently playing or recording audio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Sound Preferences" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "No sounds" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Built-in" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Custom" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testing event sound" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Default" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "From theme" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Sound _theme:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "C_hoose an alert sound:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Enable _window and button sounds" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Failed to start Sound Preferences: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Mute" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Sound Preferences" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Unknown" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Front Left" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Front Right" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Front Centre" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Rear Left" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Rear Right" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Rear Centre" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Front Left of Centre" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Front Right of Centre" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Side Left" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Side Right" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Top Front Left" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Top Front Right" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Top Front Centre" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Top Centre" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Top Rear Left" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Top Rear Right" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Top Rear Centre" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/en_CA.po b/po/en_CA.po new file mode 100644 index 0000000..7f673df --- /dev/null +++ b/po/en_CA.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Adam Weinberger , 2004, 2005, 2006 +# Alexander Winston , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: English (Canada) (http://wiki.ukui.org/trans/en_CA/)\n" +"Language: en_CA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volume Control" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Volume Control" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Volume Control" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Volume Control" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Custom" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/en_GB.po b/po/en_GB.po new file mode 100644 index 0000000..552b4e1 --- /dev/null +++ b/po/en_GB.po @@ -0,0 +1,441 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Bruce Cowan , 2009, 2010 +# Bruce Cowan , 2010 +# Gareth Owen , David Lodge , 2004 +# Martin Wimpress , 2014-2015 +# Robert Brady , 1999 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: monsta \n" +"Language-Team: English (United Kingdom) (http://wiki.ukui.org/trans/en_GB/)\n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sound" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Change sound volume and sound events" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volume Control" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Show desktop volume control" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Version of this application" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Enable debug" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Volume Control Applet" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sound system is not available" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Waiting for sound system to respond" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Sound system backend" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Startup page" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Volume Control" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Input" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Output" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Microphone Volume" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Sound Output Volume" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE Volume Control Applet" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Left" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Right" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Rear" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Front" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fade:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Unamplified" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Mute" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profile:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Disabled" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Output" +msgstr[1] "%u Outputs" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Input" +msgstr[1] "%u Inputs" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Name" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Speaker Testing for %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Test Speakers" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Sound Effects" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Alert volume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Output volume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "C_hoose a device to configure:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Settings for the selected device:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Input volume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Input level:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "C_hoose a device for sound input:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "C_hoose a device for sound output:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Applications" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "No application is currently playing or recording audio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Sound Preferences" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "No sounds" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Built-in" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Custom" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testing event sound" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Default" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "From theme" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Sound _theme:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "C_hoose an alert sound:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Enable _window and button sounds" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Failed to start Sound Preferences: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Mute" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Sound Preferences" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Unknown" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Front Left" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Front Right" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Front Centre" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Rear Left" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Rear Right" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Rear Centre" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Front Left of Centre" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Front Right of Centre" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Side Left" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Side Right" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Top Front Left" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Top Front Right" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Top Front Centre" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Top Centre" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Top Rear Left" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Top Rear Right" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Top Rear Centre" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/es.po b/po/es.po new file mode 100644 index 0000000..2fb2f15 --- /dev/null +++ b/po/es.po @@ -0,0 +1,446 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Adolfo Jayme Barrientos, 2014 +# Andres Sanchez , 2014,2016 +# Arcenio Cid , 2015 +# ebray187 , 2016 +# Emiliano Fascetti, 2014 +# Francisco Javier F. Serrador , 2004, 2005, 2006 +# Jesús Bravo Álvarez , 2000 +# Jorge González , 2008, 2009, 2010 +# Lucas Vieites Fariña , 2005, 2006, 2007 +# Yelitza Louze , 2003 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Spanish (http://wiki.ukui.org/trans/es/)\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sonido" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Cambiar el volumen y los eventos de sonido" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Control de volumen" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Mostrar el control de volumen del escritorio" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versión de esta aplicación" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Activar depuración" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr ": Miniaplicación Control de volumen de MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistema de sonido no disponible" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Esperando a que el sistema de sonido responda" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Backend sistema de sonido" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Página de inicio" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr ": Control de volumen de MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Salida" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volumen del micrófono" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volumen de salida del sonido" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Miniaplicación Control de volumen de MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Izquierda" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Derecha" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Trasero" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frontal" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínimo" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Máximo" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Desvanecimiento:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Sin amplificar" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Silenciar" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Desactivado" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u salida" +msgstr[1] "%u salidas" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entradas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nombre" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Prueba de altavoces para %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Probar los altavoces" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efectos de sonido" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volumen de _alerta: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Volumen de sali_da: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Elegir un dispositivo para configurar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Ajustes para el dispositivo seleccionado:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volumen de _entrada: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivel de entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Elegir un dispositivo para la entrada de sonido" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Elegir un dispositivo para la salida de sonido" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicaciones" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Actualmente ninguna aplicación está reproduciendo o grabando sonido." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferencias de sonido" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Sin sonidos" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Integrado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Probando sonido de evento" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predeterminado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Del tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema de sonido:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Elegir un sonido de alerta:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Activar sonidos de _ventanas y botones" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Parar" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Probar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Falló al iniciar las Preferencias de sonido: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Silenciar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Prefere_ncias de sonido" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconocido" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Frontal izquierda" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Frontal derecha" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Frontal central" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Canal LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Posterior izquierda" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Posterior derecha" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Posterior central" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Frontal izquierdo del centro" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Frontal derecho del centro" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Lateral Izquierda" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Lateral Derecha" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Superior frontal izquierdo" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Superior frontal derecho" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Superior frontal central" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Superior Central" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Superior posterior izquierdo " + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Superior posterior derecho" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Superior posterior central" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estéreo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/es_AR.po b/po/es_AR.po new file mode 100644 index 0000000..539be7c --- /dev/null +++ b/po/es_AR.po @@ -0,0 +1,433 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-20 15:44+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Spanish (Argentina) (http://wiki.ukui.org/trans/es_AR/)\n" +"Language: es_AR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nombre" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/es_CO.po b/po/es_CO.po new file mode 100644 index 0000000..0ad4fbc --- /dev/null +++ b/po/es_CO.po @@ -0,0 +1,434 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Jose Barakat , 2016 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-20 15:44+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Spanish (Colombia) (http://wiki.ukui.org/trans/es_CO/)\n" +"Language: es_CO\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sonido" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Izquierda" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Derecha" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nombre" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconocido" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/es_MX.po b/po/es_MX.po new file mode 100644 index 0000000..9957ce0 --- /dev/null +++ b/po/es_MX.po @@ -0,0 +1,433 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 16:23+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Spanish (Mexico) (http://wiki.ukui.org/trans/es_MX/)\n" +"Language: es_MX\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nombre" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconocido" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/es_PR.po b/po/es_PR.po new file mode 100644 index 0000000..f49fb80 --- /dev/null +++ b/po/es_PR.po @@ -0,0 +1,434 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Neverest , 2016 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-20 15:44+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Spanish (Puerto Rico) (http://wiki.ukui.org/trans/es_PR/)\n" +"Language: es_PR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sonido" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Máximo" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nombre" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicaciones" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estéreo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/et.po b/po/et.po new file mode 100644 index 0000000..bbd6327 --- /dev/null +++ b/po/et.po @@ -0,0 +1,441 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ivar Smolin , 2014-2015 +# Ivar Smolin , 2009, 2010 +# Lauris Kaplinski , 1999 +# Priit Laes , 2005 +# Tõivo Leedjärv , 2002, 2003 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Estonian (http://wiki.ukui.org/trans/et/)\n" +"Language: et\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Heli" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Helitugevuse muutmine ja sündmuste jaoks helide määramine" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Helitugevuse regulaator" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Töölaua helitugevuse regulaatori näitamine" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Selle rakenduse versioon" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Luba silumine" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE helitugevuse juhtrakend" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Helisüsteem pole saadaval" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Helisüsteemi vastuse ootamine" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Helisüsteemi taustaprogramm" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Käivitamisel aktiveeritav leht" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE helitugevuse regulaator" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Sisend" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Väljund" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofoni valjus" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Heliväljundi valjus" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE helitugevuse juhtimise rakend" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Vasak" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Parem" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Tagumine" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Eesmine" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Väikseim" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Suurim" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Tasakaal:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Tuhmumine:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "Madal_sageduskõlar:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Võimendamata" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Tumm" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profiil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Pistik:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Keelatud" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u väljund" +msgstr[1] "%u väljundit" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u sisend" +msgstr[1] "%u sisendit" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nimi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s kõlarite testimine" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Kõlarite test" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Heliefektid" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Hoiatuste valjus: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Väljundi valjus: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Riistvara" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Seadistatava seadme valimine:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Valitud seadme sätted:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Sisendi valjus: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Sisendi valjus:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "H_elisisendi seadme valimine:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Heliväljundi seadme valimine:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Rakendused" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ükski rakendus ei esita ega salvesta hetkel audiot." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Helieelistused" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Helid puuduvad" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Sisseehitatud" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Kohandatud" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Sündmuse heli testimine" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Vaikimisi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Teemast" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Liik" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Heli_teema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "H_oiatuse heli valimine:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Akende ja nuppude helid on lubatud" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Peata" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Testi" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Tõrge helieelistuste käivitamisel: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Tumm" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Helieelistused" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Tundmatu" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Eesmine vasak" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Eesmine parem" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Eesmine keskmine" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Tagumine vasak" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Tagumine parem" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Tagumine keskmine" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/eu.po b/po/eu.po new file mode 100644 index 0000000..e1085a8 --- /dev/null +++ b/po/eu.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Asier Iturralde Sarasola , 2012,2015 +# Hizkuntza Politikarako Sailburuordetza , 2004 +# Iñaki Larrañaga Murgoitio , 2004, 2005, 2006, 2007, 2008, 2009, 2010 +# Iñaki Larrañaga Murgoitio , 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Basque (http://wiki.ukui.org/trans/eu/)\n" +"Language: eu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Soinua" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Aldatu soinuaren bolumena eta soinuaren gertaerak" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Bolumen-kontrola" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Erakutsi mahaigaineko bolumen-kontrola" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Aplikazio honen bertsioa" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Gaitu arazketa" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATEren bolumen-kontrolaren miniaplikazioa" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Soinu-sistema ez dago erabilgarri" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Soinu-sistemaren zain erantzuteko" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Soinu-sistemaren motorra" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Abioko orrialdea" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATEren bolumen-kontrola" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Sarrera" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Irteera" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofonoaren bolumena" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Soinuaren irteerako bolumena" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE bolumen-kontrolaren applet-a" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Ezkerra" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Eskuina" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Atzealdea" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Aurrealdea" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Gutxienekoa" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Gehienezkoa" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balantzea:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Iraungitu:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Anplifikatu gabea" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "% 100" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Mututu" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profila:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Konektorea:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Desgaituta" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "Irteera %u" +msgstr[1] "%u irteera" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "Sarrera %u" +msgstr[1] "%u sarrera" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Izena" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s(r)en probako bozgorailua" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Probatu bozgorailuak" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Soinu-efektuak" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Abisuaren bolumena: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Irteerako bolumena: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardwarea" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "A_ukeratu gailu bat konfiguratzeko:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Hautatutako gailuaren ezarpenak:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Sarrerako bolumena: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Sarrerako maila:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Aukeratu _sarrerako soinuaren gailua:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Aukeratu _irteerako soinuaren gailua:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplikazioak" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ez dago unean audioa erreproduzitzen edo grabatzen duen aplikaziorik." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Soinuaren hobespenak" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Soinurik ez" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Integratuta" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Pertsonalizatua" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Gertaeraren soinua probatzea" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Lehenetsia" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Gaitik" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Mota" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Soinuaren _gaia:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Aukeratu alertaren soinua:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Gaitu _leihoen eta botoien soinuak" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Gelditu" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Probatu" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Huts egin du soinuaren hobespenak abiaraztean: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Mututu" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Soinuaren hobespenak" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estereoa" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/fa.po b/po/fa.po new file mode 100644 index 0000000..31a1a01 --- /dev/null +++ b/po/fa.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alireza Kheirkhahan , 2005 +# Mahdi Pourghasem , 2016 +# Meelad Zakaria , 2005 +# Roozbeh Pournader , 2003, 2005 +# Sara Khalatbari , 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Persian (http://wiki.ukui.org/trans/fa/)\n" +"Language: fa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "صدا" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "کنترل بلندی صدا" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "کنترل بلندی صدا" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "صفحه شروع" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "کنترل بلندی صدا" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ورودی" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "خروجی" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "میزان صدای خروجی" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "کنترل بلندی صدا" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "چپ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "راست" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "عقب" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "جلو" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "کم‌ترین مقدار" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "بیش‌ترین مقدار" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "۱۰۰٪" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "بی‌صدا" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "غیر فعال شده" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "نام" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "آزمایش بلندگو ها" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "سخت افزار" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ورودی صدا" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "سفارشی" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "توقف" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "بی صدا" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/fi.po b/po/fi.po new file mode 100644 index 0000000..132e7c8 --- /dev/null +++ b/po/fi.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Mikko Rauhala , 1999 +# nomen omen , 2017 +# Tuomas J. Lukka , 1998 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: nomen omen \n" +"Language-Team: Finnish (http://wiki.ukui.org/trans/fi/)\n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Äänet" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Muuta äänenvoimakkuutta ja äänitapahtumia" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Äänenvoimakkuuden hallinta" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Näytä työpöydän äänenvoimakkuuden hallinta" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Tämän ohjelman versio" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Käytä vianetsintää" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Äänenvoimakkuuden Hallinta Sovelma" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Äänijärjestelmä ei ole käytettävissä" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Odotetaan äänijärjestelmän vastausta" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Äänijärjestelmä taustaosa" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Aloitussivu" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Äänenvoimakkuuden Hallinta" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Tallennus" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Toisto" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofonin Äänenvoimakkuus" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Äänentoisto Voimakkuus" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE Äänenvoimakkuuden Hallinta Sovelma" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "vasen" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "oikea" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "taka" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "etu" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimi" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimi" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Tasapaino:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Häivytys:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Vahvistamaton" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100 %" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Vaimenna" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profiili:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Liitin:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Ei käytössä" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ulostulo" +msgstr[1] "%u ulostuloa" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u sisääntulo" +msgstr[1] "%u sisääntuloa" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nimi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Ääniefektit" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Hälytysten voimakkuus: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Toistovoimakkuus: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Laitteisto" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Valitse määriteltävä laite:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Valitun laitteen asetukset:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Äänitysvoimakkuus: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Äänitystaso: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Valitse laite äänen tallentamiseksi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Valitse laite äänen toistamiseksi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Sovellukset" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Mikään sovellus ei nyt soita tai tallenna ääntä." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Ääniasetukset" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ei ääniä" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Sisäänrakennetut" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Mukautettu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Kokeillaan tapahtuman ääntä" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Oletus" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Teemasta" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tyyppi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Ääni_teema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Valitse hälytysääni:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Ota _ikkuna- ja painikeäänet käyttöön" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Pysäytä" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Ääniasetuksia ei voitu käynnistää: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Vaimenna" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Ääniasetukset" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/fr.po b/po/fr.po new file mode 100644 index 0000000..ed15087 --- /dev/null +++ b/po/fr.po @@ -0,0 +1,445 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Baptiste Mille-Mathias , 2005 +# Benjamin Teissier , 2015 +# Christophe Fergeau , 2002 +# Étienne Deparis , 2017 +# Laurent Coudeur , 2009 +# mauron, 2012 +# Stéphane Raimbault , 2007 +# Thibaut Cousin , 1999 +# Tubuntu , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Étienne Deparis \n" +"Language-Team: French (http://wiki.ukui.org/trans/fr/)\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Son" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Modifier le volume et des événements sonores" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Contrôleur de volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Afficher le contrôleur de volume" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Version de cette application" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Activer le déboggage" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Applet du contrôleur de volume MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Le système son n'est pas disponible" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Attente de réponse du système sonore" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Gestionnaire de système son" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Page de démarrage" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Contrôleur de volume MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrée" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Sortie" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volume du microphone" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volume de sortie sonore" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Applet de contrôle du volume MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Gauche" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Droite" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Arrière" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Avant" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance :" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fondu :" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Caisson de basse :" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Non amplifié" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100 %" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Sourdine" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnecteur :" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Désactivé" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u sortie" +msgstr[1] "%u sorties" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrée" +msgstr[1] "%u entrées" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nom" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Test des haut-parleurs pour %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Tester les haut-parleurs" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Effets sonores" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume d'_alerte : " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Volume de _sortie : " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Matériel" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "C_hoisissez un périphérique à configurer :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Paramètres du périphérique sélectionné :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume d'_entrée : " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Niveau d'entrée :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Choisissez un _périphérique pour l'entrée son :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Choisissez un _périphérique pour la sortie son :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Applications" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Aucune application n'émet ou n'enregistre de son actuellement." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Préférences du son" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Aucun son" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Prédéfini" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personnalisé" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Test du son d'un événement" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Par défaut" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "À partir du thème" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Thème sonore :" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "C_hoisissez un son d'alerte :" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Acti_ver les sons des fenêtres et boutons" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Arrêter" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Tester" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Impossible d'ouvrir les préférences du son : %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "S_ourdine" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Préférences du _son" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Volume avant sourdine à" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Inconnu" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Avant Gauche" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Avant Droit" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Centre Avant" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Effets basse fréquence (LFE)" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Arrière Gauche" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Arrière Droit" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Centre Arrière" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Avant Gauche Central" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Avant Droit Central" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Côté Gauche" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Côté Droit" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Haut Avant Gauche" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Haut Avant Droit" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Haut Avant Centre" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Haut Central" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Haut Arrière Gauche" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Haut Arrière Droit" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Haut Arrière Central" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stéréo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/fr_CA.po b/po/fr_CA.po new file mode 100644 index 0000000..c8b30c2 --- /dev/null +++ b/po/fr_CA.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ir0nsh007er , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-22 02:12+0000\n" +"Last-Translator: monsta \n" +"Language-Team: French (Canada) (http://wiki.ukui.org/trans/fr_CA/)\n" +"Language: fr_CA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Son" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Contrôle du Volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Contrôle du Volume" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Contrôle du Volume" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Contrôle du Volume" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nom" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Défaut" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/frp.po b/po/frp.po new file mode 100644 index 0000000..57ba5f2 --- /dev/null +++ b/po/frp.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alexandre Raymond, 2016 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 23:26+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Franco-Provençal (Arpitan) (http://wiki.ukui.org/trans/frp/)\n" +"Language: frp\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Son" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Controlo du volumo" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Controlo du volumo" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Controlo du volumo" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Controlo du volumo" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Quincalye" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Prèdèfini" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ga.po b/po/ga.po new file mode 100644 index 0000000..c719555 --- /dev/null +++ b/po/ga.po @@ -0,0 +1,446 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alastair McKinstry , 1999 +# Paul Duffy , 2003 +# Seán de Búrca , 2008, 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Irish (http://wiki.ukui.org/trans/ga/)\n" +"Language: ga\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : " +"4);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Fuaim" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Athraigh airde agus teagmhais fuaime" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Rialtán Airde" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "‭Taispeáin rialtán airde deisce" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Leagan an fheidhmchláir seo" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Rialtán Airde" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Rialtán Airde" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ionchur" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Aschur" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Rialtán Airde" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Clé" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Deas" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Cúl" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Aghaidh" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Íosmhéid" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Uasmhéid" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Cothromaíocht:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "Cé_imniú:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Fo-dhordaire:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Neamhaimplithe" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Gan fuaim" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Próifíl:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Nascóir:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Díchumasaithe" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Aschur" +msgstr[1] "%u Aschur" +msgstr[2] "%u Aschur" +msgstr[3] "%u nAschur" +msgstr[4] "%u Aschur" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Ionchur" +msgstr[1] "%u Ionchur" +msgstr[2] "%u Ionchur" +msgstr[3] "%u nIonchur" +msgstr[4] "%u Ionchur" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Ainm" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Maisíochtaí Fuaime" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Airde _foláirimh:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Airde _aschurtha:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Crua-earraí" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Roghnaigh gléas le cumrú" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Socruithe don ghléas roghnaithe:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Airde _ionchurtha:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Leibhéal ionchurtha:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Roghnaigh gléas le haghaidh ionchurtha fuaime:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Roghnaigh gléas le haghaidh aschurtha fuaime:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Feidhmchláir" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Níl aon fheidhmchlár ag seinm nó ag taifeadadh fuaime faoi láthair." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Sainroghanna Fuaime" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Gan fhuaimeanna" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Saincheaptha" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Fuaim teagmhais tástála" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Réamhshocrú" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Ó théama" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Cineál" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Téama fuaime:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Roghnaigh fuaim foláirimh:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Cumasaigh fuaimeanna fuinneog agus cnaipí" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Theip ar thosú Sainroghanna Fuaime: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Gan Fuaim" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Sainroghanna _Fuaime" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/gl.po b/po/gl.po new file mode 100644 index 0000000..51902e6 --- /dev/null +++ b/po/gl.po @@ -0,0 +1,446 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Antón Méixome , 2009 +# Fran Diéguez , 2009 +# Fran Diéguez , 2010 +# Fran Diéguez , 2010 +# Ignacio Casal Quinteiro , 2007-2008 +# Ignacio Casal Quinteiro , 2005-2006 +# Mancomún - Centro de Referencia e Servizos de Software Libre , 2009 +# Miguel Anxo Bouzada , 2013 +# Sergio Rua , 1999 +# Suso Baleato , 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Galician (http://wiki.ukui.org/trans/gl/)\n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Son" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Modificar o volume do son e asociar sons a eventos" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Control de volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Amosar o control de volume do escritorio" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versión deste aplicativo" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Miniaplicativo de control de volume do MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Agardando a que o sistema de son responda" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Páxina de inicio" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Control de volume do MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Saída" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volume do micrófono" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volume do son de saída" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — Miniaplicativo de control de volume do MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquerda" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dereita" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Traseira" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frontal" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínimo" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Máximo" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Esvaecer:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Sen amplificación" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Sen son" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Desactivado" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u saída" +msgstr[1] "%u saídas" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entradas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nome" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Proba de altofalantes para %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Probar altofalantes" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efectos de son" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume da _alerta: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "V_olume de saída: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "E_scolla un dispositivo para configurar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Configuracións para o dispositivo seleccionado:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume de _entrada: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivel de entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "E_scolla un dispositivo para o son de entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "E_scolla un dispositivo para o son de saída:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicativos" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Neste momento non hai ningún aplicativo reproducindo ou gravando son." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferencias de son" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Sen sons" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Incorporado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Probando o son da acción" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predeterminado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Do tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema de son:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "E_scolla un son de alerta:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Activar sons de _xanela e de botóns" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Deter" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Probar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Produciuse un fallo ao iniciar as Preferencias de son: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "S_en son" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferencias de _son" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/gnome-copyrights.txt b/po/gnome-copyrights.txt new file mode 100644 index 0000000..371a898 --- /dev/null +++ b/po/gnome-copyrights.txt @@ -0,0 +1,1166 @@ +========== af.po ========== +# Afrikaans translation of mate-media. +# Copyright (C) 2010 +# This file is distributed under the same license as the mate-media package. +# Contributors: +# F Wolff , 2010. + + + + +========== am.po ========== +# Translations into the Amharic Language. +# Copyright (C) 2002 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# Ge'ez Frontier Foundation , 2002. +# +# + + + + +========== ar.po ========== +# translation of mate-media.HEAD.po to Arabic +# This file is distributed under the same license as the mate-media.ar package. +# Copyright (C) 2003 THE mate-media.ar'S COPYRIGHT HOLDER. +# Sayed Jaffer Al-Mosawi , 2002. +# Arafat Medini , 2002,2003. +# Isam Bayazidi , 2002. +# , 2003. +# Abdulaziz Al-Arfaj , 2004. +# Djihed Afifi , 2006. +# Khaled Hosny , 2006, 2007, 2008, 2009, 2010. +# Anas Afif Emad , 2008. +# Amitakhya Phukan , 2009. + + + + +========== ast.po ========== +# Asturian translation for mate-media. +# Copyright (C) 2009 mate-media's COPYRIGHT HOLDER +# This file is distributed under the same license as the mate-media package. +# Astur , 2009. +# + + + + +========== az.po ========== +# translation of mate-media.HEAD.az.po to Azerbaijani +# Copyright (C) 2000, 2004 Free Software Foundation, Inc. +# Vasif Ismailoglu MD , 2000. +# Mətin Əmirov , 2004. +# + + + + +========== be.po ========== +# Беларускі пераклад mate-media.HEAD. +# Copyright (C) 2003, 2004 Free Software Foundation, Inc. +# Vital Khilko , 2003. +# Ales Nyakhaychyk , 2004. +# Ihar Hrachyshka , 2006 +# + + + + +========== be@latin.po ========== +# Biełaruski pierakład mate-media +# Alaksandar Navicki , 2007. Łacinka.org +# + + + + +========== bg.po ========== +# Bulgarian translation of mate-media po-file. +# Copyright (C) 2002, 2003, 2004, 2005, 2007, 2008 Free Software Foundation, Inc. +# Copyright (C) 2009, 2010 Free Software Foundation, Inc. +# Evgeni Boevski , 2002, 2003. +# Yanko Kaneti , 2003. +# Vladimir "Kaladan" Petkov , 2004. +# Rostislav Raykov , 2004. +# Alexander Shopov , 2005, 2008, 2009, 2010. +# Philip Dimitrov , 2005. +# Yavor Doganov , 2007. +# + + + + +========== bn.po ========== +# Bengali Translation of the mate-media. +# This file is distributed under the same license as the MATE-MEDIA package. +# Copyright (C) 2003-2005 The MATE Foundation. +# +# Sayamindu Dasgupta , 2003. +# Runa Bhattacharjee , 2003. +# Progga , 2005. +# Runa Bhattacharjee , 2006. +# Runa Bhattacharjee , 2008, 2009. +# Maruf Ovee , 2009. +# Sadia Afroz , 2010. +# + + + + +========== bn_IN.po ========== +# translation of bn_IN.po to Bengali INDIA +# Translation of mate-media.mate-2-12.po to Bengali India +# This file is distributed under the same license as the MATE-MEDIA package. +# Copyright (C) 2003-2005 The MATE Foundation. +# +# Sayamindu Dasgupta , 2003. +# Runa Bhattacharjee , 2003. +# Progga , 2005. +# Runa Bhattacharjee , 2006. +# Runa Bhattacharjee , 2008, 2009, 2010. + + + + +========== br.po ========== +# Breton translation of mate-media. +# Copyright (C) 2006 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# +# Jérémy Ar Floc'h , 2006. +# + + + + +========== bs.po ========== +# translation of mate-media.HEAD.bs.po to Bosnian +# This file is distributed under the same license as the mate-media package. +# Copyright (C) 2004 Free Software Foundation, Inc. +# Mehemed Sacirovic , 2004. +# + + + + +========== ca.po ========== +# Traducció del mate-media de l'equip de Softcatalà. +# Copyright © 2000-2009 Free Software Foundation, Inc. +# Softcatalà , 2000. +# Antoni Lacasta i Sulla , 2002. +# Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007. +# Josep Puigdemont i Casamajó , 2007. +# Joan Duran , 2009, 2010. +# + + + + +========== ca@valencia.po ========== +# Traducció del mate-media de l'equip de Softcatalà. +# Copyright © 2000-2009 Free Software Foundation, Inc. +# Softcatalà , 2000. +# Antoni Lacasta i Sulla , 2002. +# Jordi Mallach , 2002, 2003, 2004, 2005, 2006, 2007. +# Josep Puigdemont i Casamajó , 2007. +# Joan Duran , 2009, 2010. +# + + + + +========== cs.po ========== +# Czech messages for mate-media. +# Copyright (C) 2001, 2007, 2008, 2009, 2010 the author(s) of mate-media. +# Copyright (C) 2004, 2005, 2006 Miloslav Trmac . +# Copyright (C) 2006 Lukas Novotny . +# This file is distributed under the same license as the mate-media package. +# Stanislav Brabec , 2000, 2001. +# Michal Bukovjan , 2002. +# Miloslav Trmac , 2003, 2004, 2005, 2006. +# Petr Tomeš , 2006. +# Lukas Novotny , 2006. +# Petr Kovar , 2007, 2008, 2009, 2010. + + + + +========== cy.po ========== +# mate-media yn Gymraeg. +# Copyright (C) 2003 Free Software Foundation, Inc. +# www.kyfieithu.co.uk , 2003. +# KGyfieithu , 2003. +# Owain Green, 2003. +# Dafydd Harries , 2003. +# Dafydd Jones, 2003. +# Steve Griffiths, 2003. +# + + + + +========== da.po ========== +# Danish translation of the mate-media. +# Copyright (C) 1998-99, 2000-10 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# Kenneth Christiansen , 1998-2000 +# Keld Simonsen , 2000-2001. +# Ole Laursen , 2001-2004, 06. +# Martin Willemoes Hansen , 2004-2006. +# Peter Bach , 2007. +# Kenneth Nielsen . 2008. +# Ask Hjorth Larsen , 2010. +# +# Konventioner: +# +# Mate-CD -> cd-afspiller +# sample -> (oftest) lydklip +# sink -> destination +# track -> spor +# +# Husk at tilføje dig i credit-listen (besked id "translator-credits") +# + + + + +========== de.po ========== +# German mate-media translation +# Copyright (C) 2000-2004 Free Software Foundation, Inc. +# Matthias Warkus , 1999. +# Karl Eichwalder , 1999, 2000. +# Christian Meyer , 2000-2002. +# Christian Neumair , 2002-2004. +# Hendrik Richter , 2004, 2005, 2006, 2008, 2009. +# Christian Kirbach , 2009. +# Mario Blättermann , 2010. +# + + + + +========== dz.po ========== +# Dzongkha translation of mate-media +# Copyright @ 2006, Free Software Foundation, Inc. +# Mindu Dorji +# + + + + +========== el.po ========== +# Greek translation of MATE media +# Copyright (C) 1999 - 2009 Free Software Foundation, Inc. +# simos: around 250 messages (initial translation, started counting) +# kostas: 05Jan2003, one more update +# kostas: 03Aug2003, update for Mate 2.4 +# nikos: 07Sep2003, Review translation +# nikos: 07Sep2003, change some messages for better shape of vol control window +# kostas:12Nov2003, fixes +# kostas:26Dec2003, update +# kostas:23Feb2004, update +# nikos:2Sep2004, update +# +# +# nikos: 336 messages, 13Jul2002, updated translation for MATE 2.0. +# aarg : 336 messages, 19Jul2002, fixes to translation. +# kostas: 475 messages, 26Oct2002, completed translation. +# kostas: fixed 3 typos, 21Nov2002 (thanks to Nikos Charonitakis). +# kostas: 583 messages, 06Jan2003, updated translation for Mate 2.1x. +# Kostas Papadimas 2002, 2003. +# Simos Xenitellis , 1999, 2000, 2001, 2002. +# Nikos Charonitakis , 2002, 2003, 2004. +# AARG! Anonymous , 2002. +# Kostas Papadimas , 2003, 2004, 2005, 2006. +# Nikos Charonitakis , 2005. +# Simos Xenitellis , 2008. +# Fotis Tsamis , 2009. + + + + +========== en@shaw.po ========== +# Shavian translation for mate-media. +# Copyright (C) 2009 The Mate Foundation. +# Thomas Thurman , 2009. + + + + +========== en_CA.po ========== +# Canadian English translation of mate-media +# Copyright (C) 2004-2006 Adam Weinberger and the MATE Foundation +# This file is distributed under the same licence as the mate-media package. +# Alexander Winston , 2004. +# Adam Weinberger , 2004, 2005, 2006. +# + + + + +========== en_GB.po ========== +# English (British) +# Copyright (C) 1999 Free Software Foundation, Inc. +# Robert Brady , 1999. +# Gareth Owen , David Lodge , 2004. +# Bruce Cowan , 2009, 2010. +# Bruce Cowan , 2010. + + + + +========== es.po ========== +# translation of mate-media.HEAD.po to Español +# Copyright © 1998-2003, 2006, 2007, 2008 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# Miguel de Icaza 1998. +# +# +# Pablo Saratxaga , 1998-2000. +# Jesús Bravo Álvarez , 2000. +# Germán Poo Caamaño , 2002 (Revisor). +# Yelitza Louze , 2003. +# Francisco Javier F. Serrador , 2004. +# Lucas Vieites , 2002-2004. +# Francisco Javier F. Serrador , 2004, 2005, 2006. +# Lucas Vieites Fariña , 2005, 2006, 2007. +# Claudio Saavedra 2007 (QA). +# Jorge González , 2008, 2009, 2010. +# + + + + +========== et.po ========== +# MATE-meedia eesti keele tõlge. +# Estonian translation of MATE-media. +# +# Copyright (C) 1999, 2002, 2003, 2005, 2006 Free Software Foundation, Inc. +# Copyright (C) 2007, 2009, 2010 The MATE Project. +# This file is distributed under the same license as the mate-media package. +# +# Lauris Kaplinski , 1999. +# Tõivo Leedjärv , 2002, 2003. +# Ivar Smolin , 2005-2007, 2009, 2010. +# Priit Laes , 2005. +# + + + + +========== eu.po ========== +# translation of eu_to_be_translate.po to Basque +# Copyright (C) 2001, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# +# Hizkuntza Politikarako Sailburuordetza , 2004. +# Iñaki Larrañaga Murgoitio , 2004, 2005, 2006, 2007, 2008, 2009, 2010. +# Iñaki Larrañaga Murgoitio , 2007. + + + + +========== fa.po ========== +# Persian translation of mate-media. +# Copyright (C) 2003, 2005 Sharif FarsiWeb, Inc. +# Roozbeh Pournader , 2003, 2005. +# Sara Khalatbari , 2005. +# Alireza Kheirkhahan , 2005. +# Meelad Zakaria , 2005. +# + + + + +========== fi.po ========== +# Finnish translation of the mate-media module. +# Copyright (C) 1998-2009 Free Software Foundation, Inc. +# Tuomas J. Lukka , 1998. +# Mikko Rauhala , 1999. +# Jarkko Ranta , 2000-2004. +# Ilkka Tuohela , 2005-2009. +# Tommi Vainikainen , 2009-2010. +# +# + + + + +========== fr.po ========== +# French translation of mate-media. +# Copyright (C) 1998-2010 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# +# Vincent Renardias , 1998-1999. +# Thibaut Cousin , 1999. +# Christophe Merlet , 2000-2006. +# Christophe Fergeau , 2002. +# Baptiste Mille-Mathias , 2005. +# Robert-André Mauchin , 2006-2008. +# Jonathan Ernst , 2006-2007. +# Stéphane Raimbault , 2007. +# Claude Paroz , 2007-2010. +# Laurent Coudeur , 2009. +# + + + + +========== ga.po ========== +# Irish translations for mate-media package. +# Copyright (C) 1998-2009 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# Alastair McKinstry , 1999. +# Paul Duffy , 2003. +# Seán de Búrca , 2008, 2009. +# + + + + +========== gl.po ========== +# translation of mate-media.master.po to Galician +# Galician translation of mate-media. +# Copyright (C) 1999 Sergio Rua +# Copyright (C) 2000-2001 Jesús Bravo Álvarez +# +# Proxecto Trasno - Adaptación do software libre á lingua galega: Se desexas +# colaborar connosco, podes atopar máis información en http://www.trasno.net +# +# Jesús Bravo Álvarez , 2000-2001. +# Sergio Rua , 1999. +# Ignacio Casal Quinteiro , 2005, 2006. +# Ignacio Casal Quinteiro , 2007, 2008. +# Mancomún - Centro de Referencia e Servizos de Software Libre , 2009. +# Suso Baleato , 2009. +# Fran Diéguez , 2009. +# Antón Méixome , 2009. +# Fran Diéguez , 2010. +# Fran Dieguez , 2010. +# + + + + +========== gu.po ========== +# translation of mate-media.master.gu.po to Gujarati +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Sweta Kothari , 2008, 2009. +# Ankit Patel , 2009. + + + + +========== he.po ========== +# translation of mate-media.HEAD.he.po to Hebrew +# translation of mate-media.mate-2-0-gstreamer.he.po to Hebrew +# translation of mate-media.mate-2-0.he.po to Hebrew +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# Gil 'Dolfin' Osher , 2002,2003 +# + + + + +========== hi.po ========== +# translation of mate-media.master.po to Hindi +# Copyright (C) 2003, 2004, 2005, 2006, 2008, 2009 Free Software Foundation, Inc. +# +# G Karunakar , 2003. +# Ravishankar Shrivastava , 2004. +# Rajesh Ranjan , 2005, 2006, 2008, 2009. +# Rajesh Ranjan , 2009. + + + + +========== hr.po ========== +# Translation of mate-media to Croatiann +# Copyright (C) Croatiann team +# Translators: Automatski Prijevod <>,Denis Lackovic ,pr pr ,Robert Sedak , + + + + +========== hu.po ========== +# Hungarian translation of mate-media. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# +# Szabolcs Ban , 1999, 2000. +# Miklos Szel , 2000. +# Gergely Nagy , 2001. +# Andras Timar , 2001, 2002, 2003. +# Emese Kovacs , 2002. +# Laszlo Dvornik , 2004. +# Gabor Kelemen , 2004, 2005, 2006, 2007, 2008, 2009, 2010. +# Mate ORY , 2006. + + + + +========== id.po ========== +# + + + + +========== it.po ========== +# mate-media Italian translation +# Copyright (C) 2000-2009, 2010 Free Software Foundation, Inc. +# This file is distributed under the same licence of the mate-media package +# Salvatore Isaja , 2000-2002. +# Luca Ferretti . +# Alessio Frusciante , 2004. +# Salvatore Isaja , 2004, 2005. +# +# Milo Casagrande , 2006-2009, 2009, 2010. + + + + +========== ja.po ========== +# mate-media ja.po. +# Copyright (C) 1998-2000, 2002-2010 Free Software Foundation, Inc. +# Mitsuru Oka <95i44@is.kochi-u.ac.jp>, 1998. +# Eiichiro ITANI , 1999. +# Akira TAGOH , 2000. +# Takayuki KUSANO , 2002, 2009-2010. +# KAMAGASAKO Masatoshi , 2003. +# Takeshi AIHANA , 2003-2009. +# Satoru SATOH , 2006. +# Hideki Yamane (Debian-JP) , 2010. +# + + + + +========== ka.po ========== +# Georgian translation for Mate Media. +# # Copyright © 2006 Georgian Ubuntu Translators. +# Alexander Didebulidze , 2005. +# + + + + +========== kn.po ========== +# translation of mate-media.master.kn.po to Kannada +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Shankar Prasad , 2008, 2009, 2010. + + + + +========== ko.po ========== +# mate-media ko.po +# This file is distributed under the same license as the mate-media package. +# +# Updated by Young-Ho, Cha , 2000, 2006, 2007. +# Changwoo Ryu , 1998, 2002, 2003, 2004, 2006, 2008, 2009, 2010. +# +# + + + + +========== ku.po ========== +# translation of ku.po to Kurdish +# translation of mate-media.HEAD.po to Kurdish +# German translation of PACKAGE. +# Copyright (C) 2005 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Erdal Ronahî , 2005. +# Erdal Ronahi , 2005, 2006. +# + + + + +========== lt.po ========== +# Lithuanian translation of mate-media +# Copyright © 2000-2010 Free Software Foundation, Inc. +# Gediminas Paulauskas , 2000-2003. +# Žygimantas Beručka , 2003-2006, 2009, 2010. +# Justina Klingaitė , 2005. +# Gintautas Miliauskas , 2007. +# Rimas Kudelis , 2009. +# Aurimas Černius , 2010. + + + + +========== lv.po ========== +# translation of lv.po to Latvian +# Mate-media for Latvian. +# Copyright (C) 2001, 2006, 2009 Free Software Foundation, Inc. +# +# Artis Trops , 2001. +# Raivis Dejus , 2006, 2009. +# Peteris Krisjanis , 2010. + + + + +========== mai.po ========== +# translation of mai.po to Hindi +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Sangeeta Kumari , 2009. +# Rajesh Ranjan , 2009. + + + + +========== mg.po ========== +# MALAGASY TRANSLATION OF MATE-MEDIA. +# Copyright (C) 2006-2009 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Thierry Randrianiriana , 2006-2009. + + + + +========== mk.po ========== +# translation of mate-media.HEAD.mk.po to Macedonian +# translation of mate-media.HEAD.po to +# translation of mate-media.HEAD.po to +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) 2004 THE PACKAGE'S COPYRIGHT HOLDER. +# +# Misa Popovic , 2003. +# Vladislav Bidikov , 2003. +# Ivan Stojmirov , 2003. +# Arangel Angov , 2003, 2006, 2008. +# Арангел Ангов , 2005. +# Jovan Naumovski , 2006, 2007, 2008. + + + + +========== ml.po ========== +# translation of mate-media.master.ml.po to Malayalam +# This file is distributed under the same license as the mate-media package. +# Copyright (C) 2003, 2006-2007, 2010 mate-media'S COPYRIGHT HOLDER. +# +# FSF-India , 2003. +# Ani Peter , 2006, 2007. +# Praveen Arimbrathodiyil , 2010. + + + + +========== mn.po ========== +# translation of mn.po to Mongolian +# translation of mate-media.mate-2-4.po to Mongolian +# translation of mate-media.HEAD.po to Mongolian +# translation of mate-media.HEAD.mn.po to Mongolian +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. +# Sukhochir , 2003. +# Sanlig Badral , 2003. +# Sanlig Badral , 2003, 2004. +# Sanlig Badral , 2003, 2004, 2006. + + + + +========== mr.po ========== +# translation of mr.po to Marathi +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Rahul Bhalerao , 2006. +# Sandeep Shedmake , 2008, 2009. +# Sandeep Shedmake , 2009, 2010. + + + + +========== ms.po ========== +# Mate-media Bahasa Melayu (ms) +# Jika takut risiko, Jangan bicara tentang Perjuangan +# Hasbullah Bin Pit (sebol) , 2001,2002, 2003 +# + + + + +========== nb.po ========== +# Norwegian (bokmål dialect) translation of the mate-media module. +# Copyright (C) 1998-2004, 2005 Free Software Foundation, Inc. +# Kjartan Maraas , 1998-2010. +# Terance Edward Sola , 2005. +# + + + + +========== nds.po ========== +# Low German translation for mate-media. +# Copyright (C) 2009 mate-media's COPYRIGHT HOLDER +# This file is distributed under the same license as the mate-media package. +# Nils-Christoph Fiedler , 2009. +# + + + + +========== ne.po ========== +# translation of mate-media.HEAD.ne.po to Nepali +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. +# +# Jyotshna Shrestha , 2005. +# Ganesh Ghimire , 2005. +# Bishnu Adhikari , 2005. +# Jaydeep Bhusal , 2005. +# Shiva Pokharel , 2005. +# Shyam Krishna Bal , 2006. +# Mahesh subedi , 2006. +# Shiva Prasad Pokharel , 2006. +# Nabin Gautam , 2007. + + + + +========== nl.po ========== +# Dutch translation for mate-media +# +# This package is distributed under the same license as the mate-media package. +# +# Wing Tung Leung , 1999. +# Dennis Smit , 2002. +# Huib Kleinhout , 2002. +# Tino Meinen , 2002, 2007, 2008. +# Taco Witte , 2002. +# Reinout van Schouwen , 2002–2006, 2009 +# Wouter Bolsterlee , 2006–2010. +# Mario Blättermann , 2010. +# +# alert - waarschuwing +# event - gebeurtenis +# + + + + +========== nn.po ========== +# translation of nn.po to +# translation of nn.po to Norwegian Nynorsk +# Norwegian (nynorsk) translation of mate-media. +# Copyright (C) 2000-2002 Free Software Foundation +# +# Kjartan Maraas , 2001. +# Roy-Magne Mo , 2001-2002. +# Åsmund Skjæveland , 2003, 2004, 2005, 2006. +# Torstein Adolf Winterseth , 2009. +# Åsmund Skjæveland , 2010. + + + + +========== oc.po ========== +# Translation of oc.po to Occitan +# Occitan translation of mate-media. +# Copyright (C) 2007 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# +# Yannig Marchegay (Kokoyaya) , 2007. + + + + +========== or.po ========== +# translation of mate-media.mate-2-30.or.po to Oriya +# Oriya translation of mate-media.HEAD.pot. +# Copyright (C) 2004, 2006, 2009, 2010 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# $Id: or.po,v 1.1 2006/04/03 23:09:31 gmohanty Exp $ +# +# Parashar Nayak , 2004. +# Gora Mohanty , 2004, 2006. +# Manoj Kumar Giri , 2009, 2010. + + + + +========== pa.po ========== +# translation of mate-media.HEAD.po to Punjabi +# Copyright (C) 2004 THE mate-media.HEAD'S COPYRIGHT HOLDER +# This file is distributed under the same license as the mate-media.HEAD package. +# +# Amanpreet Singh Alam , 2004. +# A S Alam , 2005, 2006, 2007, 2009, 2010. +# Amanpreet Singh Alam , 2008, 2009. + + + + +========== pl.po ========== +# Polish translation for gnome-media. +# Copyright © 1999-2010 the gnome-media authors. +# This file is distributed under the same license as the gnome-media package. +# Zbigniew Chyla , 1999-2003. +# Marcin Owsiany , 2000. +# Artur Flinta , 2003-2006. +# Wadim Dziedzic , 2007. +# Tomasz Dominikowski , 2008-2009. +# Piotr Drąg , 2010. +# Aviary.pl , 2007-2010. +# + + + + +========== pt.po ========== +# mate-media's Portuguese Translation +# Copyright © 1998, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 mate-media +# Distributed under the same licence as the mate-media package +# Nuno Ferreira , 1998. +# Duarte Loreto , 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010. +# + + + + +========== pt_BR.po ========== +# Brazilian Portuguese translation of MATE Media. +# Copyright (C) 2001-2009 the MATE Media authors. +# This file is distributed under the same license as the mate-media package. +# Gustavo Maciel Dias Vieira , 2001. +# Evandro Fernandes Giovanini , 2002-2003. +# Raphael Higino , 2004-2005. +# Licio Fernando Nascimento da Fonseca , 2006. +# Leonardo Ferreira Fontenelle , 2006, 2008, 2009. +# Guilherme de S. Pastore , 2006. +# Og Maciel , 2007. +# Fabrício Godoy , 2008. +# Djavan Fagundes , 2008. +# Jonh Wendell , 2009. +# Henrique P Machado , 2009. +# André Gondim , 2009, 2010. +# + + + + +========== ro.po ========== +# translation of mate-media.HEAD.ro.po to Română +# translation of mate-media.HEAD.ro.po to +# Romanian translation for mate-media. +# Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc. +# Mugurel Tudor , 2002-2003, 2004, 2005, 2006, 2007. +# Adi Roiban https://launchpad.net/~adiroiban, 2008, 2009 +# Lucian Adrian Grijincu , 2010. + + + + +========== ru.po ========== +# translation of mate-media.master.ru.po to Russian +# Russian translation of mate-media +# Copyright (C) 1998-2008, 2010 Free Software Foundation, Inc. +# +# Valek Filippov , 2000-2002. +# Dmitry G. Mastrukov , 2002-2004. +# Andrew W. Nosenko , 2003. +# Leonid Kanter , 2004, 2005, 2006. +# Valery Inozemtsev , 2009. +# Alexandre Prokoudine , 2009. +# Yuri Kozlov , 2010. +# Max Valianskiy 1998-99 +# Sergey Panov 1999 + + + + +========== rw.po ========== +# translation of mate-media to Kinyarwanda. +# Copyright (C) 2005 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# Steve Murphy , 2005 +# Steve performed initial rough translation from compendium built from translations provided by the following translators: +# Philibert Ndandali , 2005. +# Viateur MUGENZI , 2005. +# Noëlla Mupole , 2005. +# Carole Karema , 2005. +# JEAN BAPTISTE NGENDAHAYO , 2005. +# Augustin KIBERWA , 2005. +# Donatien NSENGIYUMVA , 2005.. +# + + + + +========== si.po ========== +# translation of si.po to Sinhala +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Danishka Navin , 2007. + + + + +========== sk.po ========== +# translation of sk.po to Slovak +# MATE-media Slovak translation +# Copyright (C) 2000-2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc. +# +# $Id: sk.po,v 1.69 2006/01/31 00:07:02 thomasvs Exp $ +# +# Stanislav Visnovsky , 2000-2002,2003, 2004. +# Stanislav Višňovský , 2002. +# Stanislav Visnovsky , 2003. +# Marcel Telka , 2005. +# Peter Tuharsky , 2007. + + + + +========== sl.po ========== +# Slovenian translations for mate-media. +# Copyright (C) 2005-2007 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# +# Andraž Tori , 2000. +# Matjaž Horvat , 2006. +# Matic Žgur , 2007. +# Matej Urbančič , 2007 - 2010. +# + + + + +========== sq.po ========== +# Përkthimi i mesazheve të mate-media në shqip +# Copyright (C) 2003-2006, 2008 Free Software Foundation, Inc. +# This file is distributed under the same license as the mate-media package. +# +# Laurent Dhima , 2003-2006, 2008. + + + + +========== sr.po ========== +# Serbian translation of mate-media +# Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007. +# +# This file is distributed under the same license as the mate-media package. +# +# Maintainer: Данило Шеган +# Reviewed on 2005-08-08 by: Игор Несторовић " +# Translated on 2006-01-31 by: Слободан Д. Средојевић +# Милош Поповић , 2010. +# + + + + +========== sr@latin.po ========== +# Serbian translation of mate-media +# Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007. +# +# This file is distributed under the same license as the mate-media package. +# +# Maintainer: Danilo Šegan +# Reviewed on 2005-08-08 by: Igor Nestorović " +# Translated on 2006-01-31 by: Slobodan D. Sredojević +# Miloš Popović , 2010. +# + + + + +========== sv.po ========== +# Swedish messages for mate-media. +# Copyright (C) 1998-2010 Free Software Foundation, Inc. +# Martin Wahlen , 1998, 1999. +# Andreas Hyden , 2000. +# Christian Rose , 2001, 2002, 2003, 2004, 2005, 2006. +# Daniel Nylander , 2006, 2007, 2008, 2009, 2010. +# +# $Id: sv.po,v 1.99 2006/12/22 21:34:08 dnylande Exp $ +# + + + + +========== ta.po ========== +# translation of mate-media.master.ta.po to Tamil +# translation of media.po to +# Tamil translation of Tamil Mate Media 2.4. +# Copyright (C) 2003, 2004, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +# +# +# Dinesh Nadarajah , 2003. +# Jayaradha N , 2004. +# Felix , 2006. +# Dr.T.Vasudevan , 2007, 2009. +# I. Felix , 2008, 2009. +# Dr,T,Vasudevan , 2010. + + + + +========== te.po ========== +# translation of te.po to Telugu +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Krishna Babu K , 2008, 2009, 2010. + + + + +========== th.po ========== +# Thai translation of mate-media. +# This file is distributed under the same license as the mate-media package. +# Copyright (C) 2003-2010 Free Software Foundation, Inc. +# Sawit Kasuriya , 2003. +# Sapa , 2003, 2004. +# Chanchai Junlouchai , 2004. +# Supranee Thirawatthanasuk , 2004. +# Theppitak Karoonboonyanan , 2005-2010. +# + + + + +========== tk.po ========== +# Turkmen translation of mate-media +# Copyright (C) 2004 Free Software Foundation +# Copyright (C) 2004 Gurban Mühemmet Tewekgeli and +# Kakilik - Turkmen free software developers community +# This file is distributed under the terms of GNU General Public License (GPL) +# Gurban Mühemmet Tewekgeli , 2004. +# +# + + + + +========== tr.po ========== +# Turkish translation of mate-media. +# Copyright (C) 2000,2001,2002,2003, 2004, 2005 Free Software Foundation, Inc. +# Fatih Demir , 2000. +# Arman Aksoy (Armish) , 2003. +# Baris Cicek , 2004, 2005. +# +# Baris Cicek , 2008, 2009. + + + + +========== ug.po ========== +# Uyghur translations for mate-media. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Sahran , 2010-09-22. +# + + + + +========== uk.po ========== +# Ukrainian translation of the mate-media module. +# Copyright (C) 1999 Free Software Foundation, Inc. +# Yuri Syrota 1999 +# Maxim Dizumanenko , 2002-2007 +# +# wanderlust , 2009. + + + + +========== vi.po ========== +# Vietnamese translation for MATE Media. +# Copyright © 2009 MATE i18n Project for Vietnamese. +# Nguyễn Thái Ngọc Duy , 2002. +# Clytie Siddall , 2005-2009. +# + + + + +========== wa.po ========== +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2002 Free Software Foundation, Inc. +# Pablo Saratxaga , 2002. +# Pablo Saratxaga , 2004. +# Lucyin Mahin , 2004. +# + + + + +========== xh.po ========== +# Xhosa translation of mate-media +# Copyright (C) 2005 Canonical Ltd. +# This file is distributed under the same license as the mate-media package. +# Translation by Canonical Ltd with thanks to +# Translation World CC in South Africa, 2005. +# + + + + +========== zh_CN.po ========== +# Simplified Chinese translation of mate-media +# Copyright (C) 2002, 2003, 2004, 2007, 2009, 2010 Free Software Foundation, Inc. +# Dillion Chen , 1999 +# Replaced by He Qiangqiang , 2002 +# Sun G11n , 2002 +# Funda Wang , 2003,2004. +# Yang Zhang , 2007. +# Deng Xiyue , 2009. +# Hinker Liu , 2009. +# Aron Xu , 2010. +# + + + + +========== zh_HK.po ========== +# Chinese (Hong Kong) translation of mate-media. +# Copyright (C) 1999-2007 Free Software Foundation, Inc. +# Fernando , 1999. +# Abel Cheung , 2001-2003. +# Woodman Tuen , 2004-2007. +# Chao-Hsiung Liao , 2008. +# +# + + + + +========== zh_TW.po ========== +# Chinese (Taiwan) translation of mate-media. +# Copyright (C) 1999-2007 Free Software Foundation, Inc. +# Fernando , 1999. +# Abel Cheung , 2001-2003. +# Woodman Tuen , 2004-2007. +# Chao-Hsiung Liao , 2008. +# +# + + + + diff --git a/po/gu.po b/po/gu.po new file mode 100644 index 0000000..83a43eb --- /dev/null +++ b/po/gu.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ankit Patel , 2009 +# Milan Savaliya , 2016 +# sweta , 2008, 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Gujarati (http://wiki.ukui.org/trans/gu/)\n" +"Language: gu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "સાઉન્ડ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "સાઉન્ડ વોલ્યુમ અને સાઉન્ડ ઘટનાઓને બદલો" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "અવાજનું પ્રમાણ નિયંત્રક" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ડેસ્કટોપ વોલ્યુમ નિયંત્રણ ને બતાવો" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "આ કાર્યક્રમ ની આવૃત્તિ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "ડિબગ ઍનેબલ કરો" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "અવાજનું પ્રમાણ નિયંત્રક" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "જવાબ આપવા સાઉન્ડ સિસ્ટમ માટે રાહ જોઇ રહ્યા છે" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "શરૂઆતી પાંનુ" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "અવાજનું પ્રમાણ નિયંત્રક" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ઈનપુટ" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "આઉટપુટ" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "માઇક્રોફોન નો અવાજ" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "અવાજનું પ્રમાણ નિયંત્રક" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ડાબું" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "જમણું" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "રિઅર" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "આગળ" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "ન્યૂનત્તમ" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "મહત્તમ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "સંતુલન (_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ફાડે (_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ઉપવુફર (_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Unamplified" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "૧૦૦%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "મૂંગુ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "રૂપરેખા (_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "જોડનાર (_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "નિષ્ક્રિય થયેલ છે" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u આઉટપુટ" +msgstr[1] "%u આઉટપુટો" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ઈનપુટ" +msgstr[1] "%u ઈનપુટો" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "નામ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "સાઉન્ડ ની અસરો" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "સચેત વોલ્યુમ (_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "આઉટપુટ વોલ્યુમ (_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "હાર્ડવેર" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "રૂપરેખાંકિત કરવા માટે ઉપકરણને પસંદ કરો (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "પસંદ થયેલ ઉપકરણ માટે સુયોજનો:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ઇનપુટ વોલ્યુમ (_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ઇનપુટ સ્તર:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "સાઉન્ડ ઇનપુટ માટે ઉપકરણ ને પસંદ કરો (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "સાઉન્ડ આઉટપુટ માટે ઉપકરણ ને પસંદ કરો (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "કાર્યક્રમો" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "કાર્યક્રમ અત્યારે ઓડિયો ને ચલાવતુ અથવા રેકોર્ડ કરતુ નથી." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "સાઉન્ડ પસંદગીઓ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "સાઉન્ડ નથી" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "બિલ્ટ-ઇન" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "કસ્ટમ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ઘટના સાઉન્ડની ચકાસણી કરી રહ્યા છે" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "મૂળભૂત" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "થીમ માંથી" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "પ્રકાર" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "સાઉન્ડ થીમ (_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "સચેત સાઉન્ડ ને પસંદ કરો (_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "વિન્ડો અને બટન સાઉન્ડો ને સક્રિય કરો (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "સાઉન્ડ પસંદગીઓ ને શરૂ કરવામાં નિષ્ફળ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "મૂંગુ (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "સાઉન્ડ પસંદગીઓ (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/he.po b/po/he.po new file mode 100644 index 0000000..d372bc1 --- /dev/null +++ b/po/he.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Gil 'Dolfin' Osher , 2002, 2003 +# Yaron Shahrabani , 2012 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Hebrew (http://wiki.ukui.org/trans/he/)\n" +"Language: he\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "קול" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "שינוי עצמת השמע והצלילים המשויכים לאירועים" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "בקרת עצמה" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "הצגת בקרת עצמה בשולחן העבודה" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "גרסת יישום זה" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — יישומון בקרת העצמה של MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ממתין לתגובת מערכת הקול" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "עמוד התחלה" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — בקר העצמה של MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "קלט" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "פלט" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "עצמת המיקרופון" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "עצמת פלט השמע" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — יישומון בקרת העצמה של MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "שמאלה" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ימינה" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "אחורי" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "קדמי" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "מזערי" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "מרבי" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_איזון:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_עמעום:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_סאבוופר" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "לא מוגבר" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "השתק" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_פרופיל:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "מח_בר:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "מכובה" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "פלט אחד" +msgstr[1] "%u פלטים" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "קלט אחד" +msgstr[1] "%u קלטים" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "שם" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "בדיקת רמקולים עבור %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "בדיקת הרמקולים" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "אפקטים קוליים" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "עצמת צליל ה_התראה:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "עצמת ה_פלט:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "חומרה" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "בחירת התקן לה_גדיר:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "הגדרות עבור ההתקן הנבחר:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "עצמת ה_קלט:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "רמת הקלט:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ב_חירת התקן להקלטת קול:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ב_חירת התקן להשמעת הצלילים:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "יישומים" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "אין אף יישום המנגן או מקליט כעת צלילים." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "העדפות קול" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ללא צלילים" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "מובנה" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "התאמה אישית" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "בדיקת צליל אירוע" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "בררת מחדל" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "מערכת נושא" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "סוג" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_ערכת צלילים:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "ב_חירת צליל התראה:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "הפעלת צלילים עבור _חלונות ולחצנים" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "עצור" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "בדיקה" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "כשל בהפעלת העדפות השמע: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_השתק" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "העדפות_ קול" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/hi.po b/po/hi.po new file mode 100644 index 0000000..60552a2 --- /dev/null +++ b/po/hi.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# G Karunakar , 2003 +# Rajesh Ranjan , 2009 +# Rajesh Ranjan , 2005, 2006, 2008, 2009 +# Ravishankar Shrivastava , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Hindi (http://wiki.ukui.org/trans/hi/)\n" +"Language: hi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ध्वनि" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ध्वनि आवाज और ध्वनि घटना बदलें" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "आवाज निर्धारक नियंत्रक" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "डेस्कटॉप आवाज नियंत्रण दिखाएँ" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "इस अनुप्रयोग का संस्करण" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "आवाज निर्धारक नियंत्रक" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ध्वनि तंत्र की प्रतिक्रिया के लिए प्रतीक्षारत" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "आरंभ पेज" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "आवाज निर्धारक नियंत्रक" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "इनपुट" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "आउटपुट" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "आवाज निर्धारक नियंत्रक" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "बायाँ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "दाहिना" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "पिछला" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "अग्र भाग" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "न्यूनतम" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "अधिकतम" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "संतुलन (_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "धुंधला (_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "उप वूफ़र (_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "बिना संवर्द्धित" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "मौन" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "प्रोफाइल (_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "कनेक्टर (_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "अक्षम" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u आउटपुट" +msgstr[1] "%u आउटपुट" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u इनपुट" +msgstr[1] "%u इनपुट" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "नाम" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ध्वनि प्रभाव" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "आवाज चेताएँ (_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "आउटपुट आवाज (_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "हार्डवेयर" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "विन्यस्त करने के लिए कोई युक्ति चुनें (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "चयनित युक्ति के लिए सेटिंग:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "इनपुट आवाज (_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "इनपुट स्तर:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ध्वनि इनपुट के लिए कोई युक्ति चुनें (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ध्वनि आउटपुट के लिए कोई युक्ति चुनें (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "अनुप्रयोग" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "कोई अनुप्रयोग अभी ध्वनि बजा या रिकार्ड नहीं कर रहा है." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ध्वनि वरीयता" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "कोई ध्वनि नहीं" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "अंतर्निर्मित" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "अनुकूलित" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "घटना ध्वनि जाँच रहा है" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "डिफ़ॉल्ट" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "प्रसंग से" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "क़िस्म" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ध्वनि प्रसंग (_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "कोई चेतावनी ध्वनि चुनें (_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "विंडो और बटन ध्वनि सक्रिय करें (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ध्वनि वरीयता आरंभ करने में विफल: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "मूक (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ध्वनि वरीयता (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/hr.po b/po/hr.po new file mode 100644 index 0000000..d508abf --- /dev/null +++ b/po/hr.po @@ -0,0 +1,443 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ivan Branimir Skoric , 2016 +# Ivica Kolić , 2013 +# Elvis M. Lukšić , 2016 +# Tomislav Krznar , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Croatian (http://wiki.ukui.org/trans/hr/)\n" +"Language: hr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zvuk" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Promijeni glasnoću zvuka i zvučne događaje" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Nadzor glasnoće" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Prikaži nadzor glasnoće na radnoj površini" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Inačica ove aplikacije" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Omogući otkrivanje pogrešaka" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— MATE programčić za nadzor glasnoće" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Zvučni sustav nije dostupan" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Čekanje na odziv zvučnoga sustava" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Pozadinski zvučni sustav" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Početna stranica" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE nadzor glasnoće" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ulaz" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Izlaz" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Glasnoća mikrofona" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Glasnoća izlaznog zvuka" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE programčić za nadzor glasnoće" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Lijevo" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Desno" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Straga" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Sprijeda" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Najniže" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Najviše" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Ravnoteža:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Snižavanje:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Niskofrekventni zvučnik:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Nepojačano" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Bez zvuka" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Sp_ojnik:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Onemogućeno" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u izlaz" +msgstr[1] "%u izlaza" +msgstr[2] "%u izlaza" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ulaz" +msgstr[1] "%u ulaza" +msgstr[2] "%u ulaza" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Ime" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Provjera zvučnika za %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Provjeri zvučnike" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Zvučni učinci" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Glasnoća upozorenja: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Glasnoća izlaza:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardver" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "O_daberi uređaj za prilagodbu:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Postavke za odabrani uređaj:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Ulazna glasnoća:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Ulazna razina:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "O_daberi uređaj za ulaz zvuka:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "O_daberi uređaj za izlaz zvuka:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplikacije" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Nijedna aplikacija trenutno ne izvodi niti snima zvuk." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Zvučne prilagodbe" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Bez zvukova" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Ugrađeno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Prilagođeno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Provjera zvuka događaja" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Zadano" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Iz teme" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Vrsta" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Zvučna _tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "O_daberi zvuk upozorenja:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Omogući _zvukove prozora i gumba" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Zaustavi" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Provjeri" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Nije uspjelo pokretanje zvučnih prilagodbi: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Bez zvuka" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Zvučne prilagodbe" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Nepoznato" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Sprijeda lijevo" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Sprijeda desno" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Sprijeda po sredini" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Niskofrekventno" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Straga lijevo" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Straga desno" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Straga po sredini" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Sprijeda lijevo od sredine" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Sprijeda desno od sredine" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Bočno lijevo" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Bočno desno" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Gore sprijeda lijevo" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Gore sprijeda desno" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Gore sprijeda po sredini" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Gore po sredini" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Gore straga lijevo" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Gore straga desno" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Gore straga po sredini" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/hu.po b/po/hu.po new file mode 100644 index 0000000..af5d0a9 --- /dev/null +++ b/po/hu.po @@ -0,0 +1,448 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Andras Timar , 2001-2003 +# Emese Kovacs , 2002 +# Falu.Me, 2015 +# Falu , 2015 +# Gabor Kelemen , 2004-2010 +# Gergely Nagy , 2001 +# KAMI KAMI , 2015 +# Laszlo Dvornik , 2004 +# Mate ORY , 2006 +# Miklos Szel , 2000 +# Rezső Páder , 2014,2017 +# Szabolcs Ban , 1999-2000 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Rezső Páder \n" +"Language-Team: Hungarian (http://wiki.ukui.org/trans/hu/)\n" +"Language: hu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Hang" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Hangerő és hangesemények módosítása" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Hangerőszabályzó" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Hangerőszabályzó megjelenítése" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Ezen alkalmazás verziója" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Hibakeresés engedélyezése" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " – MATE hangerőszabályzó kisalkalmazás" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "A hangrendszer nem elérhető" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Várakozás a hangrendszer válaszára" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Hangrendszer háttér" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Indulóoldal" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " – MATE hangerőszabályzó" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Bemenet" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Kimenet" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofon hangereje" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Hangkimenet hangereje" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE hangerőszabályzó kisalkalmazás" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Bal" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Jobb" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Hátul" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Elöl" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Egyensúly:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Elhalás:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Mélysugárzó:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Erősítetlen" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Némítás" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Csatlakozó:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Tiltva" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u kimenet" +msgstr[1] "%u kimenet" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u bemenet" +msgstr[1] "%u bemenet" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Név" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Hangszóróteszt ehhez: %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Hangszórók tesztelése" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Hangeffektusok" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Riasztás hangereje: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Kimeneti hangerő: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardver" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Válassza ki a beállítandó eszközt:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Kiválasztott eszköz beállításai:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "B_emeneti hangerő: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Bemeneti szint:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Válasszon _hangbemeneti eszközt:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Válasszon ha_ngkimeneti eszközt:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Alkalmazások" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Jelenleg nincs hangot lejátszó vagy felvevő alkalmazás." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Hangbeállítások" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Nincsenek hangok" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Beépített" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Egyéni" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Eseményhang tesztelése" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Alapértelmezett" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Témából" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Típus" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Hang_téma:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Válasszon _riasztáshangot:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Ablak- és gombhangok engedélyezése" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Leállítás" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Teszt" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "A Hangbeállítások indítása meghiúsult: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Némítás" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Hangbeállítások" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Némítva itt:" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Ismeretlen" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Monó" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Bal első" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Jobb első" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Közép első" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Bal hátsó" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Jobb hátsó" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Közép hátső" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Első közép-bal" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Első közép-jobb" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Bal szélső" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Jobb szélső" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Elöl balra fent" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Elöl jobbra fent" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Elöl középen fent" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Felső közép" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Hátul balra fent" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Hátul jobbra fent" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Hátul középen fent" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Sztereó" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/hy.po b/po/hy.po new file mode 100644 index 0000000..b79adaa --- /dev/null +++ b/po/hy.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Siranush , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-20 15:44+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Armenian (http://wiki.ukui.org/trans/hy/)\n" +"Language: hy\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Հնչել" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Փոխել ձայնայնի ուժգնությունը և ձայնային իրադարձությունները" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Ձայնի բարձրության կարգավորիչ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Ցույց տալ աշխատասեղանի ուժգնության հսկողությունը" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Այս դիմումի տարբերակը" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Միացնել վրիպազերծը" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— MATE ՈՒժգնության Վերահսկիչ Ապլետ" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Ձայնային համակարգը մատչելի չէ" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Սպասում ձայնային համակարգի արձագանքի համար" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Ձայնային համակարգի վերջ" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Գործարկման էջը" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— MATE ՈՒժգնության Վերահսկիչ" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Մուտքագրում" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Ելք" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Խոսափողի ուժգնություն" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Խոսափողի Ելքի ՈՒժգնություն" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE ՈՒժգնության Վերահսկիչ Ապլետ" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Ձախ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Աջ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Թիկունք" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Ճակատ" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Նվազագույն" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Առավելագույն" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Հաշվեկշիռ։" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Մոռացվել:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Ենթաձայն։" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Չուժեղացած" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Անջատել ձայնը" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Պրոֆիլ։" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Միակցիչ:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Անջատված" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Արդյունք" +msgstr[1] "%u Արդյունքներ" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Մուտք" +msgstr[1] "%u Մուտքեր" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Անուն" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Թեստավորման համար Խոսնակներ %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Թեստավորման խոսնակներ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Ձայնային Էֆեկտներ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_ՈՒժգնության ազդանշան։" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Ելքային ուժգնություն։" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Ապարատային միջոցներ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Ընտրեք սարքի կարգավորումները:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Ընտրված սարքերի համար պարամետրեր․" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Մուտքային ուժգնություն։" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr " Մուտքային մակարդ․" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Ձայնային մուտքի համար Ընտրել սարք" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Ձայնային ելքի համար ընտրել սարք" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Դիմումներ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ոչ մի դիմում ներկայումս չէ նվագել կամ արձանագրել ձայն։" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Ձայնի Նախընտրանքներ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Հնչյուններ չկան" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Ներկառուցված" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Սովորություն" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Ձայնի փորձարկման ազդանշան" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Հիմնական" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Թեմայից" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Տիպ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Ձայնային _թեման․" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Ընտրել ձայնի ազդանշանը․" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Ակտիվացնել _պատուհանը և ձայնի կոճակը" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Դադար" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Թեստ" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Չհաջողվեց սկսել Ձայնային Նախընտրանքները: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Անջատել ձայնը" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Ձայնաին Նախընտրանքներ" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Անհայտ" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Մոնո" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Առջև Ձախ" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Առջև Աջ" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Առջև Կենտրոն" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Հետև Ձախ" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Հետև Աջ" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Հետև Կենտրոն" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Առջևի Ձախ կենտրոնի" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Առջևի Աջ կենտրոնի" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Ձախ Կողմ" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Աջ Կողմ" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Վերին Առջևի Ձախ" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Վերին Առջևի Աջ" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Վերին Առջևի ՁԿենտրոն" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Վերև կենտրոն" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Վերև Հետև Ձախ" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Վերև Հետև Աջ" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Վերև Հետև Կենտրոն" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Ստերեո" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Շրջապատել 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Շրջապատել 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Շրջապատել 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Շրջապատել 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Շրջապատել 7.1" diff --git a/po/id.po b/po/id.po new file mode 100644 index 0000000..c98e058 --- /dev/null +++ b/po/id.po @@ -0,0 +1,436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Bervianto Leo Pratama , 2017 +# Willy Sudiarto Raharjo , 2014,2016 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Bervianto Leo Pratama \n" +"Language-Team: Indonesian (http://wiki.ukui.org/trans/id/)\n" +"Language: id\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Suara" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Ubah volume suara dan peristiwa suara" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Pengatur Volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Tampilkan kendali volume desktop" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versi dari aplikasi ini" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Aktifkan mode debug" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Aplet Kendali Volume MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistem suara tidak tersedia" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Menunggu sistem suara merespon" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Sistem suara backend" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Halaman awalan" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " - Kendali Volume MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Masukan" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Keluaran" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volume Mikrofon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volume Keluaran Suara" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Applet Kontrol Volume MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Kiri" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Kanan" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Belakang" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Depan" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fade:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Tak diperkuat" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Bisu" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ko_nektor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Dimatikan" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Keluaran" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Masukan" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nama" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Pengujian Speaker bagi %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Uji Speaker" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efek Suara" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume peringat_an:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "V_olume keluaran:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Perangkat keras" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Pili_h perangkat untuk ditata:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Tatanan bagi perangkat yang dipilih:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume _masukan:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Aras masukan:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Pili_h perangkat bagi masukan suara:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Pili_h perangkat bagi keluaran suara:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplikasi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Tak ada aplikasi yang kini memainkan atau merekam suara." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferensi Suara" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Tanpa suara" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Bawaan" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Bebas" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Menguji suara peristiwa" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Bawaan" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Dari tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Jenis" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema suara:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Pili_h suara waspada:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Aktifkan suara _jendela dan tombol" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Tes" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Gagal memulai Preferensi Suara: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Bisu" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferensi _Suara" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Bisukan di" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Tidak diketahui" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Kiri Depan" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Tengah Depan" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Tengah Depan" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Belakang Kiri" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Belakang Kanan" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Belakang Tengah" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Kiri atau Tengah Depan" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Kanan atau Tengah Depan" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Sisi Kiri" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Sisi Kanan" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Depan Atas Kiri" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Depan Atas Kanan" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Depat Atas Tengah" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Atas Tengah" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Belakang Atas Kiri" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Belakang Atas Kanan" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Belakang Atas Tengah" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/is.po b/po/is.po new file mode 100644 index 0000000..b40133f --- /dev/null +++ b/po/is.po @@ -0,0 +1,433 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 13:02+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Icelandic (http://wiki.ukui.org/trans/is/)\n" +"Language: is\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Hljóð" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Útgáfa þessa forrits" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Til vinstri" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Til hægri" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Hámark" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Óvirkt" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Heiti" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Forrit" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Sérsniðið" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Sjálfgefið" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Óþekktur" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/it.po b/po/it.po new file mode 100644 index 0000000..3fabe31 --- /dev/null +++ b/po/it.po @@ -0,0 +1,443 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alessio Frusciante , 2004 +# Giuseppe Pignataro (Fasbyte01) , 2017 +# Giuseppe Pignataro (Fasbyte01) , 2015-2016 +# Marco Bartolucci , 2016 +# Milo Casagrande , 2009, 2010 +# Salvatore Isaja , 2004, 2005 +# Stefano Karapetsas , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Giuseppe Pignataro (Fasbyte01) \n" +"Language-Team: Italian (http://wiki.ukui.org/trans/it/)\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Audio" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Regola il volume dei suoni e i suoni associati agli eventi" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Regolazione volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Mostra la regolazione del volume" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versione dell'applicazione" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Abilita debug" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Applet Regolazione volume" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistema sonoro non disponibile" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Attesa una risposta dal sistema audio" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Backend sistema sonoro" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Pagina di avvio" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Regolazione volume" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ingresso" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Uscita" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volume microfono" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volume di uscita" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Applet Regolazione volume di MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Sinistra" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Destra" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Retro" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Fronte" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimo" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Massimo" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Bilanciamento:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Dissolvenza:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "Sub_woofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Non amplificato" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Muto" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profilo:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnettore:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Disabilitato" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u uscita" +msgstr[1] "%u uscite" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ingresso" +msgstr[1] "%u ingressi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nome" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Test altoparlanti per %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Test altoparlanti" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Effetti sonori" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume di _avviso: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "V_olume di uscita: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Scegliere un dispositivo da configurare:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Impostazioni per il dispositivo selezionato:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume d'_ingresso: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Livello d'ingresso:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Scegliere un dispositivo per l'ingresso audio:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Scegliere un dispositivo per l'uscita audio:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Applicazioni" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Nessuna applicazione sta riproducendo dell'audio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferenze dell'audio" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Nessun suono" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Integrato" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizzato" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Test evento sonoro" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predefinito" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Dal tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema sonoro:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Scegliere un suono di avviso:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "A_bilitare i suoni di finestre e pulsanti" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Ferma" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Avvio di «Preferenze dell'audio» non riuscito: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Escludere audio" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Preferenze audio" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Silenziato a" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Sconosciuto" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Anteriore sinistro" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Anteriore desto" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Frontale centrale" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Posteriore sinistro" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Posteriore destro" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Posteriore centrale" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Anteriore sinistro del centro" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Anteriore destro del centro" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "lato sinistro" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Lato destro" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Alto Frontale Sinistra" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Alto Frontale Destra" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Alto Frontale Centrale" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Alto Centrale" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Alto Posteriore Sinistro" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Alto Posteriore Destro" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Alto Posteriore Centrale" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/ja.po b/po/ja.po new file mode 100644 index 0000000..daaa098 --- /dev/null +++ b/po/ja.po @@ -0,0 +1,444 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# ABE Tsunehiko, 2017 +# Akira TAGOH , 2000 +# ふうせん Fu-sen. | BALLOON a.k.a. Fu-sen., 2014 +# Eiichiro ITANI , 1999 +# Hideki Yamane , 2010 +# Hideki Yamane , 2010 +# Ikuru K , 2015 +# KAMAGASAKO Masatoshi , 2003 +# Mitsuru Oka <95i44@is.kochi-u.ac.jp>, 1998 +# Satoru SATOH , 2006 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Japanese (http://wiki.ukui.org/trans/ja/)\n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "サウンド" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "音量や音のイベントを変更します" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "音量調節ツール" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "デスクトップの音量を調節するアプレットです" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "このアプリケーションのバージョンを表示する" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "デバッグを有効にする" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE 音量調節アプレット" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "サウンドシステムが無効です" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "サウンドシステムからの応答待ちです" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "サウンドシステムバックエンド" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "起動時に開くページを指定する" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — 音量調節ツール" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "入力" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "出力" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "マイクのボリューム" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "出力の音量" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE 音量調整アプレット" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "左" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "右" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "リア" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "フロント" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "最小" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "最大" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "バランス(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "フェード(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "サブウーファー(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "増幅しない" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "ミュート" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "プロファイル(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "コネクター(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "無効" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u 出力" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u 入力" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "名前" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s でスピーカのテスト" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "スピーカのテスト" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "サウンドの効果" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "警告音の音量(_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "出力の音量(_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ハードウェア" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "設定するデバイスを選択してください(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "選択したデバイスの設定:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "入力の音量(_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "入力レベル:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "サウンドの入力デバイスを選択してください(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "サウンドの出力デバイスを選択してください(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "アプリケーション" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "現在、再生または録音しているアプリケーションはありません" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "サウンドの設定" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "なし" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "インストール済" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "その他" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "イベント音のテスト中" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "デフォルト" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "テーマ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "種類" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "サウンドのテーマ(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "警告音を選択してください(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "ウィンドウとボタンの音を鳴らす(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "停止します" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "テスト" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "サウンドの設定を起動できませんでした: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "ミュート(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "サウンドの設定(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "不明" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "モノラル" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "左前方" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "右前方" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "中央前方" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "左後方" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "右後方" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "中央後方" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "中央の左前方" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "中央の右前方" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "左側" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "右側" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "上左前方" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "上右前方" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "上中央前方" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "上中央" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "上左後方" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "上右後方" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "上中央後方" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "ステレオ" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "サラウンド 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "サラウンド 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "サラウンド 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "サラウンド 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "サラウンド 7.1" diff --git a/po/jv.po b/po/jv.po new file mode 100644 index 0000000..54d64d6 --- /dev/null +++ b/po/jv.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ngalim Siregar , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-22 02:12+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Javanese (http://wiki.ukui.org/trans/jv/)\n" +"Language: jv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Swara" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Ngowahi volume swara lan prastawa swara" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Kontrol Volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Kontrol Volume" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Kontrol Volume" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Kontrol Volume" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "dingerteni" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ka.po b/po/ka.po new file mode 100644 index 0000000..ff4ebf5 --- /dev/null +++ b/po/ka.po @@ -0,0 +1,435 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alexander Didebulidze , 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Georgian (http://wiki.ukui.org/trans/ka/)\n" +"Language: ka\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ხმის კონტროლი" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ხმის კონტროლი" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ხმის კონტროლი" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ხმის კონტროლი" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "სტოპ" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/kk.po b/po/kk.po new file mode 100644 index 0000000..5f18bf7 --- /dev/null +++ b/po/kk.po @@ -0,0 +1,435 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Baurzhan Muftakhidinov , 2017 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 14:45+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Kazakh (http://wiki.ukui.org/trans/kk/)\n" +"Language: kk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Дыбыс" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Дыбыс деңгейін басқару" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Жұмыс үстелінің дыбыс деңгейін басқаруды көрсету" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Осы бағдарламасының нұсқасы" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Жөндеуді іске қосу" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE дыбысты басқару апплеті" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Дыбыстық қызметі қолжетерсіз" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Дыбыстық қызметінің жауабын күту" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Дыбыстық қызметінің түрі" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Іске қосылу парағы" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE дыбыстарын басқару" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Кіріс" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Шығыс" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Микрофон деңгейі" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Дыбыстың шығыс деңгейі" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE дыбысты басқару апплеті" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Сол жақ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Оң жақ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Артқы" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Алды" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Минимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Максимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Баланс:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "Сөндіру" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Сабвуфер:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Күшейтусіз" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Дыбысын өшіру" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "Проф_иль:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ба_йланыстырушы:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Сөндірулі" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u шығыс" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u кіріс" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Аты" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s үшін динамикті тексеру" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Динамиктерді тексеру" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Дыбыс эффектілері" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Ескертудің дыбыс деңгейі: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Шығыс деңгейі: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Құрылғы" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Баптау үшін құры_лғыны таңдаңыз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Таңдалған құрылғы баптаулары:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Кіріс дыбысы:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Кіріс деңгейі:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Дыбыс жазатын құры_лғыны таңдаңыз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Дыбыс шығаратын құры_лғыны таңдаңыз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Қолданбалар" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Қазір дыбысты ойнатып не жазып тұрған қолданбалар жоқ." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Дыбыс баптаулары" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Дыбыстар жоқ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Құрамындағы" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Таңдауыңызша" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Оқиға дыбысын сынау" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Бастапқы" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Темадан" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Түрі" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Дыбыстар _темасы:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Ес_керту дыбысын таңдау:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Терезе және батырмалар дыбыстарын іске қосу" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Тоқтату" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Сынау" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Дыбыстарды басқаруды іске қосу мүмкін емес: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "Дыбысын _басу" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Дыбы_с баптаулары" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Белгісіз" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Моно" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Алдыңғы сол жақ" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Алдыңғы оң жақ" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Алдыңғы ортаңғы" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Артқы сол жақ" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Артқы оң жақ" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Артқы ортаңғы" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Алдыңғы ортаңғы сол жақ" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Алдыңғы ортаңғы оң жақ" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Стерео" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/kn.po b/po/kn.po new file mode 100644 index 0000000..f971744 --- /dev/null +++ b/po/kn.po @@ -0,0 +1,435 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# shankar , 2008, 2009, 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Kannada (http://wiki.ukui.org/trans/kn/)\n" +"Language: kn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ಧ್ವನಿ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ಧ್ವನಿಯ ಪ್ರಮಾಣ ಹಾಗು ಧ್ವನಿಗಳನ್ನು ಸನ್ನಿವೇಶಗಳನ್ನು ಬದಲಾಯಿಸಿ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ಗಣಕತೆರೆಯ ಧ್ವನಿ ಪ್ರಮಾಣದ ನಿಯಂತ್ರಣವನ್ನು ತೋರಿಸು" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "ಈ ಅನ್ವಯದ ಆವೃತ್ತಿ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ಧ್ವನಿಯ ವ್ಯವಸ್ಥೆಯ ಪ್ರತಿಕ್ರಿಯೆಗಾಗಿ ಕಾಯಲಾಗುತ್ತಿದೆ" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "ಆರಂಭಿಕ ಪುಟ" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ಇನ್‌ಪುಟ್‌" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "ಔಟ್‌ಪುಟ್" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ಧ್ವನಿ ಪ್ರಮಾಣ ನಿಯಂತ್ರಣ" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ಎಡ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ಬಲ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "ಹಿಂಬದಿಯ" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "ಎದುರಿನ" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "ಕನಿಷ್ಟ" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "ಗರಿಷ್ಟ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ಸಮತೋಲನ(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ಮಬ್ಬು(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ಸಬ್‌ವೂಫರ್(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "ಆಂಪ್ಲಿಫೈ ಮಾಡದೆ ಇರುವ" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "ಮೂಕವಾಗಿಸು" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "ಪ್ರೊಫೈಲ್‌(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "ಜೋಡಕ(_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "ಅಶಕ್ತಗೊಂಡ" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ಹೆಸರು" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ಧ್ವನಿ ಪರಿಣಾಮಗಳು" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "ಸೂಚನೆಯ ಧ್ವನಿ ಪ್ರಮಾಣ(_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "ಔಟ್‌ಪುಟ್ ಧ್ವನಿಯ ಪ್ರಮಾಣ(_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ಯಂತ್ರಾಂಶ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "ಸಂರಚಿಸಲು ಒಂದು ಸಾಧನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ(_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "ಆಯ್ದ ಸಾಧನಗಳಿಗಾಗಿನ ಸಿದ್ಧತೆಗಳು:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ಇನ್‌ಪುಟ್ ಧ್ವನಿಯ ಪ್ರಮಾಣ(_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ಇನ್‌ಪುಟ್ ಹಂತ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ಧ್ವನಿಯ ಇನ್‌ಪುಟ್‌ಗಾಗಿ ಒಂದು ಸಾಧನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ(_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ಧ್ವನಿಯ ಔಟ್‌ಪುಟ್‌ಗಾಗಿ ಒಂದು ಸಾಧನವನ್ನು ಆಯ್ಕೆ ಮಾಡಿ(_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "ಅನ್ವಯಗಳು" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ಯಾವ ಅನ್ವಯವೂ ಆಡಿಯೊವನ್ನು ಚಲಾಯಿಸುತ್ತಿಲ್ಲ ಅಥವ ರೆಕಾರ್ಡು ಮಾಡುತ್ತಿಲ್ಲ." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ಧ್ವನಿಯ ಆದ್ಯತೆಗಳು" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ಯಾವುದೆ ಶಬ್ಧವಿಲ್ಲ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "ಒಳನಿರ್ಮಿತ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "ನನ್ನಿಚ್ಛೆಯ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ಸನ್ನಿವೇಶದ ಧ್ವನಿಗಳನ್ನು ಪರೀಕ್ಷಿಸಲಾಗುತ್ತಿದೆ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ಪೂರ್ವನಿಯೋಜಿತ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "ಪರಿಸರವಿನ್ಯಾಸದಿಂದ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "ಬಗೆ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ಧ್ವನಿಯ ಪರಿಸರವಿನ್ಯಾಸ(_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "ಒಂದು ಎಚ್ಚರಿಕೆ ಸೂಚನೆಯ ಶಬ್ಧವನ್ನು ಆಯ್ಕೆ ಮಾಡು(_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "ವಿಂಡೊ ಹಾಗು ಗುಂಡಿಯ ಶಬ್ಧಗಳನ್ನು ಶಕ್ತಗೊಳಿಸು(_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ಧ್ವನಿಯ ನಿಯಂತ್ರಣಾ ಆದ್ಯತೆಗಳನ್ನು ಆರಂಭಿಸುವಲ್ಲಿ ವಿಫಲತೆ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "ಮೂಕಗೊಳಿಸು(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ಧ್ವನಿಯ ಆದ್ಯತೆಗಳು(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ko.po b/po/ko.po new file mode 100644 index 0000000..a1efaed --- /dev/null +++ b/po/ko.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Changwoo Ryu , 1998, 2002, 2003, 2004, 2006, 2008, 2009, 2010 +# jaekwon.park , 2014 +# 박정규(Jung-Kyu Park) , 2014 +# 박정규(Jung-Kyu Park) , 2016-2017 +# Seong-ho Cho , 2015 +# Updated by Young-Ho, Cha , 2000, 2006, 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: 박정규(Jung-Kyu Park) \n" +"Language-Team: Korean (http://wiki.ukui.org/trans/ko/)\n" +"Language: ko\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "사운드" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "사운드 볼륨과 사운드 이벤트를 바꿉니다" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "볼륨 조정" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "데스크톱 볼륨 조정 표시" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "이 프로그램의 버전" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "디버깅 활성화" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— 마테 볼륨 조정 애플릿" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "사운드 시스템 사용이 불가능합니다. " + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "사운드 시스템이 응답하기를 기다립니다" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "사운드 시스템 백엔드" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "시작 페이지" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— 마테 볼륨 조정" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "입력" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "출력" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "마이크 볼륨" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "사운드 출력 볼륨" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "마테 볼륨 조정 애플릿" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "왼쪽" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "오른쪽" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "후방" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "전방" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "최소" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "최대" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "균형(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "페이드(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "서브우퍼(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "증폭하지 않음" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "조용히" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "프로파일(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "커넥터(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "사용하지 않음" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u개 출력" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u개 입력" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "이름" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s에 대한 스피커 테스트" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "스피커 테스트" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "사운드 효과" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "경보 볼륨(_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "출력 볼륨(_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "하드웨어" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "설정할 장치를 선택하십시오(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "선택한 장치의 설정:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "입력 볼륨(_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "입력 단계:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "사운드 입력 장치를 선택하십시오(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "사운드 출력 장치를 선택하십시오(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "프로그램" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "현재 오디오를 재생하거나 녹음하는 프로그램이 없습니다." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "사운드 기본 설정" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "소리 없음" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "내장" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "사용자 지정" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "이벤트 소리 테스트" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "기본값" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "테마에서" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "종류" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "사운드 테마(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "경보 사운드 선택(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "창 및 단추 사운드 사용(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "중지" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "테스트" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "사운드 기본 설정 시작에 실패: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "조용히(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "사운드 기본 설정(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "음소거" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "알 수 없음" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "모노" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "전방 좌측" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "전방 우측" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "전방 중앙" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "후방 좌측" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "후방 우측" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "후방 중앙" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "전방 중앙 좌측" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "전방 중앙 우측" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "측면 좌측" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "측면 우측" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "상단 전방 좌측" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "상단 전방 우측" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "상단 전방 중앙" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "상단 중앙" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "상단 후방 좌측" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "상단 후방 우측" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "상단 후방 중앙" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "스트레오" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "서라운드 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "서라운드 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "서라운드 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "서라운드 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "서라운드 7.1" diff --git a/po/ku.po b/po/ku.po new file mode 100644 index 0000000..fd0aa02 --- /dev/null +++ b/po/ku.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# erdalronahi , 2005, 2006 +# erdalronahi , 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Kurdish (http://wiki.ukui.org/trans/ku/)\n" +"Language: ku\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Kontrolkirina Deng" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Kontrolkirina Deng" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Kontrolkirina Deng" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Kontrolkirina Deng" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Taybet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Rawestîne" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ku_IQ.po b/po/ku_IQ.po new file mode 100644 index 0000000..45720a1 --- /dev/null +++ b/po/ku_IQ.po @@ -0,0 +1,435 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Haval Abdulkarim , 2014 +# Rasti K5 , 2016-2017 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 20:27+0000\n" +"Last-Translator: Rasti K5 \n" +"Language-Team: Kurdish (Iraq) (http://wiki.ukui.org/trans/ku_IQ/)\n" +"Language: ku_IQ\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "دەنگ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "وەشانی ئەم نەرمەواڵەیە" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "چالاککردنی هەڵەدۆزین" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "دەنگی سیستەم بەردەست نییە" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "چەپ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ڕاست" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ناو" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "گاریگەرییەکانی دەنگ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ڕەقەکاڵا" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "نەرمەواڵەکان" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "بێ دەنگ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "جۆر" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "وەستاندن" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "تاقیکردنەوە" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "نەناسراو" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ky.po b/po/ky.po new file mode 100644 index 0000000..666c900 --- /dev/null +++ b/po/ky.po @@ -0,0 +1,436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# chingis, 2013 +# chingis, 2013 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 15:40+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Kyrgyz (http://wiki.ukui.org/trans/ky/)\n" +"Language: ky\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Үн" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Үн көлөмүн жана үн окуяларын өзгөртүү" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Көлөм жөндөгүчү" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Иш столунун көлөм жөндөгүчүн көрсөтүү" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Бул тиркеменин версиясы" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE көлөм жөндөгүчү апплети" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Үй барагы" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE көлөм жөндөгүчү" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Кириш" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Чыгыш" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Микрофон көлөмү" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Үндүн чыгыш көлөмү" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — MATE көлөм жөндөгүчү апплети" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Сол" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Оң" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Арткы" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Алдыңкы" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Төмөнкү чеги" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Жогорку чеги" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Балансы:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "Ө_чүүсү:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Сабвуфери:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Күчтүү эмес" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Үнүн өчүрүү" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Профили:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Өчүрүлгөн" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u чыгыш" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u кириш" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Аты" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Динамиктерди текшерүү" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Үн эффектилери" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Кабарландыруу көлөмү: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Чыгыш көлөмү: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Жабдуулар" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Ырастаганга түзүлүштү _тандаңыз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Тандалган түзүлүштүн ырастоолору:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Кириш көлөмү: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Кириш деңгээли:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Үн киришинин түзүлүшүн _тандаңыз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Үн чыгышынын түзүлүшүн _тандаңыз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Тиркемелер" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Учурда, аудиону ойнотуп же жаздырып жаткан тиркеме жок." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Үн ырастоолору" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Үндөрсүз" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Башка" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Жарыяланбас" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Темадан" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Түрү" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Үн _темасы:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Кабарландыруу үнүн _тандоо:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Терезе жана кнопка үндөрүн аракетке келтирүү" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Токтотуу" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Текшерүү" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Үн ырастоолорун жүргүзүү мүмкүн эмес: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "Үнүн ө_чүрүү" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Ү_н ырастоолору" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/lt.po b/po/lt.po new file mode 100644 index 0000000..fb7725c --- /dev/null +++ b/po/lt.po @@ -0,0 +1,447 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Audrius Meskauskas, 2015 +# aurisc4 , 2010 +# Džiugas Grėbliūnas , 2014,2017 +# Gintautas Miliauskas , 2007 +# Justina Klingaitė , 2005 +# Moo, 2015-2017 +# Rimas Kudelis , 2009 +# Žygimantas Beručka , 2003-2006, 2009, 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Džiugas Grėbliūnas \n" +"Language-Team: Lithuanian (http://wiki.ukui.org/trans/lt/)\n" +"Language: lt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" +"%100<10 || n%100>=20) ? 1 : 2);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Garsas" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Keisti garsį ir susieti garsus su įvykiais" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Garsio valdymas" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Rodyti darbalaukio garsio valdiklį" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Programos versija" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Įgalinti derinimą" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE garsio valdymo įtaisas" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Garso sistema nepasiekiama" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Laukiama garsų sistemos atsakymo" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Garso sistemos vidinė pusė" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Pradžios puslapis" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE garsio valdymas" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Įvestis" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Išvestis" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofono garsis" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Išvesties garsis" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE garsio valdymo įtaisas" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Kairė" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dešinė" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Galas" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Priekis" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimumas" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimumas" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balansas:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Perėjimas:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Žemų dažnių garsiakalbis:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Nesustiprintas" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Nutildyti" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profilis:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "J_ungtis:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Išjungta" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u išvestis" +msgstr[1] "%u išvestys" +msgstr[2] "%u išvesčių" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u įvestis" +msgstr[1] "%u įvestys" +msgstr[2] "%u įvesčių" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Vardas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s garsiakalbių tikrinimas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Tikrinti garsiakalbius" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Garso efektai" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Įspėjimo _garsis: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Išvesties _garsis: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Įrenginiai" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Pasi_rinkite derintiną įrenginį:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Pasirinkto įrenginio nustatymai:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Į_vesties garsis: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Įvesties lygis:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Pasi_rinkite garso įvesties įrenginį:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Pasi_rinkite garso išvesties įrenginį:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programos" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Šiuo metu jokia programa negroja ir neįrašinėja garso." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Garso nustatymai" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Jokių garsų" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Įtaisytasis" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Pasirinktinis" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Bandomasis įvykio signalas" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Numatytasis" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Iš temos" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipas" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Garsų _tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Pasi_rinkite įspėjimo garsą:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Įjungti _langų ir mygtukų garsus" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stabdyti" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Tikrinti" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Nepavyko atverti garso nustatymų: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Nutildyti" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Garso nustatymai" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Nutildyta ties" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Nežinoma" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Priekinis kairysis" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Priekinis dešinysis" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Priekinis vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Užpakalinis kairysis" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Užpakalinis dešinysis" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Užpakalinis vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Priekinis kairysis arba vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Priekinis dešinysis arba vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Šoninis kairysis" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Šoninis dešinysis" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Viršutinis priekinis kairysis" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Viršutinis priekinis dešinysis" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Viršutinis priekinis vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Viršutinis vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Viršutinis užpakalinis kairysis" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Viršutinis užpakalinis dešinysis" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Viršutinis užpakalinis vidurinis" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "„Surround“ 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "„Surround“ 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "„Surround“ 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "„Surround“ 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "„Surround“ 7.1" diff --git a/po/lv.po b/po/lv.po new file mode 100644 index 0000000..027cdc1 --- /dev/null +++ b/po/lv.po @@ -0,0 +1,443 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Artis Trops , 2001 +# Imants Liepiņš , 2013 +# Pēteris Krišjānis , 2010 +# Raivis Dejus , 2006, 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Latvian (http://wiki.ukui.org/trans/lv/)\n" +"Language: lv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : " +"2);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Skaņa" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Mainīt skaņas līmeni un skaņas dažādiem notikumiem" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Skaļuma kontrole" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Parādīt darbvirsmas skaņas kontroli" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Šīs lietotnes versija" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Skaļuma kontroles sīklietotne" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Gaida skaņu sistēmas atbildi" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Startēšanās lapa" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Skaļuma kontrole" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ievads" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Izvads" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofona skaļums" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Izejas skaņas līmenis" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — MATE Skaļuma kontroles sīklietotne" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Pa kreisi" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Pa labi" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Aizmugure" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Priekšpuse" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimums" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimums" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanss:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Pakāpeniski klusināt:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Zemfrekvences reproduktors:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Nepastiprināts" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Apklusināt" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profili:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Sa_vienotājs:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Deaktivizēts" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u izvadkanāls" +msgstr[1] "%u izvadkanāli" +msgstr[2] "%u izvadkanālu" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ievadkanāls" +msgstr[1] "%u ievadkanāli" +msgstr[2] "%u ievadkanālu" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nosaukums" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Skaļruņu pārbaude %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Pārbaudīt skaļruņus" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Skaņas efekti" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Trauksmes skaļums: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Izvada skaļums: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Aparatūra" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "I_zvēlieties ierīci, kuru konfigurēt:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Izvēlētās ierīces iestatījumi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Ievada skaļums: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Ievada līmenis:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Iz_vēlieties ierīci skaņas ievadei:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Iz_vēlieties ierīci skaņas izvadei:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Lietotnes" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Neviena lietotne šobrīd neatskaņo vai neieraksta audio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Skaņas iestatījumi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Skaņu nav" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Iebūvēta" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Pielāgots" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Pārbauda notikuma skaņu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Noklusētais" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "No tēmas" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Veids" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Skaņas _tēma:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "I_zvēlieties trauksmes skaņu:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Aktivizēt _logu un pogu skaņas" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Pārtraukt" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Pārbaudīt" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Neizdevās palaist skaņas iestatījumus: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Apklusināt" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Skaņas iestatījumi" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/mai.po b/po/mai.po new file mode 100644 index 0000000..4b69490 --- /dev/null +++ b/po/mai.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Rajesh Ranjan , 2009 +# Sangeeta Kumari , 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Maithili (http://wiki.ukui.org/trans/mai/)\n" +"Language: mai\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ध्वनि" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "आवाज निर्धारक" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "एहि अनुप्रयोग क' संस्करण" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "आवाज निर्धारक" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "आवाज निर्धारक" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "इनपुट" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "आउटपुट" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "आवाज निर्धारक" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "बामाँ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "दहिन्ना" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "मौन" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "अक्षम" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "नाम" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "अनुप्रयोग" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ध्वनि वरीयतासभ " + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "कोनो ध्वनि नहि" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "पसंदीदा" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "मूलभूत" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "प्रसंग सँ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "प्रकार" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "रोकू" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/mg.po b/po/mg.po new file mode 100644 index 0000000..4425313 --- /dev/null +++ b/po/mg.po @@ -0,0 +1,436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Malagasy (http://wiki.ukui.org/trans/mg/)\n" +"Language: mg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Fanamafisam-peo" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Fanamafisam-peo" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Fanamafisam-peo" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Fanamafisam-peo" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Safidy" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Mijanona" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/mk.po b/po/mk.po new file mode 100644 index 0000000..dd8f10c --- /dev/null +++ b/po/mk.po @@ -0,0 +1,442 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Arangel Angov , 2003, 2006, 2008 +# Ivan Stojmirov , 2003 +# Jovan Naumovski , 2006, 2007, 2008 +# Misa Popovic , 2003 +# Vladislav Bidikov , 2003 +# Арангел Ангов , 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Macedonian (http://wiki.ukui.org/trans/mk/)\n" +"Language: mk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Поставување на јачина на звукот" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Поставување на јачина на звукот" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Почетна страница" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Поставување на јачина на звукот" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Поставување на јачина на звукот" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Сопствено" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Стандардно" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Запри" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ml.po b/po/ml.po new file mode 100644 index 0000000..d65df32 --- /dev/null +++ b/po/ml.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ani Peter , 2006, 2007 +# FSF-India , 2003 +# Praveen Arimbrathodiyil , 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Malayalam (http://wiki.ukui.org/trans/ml/)\n" +"Language: ml\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ശബ്ദം" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ശബ്ദ വോള്യമും ശബ്ദ ഇവന്റുകളും മാറ്റുക" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ശബ്ദം ക്രമീകാരി" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "പണിയിട ശബ്ദ ക്രമീകാരി കാണിക്കുക" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "ഈ പ്രയോഗത്തിന്റെ പതിപ്പുകള്‍" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ശബ്ദം ക്രമീകാരി" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "മറുപടി നല്‍കുന്നതിനായി ശബ്ദ സിസ്റ്റത്തിനായി കാത്തിരിക്കുന്നു" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "പ്രാരംഭ താള്‍" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ശബ്ദം ക്രമീകാരി" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "നിവേശകം" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "ഫലം" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ശബ്ദം ക്രമീകാരി" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ഇടത്" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "വലത്" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "അവസാനം" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "മുന്നില്‍" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "കുറഞ്ഞ" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "കൂടിയ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_ബാലന്‍സ്:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_മങ്ങുക:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_സബ്‌വൂഫര്‍:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "അണ്‍ആംപ്ലിഫൈഡ്" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "നിശബ്ദമാക്കുക" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_പ്രൊഫൈല്‍:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "ക_ണക്ടര്‍:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "പ്രവര്‍ത്തനരഹിതം" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ഔട്ട്പുട്ട്" +msgstr[1] "%u ഔട്ട്പുട്ടുകള്‍" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ഇന്‍പുട്ട്" +msgstr[1] "%u ഇന്‍പുട്ടുകള്‍" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "പേര്" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ശബ്ദ പ്രവാഹങ്ങള്‍" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_മുന്നറിയിപ്പിനുള്ള ശബ്ദം: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_ഔട്ട്പുട്ട് വോള്യം: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ഹാര്‍ഡ്‌വെയര്‍" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "ക്രമീകരിക്കുവാനുള്ളൊരു ഡിവൈസ് _തെരഞ്ഞെടുക്കുക:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "തെരഞ്ഞെടുത്ത ഉപകരണത്തിന്റെ ക്രമീകരണങ്ങള്‍" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_ഇന്‍പുട്ട് വോള്യം: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ഇന്‍പുട്ട് ലവല്‍:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ശബ്ദ ഇന്‍പുട്ടിനുള്ള ഒരു ഡിവൈസ് _തെരഞ്ഞെടുക്കുക:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ശബ്ദ ഔട്ട്പുട്ടിനുള്ള ഒരു ഡിവൈസ് _തെരഞ്ഞെടുക്കുക:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "പ്രയോഗങ്ങള്‍" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ഓഡിയോ റിക്കോര്‍ഡ് ചെയ്യുന്നില്ല അല്ലെങ്കില്‍ നിലവില്‍ ഒരു പ്രയോഗവും പ്രവര്‍ത്തിക്കുന്നില്ല" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ശബ്ദ മുന്‍ഗണനകള്‍" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ശബ്ദം ഇല്ല" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "ബിള്‍ട്ടിന്‍" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "ഇച്ഛാനുസൃതം" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ഇവന്റ് ശബ്ദം പരീക്ഷിക്കുന്നു" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "സ്വഥവേ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "പ്രമേയത്തില്‍ നിന്നും" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "തരം" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ശബ്ദ _പ്രമേയം:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "മുന്നറിയിപ്പ് ശബ്ദം _തെരഞ്ഞെടുക്കുക:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_ജാലകം, ബട്ടണ്‍ ശബ്ദങ്ങള്‍ പ്രവര്‍ത്തന സജ്ജമാക്കുക" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ശബ്ദ മുന്‍ഗണനകള്‍ പ്രവര്‍ത്തിപ്പിക്കുന്നതില്‍ പരാജയപ്പെട്ടു: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_നിശബ്ദമാക്കുക" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_ശബ്ദ മുന്‍ഗണനകള്‍" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/mn.po b/po/mn.po new file mode 100644 index 0000000..fdc5c00 --- /dev/null +++ b/po/mn.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Sanlig Badral , 2003 +# Sanlig Badral , 2003, 2004, 2006 +# Sanlig Badral , 2003, 2004 +# Sukhochir , 2003 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Mongolian (http://wiki.ukui.org/trans/mn/)\n" +"Language: mn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Дууны хянагч" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Дууны хянагч" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Дууны хянагч" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Дууны хянагч" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Хэрэглэгч тод." + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Зогс" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/mr.po b/po/mr.po new file mode 100644 index 0000000..63381d7 --- /dev/null +++ b/po/mr.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Rahul Bhalerao , 2006 +# Sandeep Shedmake , 2008, 2009 +# sandeeps , 2009, 2010 +# Vaibhav S Dalvi , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Marathi (http://wiki.ukui.org/trans/mr/)\n" +"Language: mr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "आवाज" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "आवाज ध्वनिमान व आवाज घटना बदलवा" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ध्वनिमान नियंत्रण" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "डेस्कटॉप ध्वनिमान नियंत्रण दाखवा" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "या अनुप्रयोगची आवृत्ती" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— MATE ध्वनिमान नियंत्रण ॲप्लेट" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "आवाज प्रणालीच्या प्रतिसाद करीता प्रतिक्षा करत आहे" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "प्रारंभ पान" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— MATE ध्वनिमान नियंत्रण" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "इंपुट" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "आउटपुट" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "ध्वनीविस्तारक पातळी" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "ध्वनी पातळी" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "— MATE ध्वनिमान नियंत्रण ॲप्लेट" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "डावा" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "उजवा" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "पाठीमागचे" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "समारचे" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "किमान" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "कमाल" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "समतोल (_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "फुसट (_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "सबवूफर (_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "विनऍप्लिफाइड्" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "मंद" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "प्रोफाइल (_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "कनेक्टर (_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "अकार्यान्वीत" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u आऊटपुट" +msgstr[1] "%u आऊटपुटस्" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u इंपुट" +msgstr[1] "%u इंपुटस्" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "नाव" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s साठी ध्वनिक्षेपक तपासणी" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "चाचणी ध्वनिक्षेपक" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "आवाज प्रभाव" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "सतर्कता ध्वनिमान (_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "आउटपुट ध्वनिमान (_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "हार्डवेअर" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "संरचना करीता उपकरन नीवडा (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "निवडलेल्या साधन करीता संयोजना:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "इंपुट ध्वनिमान (_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "इंपुट स्तर:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "आवाज इंपुट करीता उपकरन नीवडा (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "आवाज आउटपुट करीता उपकरन निवडा (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "अनुप्रयोग" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "अनुप्रयोग वर्तमानक्षणी ऑडिओ चालवत किंवा रेकॉर्ड करत आहे." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "आवाज आवड निवड" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "आवाज नाही" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "अंतर्भूतीत" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "स्वपसंत" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "घटना आवाजची चाचणी करत आहे" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "पूर्वनिर्धारीत" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "दृष्य कल्पना पासून" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "प्रकार" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "आवाज योजना (_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "सतर्कता आवाज नीवडा (_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "पटल व बटन आवाज कार्यक्षम करा (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "बंद" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "चाचणी" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "आवाज आवड निवड सुरू करण्यास अपयशी: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "मंद करा (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "आवाज आवड निवड (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ms.po b/po/ms.po new file mode 100644 index 0000000..02fb475 --- /dev/null +++ b/po/ms.po @@ -0,0 +1,436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# abuyop , 2013-2015,2017 +# Hasbullah Bin Pit (sebol) , 2001, 2002, 2003 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Malay (http://wiki.ukui.org/trans/ms/)\n" +"Language: ms\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Bunyi" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Ubah volum bunyi dan peristiwa bunyi" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Kawalan Volum" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Tunjuk kawalan volum desktop" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versi aplikasi ini" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Benarkan nyahpepijat" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— Aplet Kawalan Volum MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistem bunyi tidak tersedia" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Menunggu sistem bunyi memberi respons" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Bahagian belakang sistem bunyi" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Halaman permulaan" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— Kawalan Volum MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Input" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Output" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volum Mikrofon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volum Output Bunyi" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Aplet Kawalan Volum MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Kiri" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Kanan" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Belakang" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Hadapan" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Imbangan:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Resap:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwufer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Tidak dikuatkan" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Senyap" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Pe_nyambung:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Dilumpuhkan" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Output" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Input" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nama" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Pengujian Pembesar Suara untuk %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Uji Pembesar Suara" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Kesan Bunyi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volum _amaran:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Volum _output:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Perkakasan" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "P_ilih peranti untuk dikonfigur:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Tetapan untuk peranti terpilih:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volum _input:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Aras input:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "P_ilih peranti untuk input bunyi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "P_ilih peranti untuk output bunyi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplikasi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Tiada aplikasi kini dimainkan atau merakam audio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Keutamaan Bunyi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Tiada bunyi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Terbina-dalam" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Suai" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Menguji bunyi peristiwa" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Lalai" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Dari tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Jenis" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema bunyi:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "P_ilih bunyi amaran:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Benarkan bunyi tetingkap dan _butang" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Henti" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Uji" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Gagal memulakan Keutamaan Bunyi: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "Sen_yap" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Keutamaan _Bunyi" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Tidak diketahui" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Hadapan Kiri" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Hadapan Kanan" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Hadapan Tengah" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Belakang Kiri" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Belakang Kanan" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Belakang Tengah" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Hadapan Kiri dari Tengah" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Hadapan Kanan dari Tengah" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Sisi Kiri" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Sisi Kanan" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Atas Hadapan Kiri" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Atas Hadapan Kanan" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Atas Hadapan Tengah" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Atas Tengah" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Atas Belakang Kiri" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Atas Belakang Kanan" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Atas Belakang Tengah" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Keliling 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Keliling 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Keliling 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Keliling 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Keliling 7.1" diff --git a/po/nb.po b/po/nb.po new file mode 100644 index 0000000..6fafe48 --- /dev/null +++ b/po/nb.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Allan Nordhøy , 2016-2017 +# Kenneth Jenssen , 2016 +# Terance Edward Sola , 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Allan Nordhøy \n" +"Language-Team: Norwegian Bokmål (http://wiki.ukui.org/trans/nb/)\n" +"Language: nb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Lyd" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Endre volum og tilegne lyder til hendelser" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volumkontroll" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Vis volumkontroll for skrivebordet" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versjon av dette programmet" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Skru på feilrettingsmodus" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " – MATE panelprogram for volumkontroll" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Lyd system er ikke tilgjengelig" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Venter på svar fra lydsystemet" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Bakstykke for lydsystem" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Oppstartside" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " – MATE volumkontroll" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Inngang" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Utgang" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volum for mikrofon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Utgangsvolum for lyd" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE-panelprogram for lydstyrkejustering" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Venstre" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Høyre" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Bak" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Front" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanse:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Utfasing:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Uten forsterkning" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Demp" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Tilkobli_ng:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Slått av" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u utgang" +msgstr[1] "%u utganger" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u inngang" +msgstr[1] "%u innganger" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Navn" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Test av høyttaler for %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Test høyttalere" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Lydeffekter" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volum for v_arsel: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Utgangsv_olum: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Maskinvare" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Velg en en_het som skal settes opp:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Innstillinger for valgt enhet:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volum for _inngang: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivå for inngang:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Velg en inngangsen_het for lyd:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Velg en utgangsen_het for lyd:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programmer" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ingen programmer spiller av eller tar opp lyd nå." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Brukervalg for lyd" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ingen lyder" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Innebygget" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Tilpasset" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Test lyd for hendelse" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Forvalgt" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Fra drakt" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Lyd_tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Velg en varslingslyd:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Aktiver lyder for knapper og _vinduer" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stopp" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Klarte ikke å starte brukervalg for lyd: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "De_mp" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Brukervalg for lyd" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Dempet klokken" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Ukjent" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Fremme til venstre" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Fremme til høyre" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Fremst i midten" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Bakerst til venstre" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Bakerst til høyre" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Bakerst i midten" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Fremme til venstre for sentrum" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Fremme til høyre for sentrum" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Venstre side" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Høyre side" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Øverst oppe til venstre" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Øverst oppe til høyre" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Øverst fremme i midten" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Øverst i midten" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Bak øverst til venstre" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Øverst oppe til høyre" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Lengst bak i midten" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Kringlyd 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Kringlyd 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Kringlyd 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Kringlyd 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Kringlyd 7.1" diff --git a/po/nds.po b/po/nds.po new file mode 100644 index 0000000..2d21c83 --- /dev/null +++ b/po/nds.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Nils-Christoph Fiedler , 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Low German (http://wiki.ukui.org/trans/nds/)\n" +"Language: nds\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Ton" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Luutstärkenoppasser" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Schrievdisk" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Verschoon vun düssem Programm" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Luutstärkenoppasser" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Startsiet" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Luutstärkenoppasser" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ingang" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Utgang" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Luutstärkenoppasser" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Links" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Rechts" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Achtern" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Vorn" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balance:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fade:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Still" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Togang:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Verbi_nner:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Deaktivert" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Utgav" +msgstr[1] "%u Utgaven" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Ingav" +msgstr[1] "%u Ingaven" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Naam" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Toneffekte" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Alarmluutstärke:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Utgavluutstärke:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Lööpwark wählen, dat _instellt werrn chall:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Instellen för dat utwählte Lööpwark:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Ingangluutstärke:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Ingavlevel:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programme" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Toninstellens" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Keene Töne" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Anpasst" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ereegniston utproberen" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Standard" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Ut Thema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Typ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Ton_thema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Alarmton _wählen:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Finster- un Knopptöne aktiveren" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Still" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Toninstellens" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/ne.po b/po/ne.po new file mode 100644 index 0000000..7d3212f --- /dev/null +++ b/po/ne.po @@ -0,0 +1,445 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Bishnu Adhikari , 2005 +# Ganesh Ghimire , 2005 +# Jaydeep Bhusal , 2005 +# Jyotshna Shrestha , 2005 +# Mahesh subedi , 2006 +# Nabin Gautam , 2007 +# Shiva Pokharel , 2005 +# Shiva Prasad Pokharel , 2006 +# Shyam Krishna Bal , 2006 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Nepali (http://wiki.ukui.org/trans/ne/)\n" +"Language: ne\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "भोल्युम नियन्त्रण" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "भोल्युम नियन्त्रण" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "भोल्युम नियन्त्रण" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "भोल्युम नियन्त्रण" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "बायाँ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "दायाँ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "अनुकूल" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "पूर्वनिर्धारित" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "रोक्नुहोस्" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "अज्ञात" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/nl.po b/po/nl.po new file mode 100644 index 0000000..01d9993 --- /dev/null +++ b/po/nl.po @@ -0,0 +1,447 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Dennis Smit , 2002 +# Huib Kleinhout , 2002 +# infirit , 2014-2015 +# Mario Blättermann , 2010 +# Pjotr , 2017 +# Reinout van Schouwen , 2009 +# Stef Pletinck , 2015 +# Taco Witte , 2002 +# Tino Meinen , 2002, 2007, 2008 +# Wing Tung Leung , 1999 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: Pjotr \n" +"Language-Team: Dutch (http://wiki.ukui.org/trans/nl/)\n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Geluid" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Geluidsvolume en systeemgeluiden wijzigen" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volumeregeling" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Volumeregeling tonen" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versie van deze toepassing" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Foutopsporing inschakelen" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Volumeregeling-programmaatje" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Geluidssysteem is niet beschikbaar" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Wachten op antwoord van het geluidssysteem" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Achtergronddienst van geluidssysteem" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Opstartpagina" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Volumeregeling" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Invoer" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Uitvoer" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Microfoonvolume" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Geluiduitvoervolume" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE Volumeregeling-programmaatje" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Links" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Rechts" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Achter" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Voor" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balans:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Wegsterven:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Onversterkt" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Dempen" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profiel:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Verbi_ndingsstuk:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Uigeschakeld" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u uitgang" +msgstr[1] "%u uitgangen" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ingang" +msgstr[1] "%u ingangen" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Naam" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Luidsprekerproef voor %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Luidsprekers beproeven" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Geluidseffecten" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Waarschuwingsvolume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Uitvoervolume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Apparatuur" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Kies een apparaat om te _configureren:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Instellingen voor het geselecteerde apparaat:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Invoervolume: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Invoerniveau:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Kies een apparaat voor geluids_invoer:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Kies een _apparaat voor geluidsuitvoer:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Toepassingen" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" +"Er is momenteel geen enkele toepassing geluid aan het opnemen of afspelen." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Geluidsvoorkeuren" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Geen geluiden" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Ingebouwd" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Aangepast" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Geluid beproeven" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Standaard" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Van thema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Geluids_thema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Kies een _waarschuwingsgeluid:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Scherm- en knop_geluiden inschakelen" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stoppen" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Proef" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Kon geluidsvoorkeuren niet starten: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Dempen" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Geluidsvoorkeuren" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Gedempt op" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Onbekend" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Linksvoor" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Rechtsvoor" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Middenvoor" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Linksachter" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Rechtsachter" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Midden achteraan" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Linksvoor van Midden" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Rechtsvoor van Midden" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Linkerzijkant" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Rechterzijkant" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Linksboven vooraan" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Rechtsboven vooraan" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Middenboven vooraan" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Midden boven" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Linksboven achter" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Rechtsboven achter" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Middenboven achteraan" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/nn.po b/po/nn.po new file mode 100644 index 0000000..7eb9ad0 --- /dev/null +++ b/po/nn.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Åsmund Skjæveland , 2003, 2004, 2005, 2006 +# Åsmund Skjæveland , 2010 +# Kjartan Maraas , 2001 +# Torstein Adolf Winterseth , 2009 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Norwegian Nynorsk (http://wiki.ukui.org/trans/nn/)\n" +"Language: nn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Lyd" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Endra lydvolum og lydar til hendingar" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volumkontroll" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Vis volumkontroll til skrivebordet" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versjon av dette programmet" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Volumkontroll" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Ventar på svar frå lydsystemet" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Oppstartsside" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Volumkontroll" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Inndata" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Utdata" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Volumkontroll" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Venstre" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Høgre" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Bak" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Front" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanse:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Utfasing" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Utan forsterking" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100 %" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Demp" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profilar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Tilkopli_ng" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Avslått" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u utgang" +msgstr[1] "%u utgangar" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u inngang" +msgstr[1] "%u ingangar" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Namn" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Lydeffektar" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "V_arselsvolum:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Utgangsv_olum" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Maskinvare" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Innstillingar til den valte eininga:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Inngangsvolum:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Inngangsnivå:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Program" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ingen program spelar av eller tek opp lyd for augneblikket." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Lydinnstillingar" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ingen lydar" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Innebygd" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Tilpassa" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testar hendingslyd" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Standard" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Frå tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Type" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Lyd_tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Klarte ikkje starte lydinnstillingar: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "De_mp" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Lydinn_stillingar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/oc.po b/po/oc.po new file mode 100644 index 0000000..ca5bd53 --- /dev/null +++ b/po/oc.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Cédric Valmary , 2016 +# Yannig Marchegay (Kokoyaya) , 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Occitan (post 1500) (http://wiki.ukui.org/trans/oc/)\n" +"Language: oc\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Son" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Contraròtle de volum" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Version d'aquesta aplicacion" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Contraròtle de volum" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Contraròtle de volum" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Sortida" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Contraròtle de volum" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquèrra" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dreita" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Avant" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balança :" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fondut :" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Caisson de bassa :" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Pas amplificat" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100 %" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Mut" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nnectador :" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Desactivat" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u sortida" +msgstr[1] "%u sortidas" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entradas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nom" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Material" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volum d'_entrada : " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivèl d'entrada :" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicacions" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferéncias del son" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Pas cap de son" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Predefinit" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Defaut" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipe" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Arrestar" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Testar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Mut" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconegut" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Costat dreit" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Naut Avant Esquèrra" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Naut Avant Dreit" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Naut Avant Centre" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Naut Central" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Naut Arrièr Esquèrra" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Naut Arrièr Dreit" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Naut Arrièr Central" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Esterèo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/or.po b/po/or.po new file mode 100644 index 0000000..3d31365 --- /dev/null +++ b/po/or.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Gora Mohanty , 2004, 2006 +# Manoj Kumar Giri , 2009, 2010 +# Parashar Nayak , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Oriya (http://wiki.ukui.org/trans/or/)\n" +"Language: or\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ଶବ୍ଦ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ଧ୍ୱନି ପ୍ରବଳତା ଏବଂ ଧ୍ୱନି ଘଟଣାଗୁଡ଼ିକ ପରିବର୍ତ୍ତନ କରନ୍ତୁ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ଡେସ୍କଟପ ଶବ୍ଦ ନିୟନ୍ତ୍ରଣ ଦର୍ଶାନ୍ତୁ" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "ଏହି ପ୍ରୟୋଗର ସଂସ୍କରଣ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ଧ୍ୱନି ତନ୍ତ୍ରର ଉତ୍ତରକୁ ଅପେକ୍ଷା କରିଛି" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "ଆରମ୍ଭ ପୃଷ୍ଠା" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ନିବେଶ" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "ନିର୍ଗମ" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ବାମ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ଡାହାଣ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "ଆଗ" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "ଆଗ" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "ସର୍ବନିମ୍ନ " + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "ସର୍ବାଧିକ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ସମତୁଲ (_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ଲିଭିବା (_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ଉପ ଉଫର (_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "ଅପରିବର୍ଦ୍ଧିତ" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "୧୦୦%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "ନିଶବ୍ଦ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "ରୂପରେଖ (_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "ସଂଯୋଜକ (_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "ନିଷ୍କ୍ରିୟ ହୋଇଗଲା" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ନିର୍ଗମ" +msgstr[1] "%u ନିର୍ଗମ" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ନିବେଶ" +msgstr[1] "%u ନିବେଶ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ନାମ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ଧ୍ୱନି ପ୍ରଭାବ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "ସତର୍କ ସୂଚନା ଧ୍ୱନୀ ପ୍ରବଳତା (_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "ନିର୍ଗମ ଧ୍ୱନି ତିବ୍ରତା (_O):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ହାର୍ଡ଼ୱେର" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "ବିନ୍ୟାସ ପାଇଁ ଗୋଟିଏ ଉପକରଣ ବାଛନ୍ତୁ (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "ବଚ୍ଛିତ ଉପକରଣ ପାଇଁ ବିନ୍ୟାସ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ନିବେଶ ଧ୍ୱନୀ ପ୍ରବଳତା (_I):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ନିବେଶ ସ୍ତର:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ଧ୍ୱନି ନିବେଶ ପାଇଁ ଗୋଟିଏ ଉପକରଣ ବାଛନ୍ତୁ (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ଧ୍ୱନି ନିର୍ଗମ ପାଇଁ ଗୋଟିଏ ଉପକରଣ ବାଛନ୍ତୁ (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "ପ୍ରୟୋଗ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ବର୍ତ୍ତମାନ କୌଣସି ପ୍ରୟୋଗ ଧ୍ୱନିକୁ ଚଲାଉନାହିଁ କିମ୍ବା ଅନୁଲିପି କରୁନାହିଁ।" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ଧ୍ୱନି ପସନ୍ଦ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ଶବ୍ଦ ନାହିଁ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "ସୁନିର୍ମିତ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "ଇଚ୍ଛାରୂପଣ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ଘଟଣା ଧ୍ୱନି ପରୀକ୍ଷା କରୁଅଛି" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ପୂର୍ବ ନିର୍ଦ୍ଧାରିତ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "ପ୍ରସଙ୍ଗରୁ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "ପ୍ରକାର" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ଧ୍ୱନି ପ୍ରସଙ୍ଗ (_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "ଗୋଟିଏ ସତର୍କ ଧ୍ୱନି ବାଛନ୍ତୁ (_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "ୱିଣ୍ଡୋ ଏବଂ ବଟନ ଧ୍ୱନିକୁ ସକ୍ରିୟ କରନ୍ତୁ (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ଧ୍ବନି ପ୍ରବଳତା ନିୟନ୍ତ୍ରକ ପସନ୍ଦ ଆରମ୍ଭ କରିବାରେ ବିଫଳ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "ମୂକ କରନ୍ତୁ (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ଧ୍ୱନୀ ପସନ୍ଦ (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/pa.po b/po/pa.po new file mode 100644 index 0000000..17e16e8 --- /dev/null +++ b/po/pa.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Amanpreet Singh Alam , 2008, 2009 +# Amanpreet Singh Alam , 2004 +# A S Alam , 2005, 2006, 2007, 2009, 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Panjabi (Punjabi) (http://wiki.ukui.org/trans/pa/)\n" +"Language: pa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ਸਾਊਂਡ" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ਸਾਊਂਡ ਵਾਲੀਅਮ ਅਤੇ ਸਾਊਂਡ ਈਵੈਂਟ ਬਦਲੋ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ਆਵਾਜ਼ ਕੰਟਰੋਲ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ਡੈਸਕਟਾਪ ਵਾਲੀਅਮ ਕੰਟਰੋਲ ਵੇਖੋ" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "ਇਸ ਐਪਲੀਕੇਸ਼ਨ ਦਾ ਵਰਜਨ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— ਗਨੋਮ ਵਾਲੀਅਮ ਕੰਟਰੋਲ ਐਪਲਿਟ" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ਸਾਊਂਡ ਸਿਸਟਮ ਦੇ ਜਵਾਬ ਦੀ ਉਡੀਕ ਜਾਰੀ" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "ਸ਼ੁਰੂਆਤੀ ਪੇਜ਼" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— ਗਨੋਮ ਵਾਲੀਅਮ ਕੰਟਰੋਲ" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ਇੰਪੁੱਟ" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "ਆਉਟਪੁੱਟ" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "ਮਾਈਕਰੋਫੋਨ ਵਾਲੀਅਮ" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "ਸਾਊਂਡ ਆਉਟਪੁੱਟ ਵਾਲੀਅਮ" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "— ਗਨੋਮ ਵਾਲੀਅਮ ਕੰਟਰੋਲ ਐਪਲਿਟ" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ਖੱਬਾ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ਸੱਜਾ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "ਪਿੱਛੇ" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "ਅੱਗੇ" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "ਘੱਟੋ-ਘੱਟ" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "ਵੱਧੋ-ਵੱਧ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "ਸੰਤੁਲਨ(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ਫੇਡ(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ਸਬਵੂਫ਼ਰ(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "ਬਿਨਾਂ-ਐਪਲੀਫਾਈ" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "ਚੁੱਪ" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "ਪਰੋਫਾਇਲ(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "ਕੁਨੈਕਟਰ(_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "ਆਯੋਗ" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ਆਉਟਪੁੱਟ" +msgstr[1] "%u ਆਉਟਪੁੱਟ" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ਇੰਪੁੱਟ" +msgstr[1] "%u ਇੰਪੁੱਟ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ਨਾਂ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s ਲਈ ਸਪੀਕਰ ਟੈਸਟਿੰਗ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "ਸਪੀਕਰ ਟੈਸਟ ਕਰੋ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ਸਾਊਂਡ ਪਰਭਾਵ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "ਚੇਤਾਵਨੀ ਵਾਲੀਅਮ(_A):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "ਆਉਟਪੁੱਟ ਵਾਲੀਅਮ(_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ਹਾਰਡਵੇਅਰ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "ਸੰਰਚਨਾ ਲਈ ਇੱਕ ਜੰਤਰ ਚੁਣੋ(_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "ਚੁਣੇ ਜੰਤਰ ਲਈ ਸੈਟਿੰਗ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ਇੰਪੁੱਟ ਵਾਲੀਅਮ(_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ਇੰਪੁੱਟ ਲੈਵਲ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ਸਾਊਂਡ ਇੰਪੁੱਟ ਲਈ ਇੱਕ ਜੰਤਰ ਚੁਣੋ(_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ਸਾਊਂਡ ਆਉਟਪੁੱਟ ਲਈ ਇੱਕ ਜੰਤਰ ਚੁਣੋ(_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "ਐਪਲੀਕੇਸ਼ਨ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ਕੋਈ ਵੀ ਐਪਲੀਕੇਸ਼ਨ ਇਸ ਸਮੇਂ ਆਡੀਓ ਚਲਾ ਜਾਂ ਰਿਕਾਰਡ ਨਹੀਂ ਕਰ ਰਹੀ ਹੈ।" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ਸਾਊਂਡ ਪਸੰਦ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ਸਾਊਂਡ ਨਹੀਂ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "ਬਿਲਟ-ਇਨ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "ਸੋਧ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ਟੈਸਟਿੰਗ ਈਵੈਂਟ ਸਾਊਂਡ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ਮੂਲ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "ਥੀਮ ਤੋਂ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "ਟਾਈਪ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ਸਾਊਂਡ ਥੀਮ(_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "ਇੱਕ ਚੇਤਾਵਨੀ ਸਾਊਂਡ ਚੁਣੋ(_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "ਵਿੰਡੋ ਅਤੇ ਬਟਨ ਸਾਊਂਡ ਚਾਲੂ(_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "ਰੋਕੋ" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "ਟੈਸਟ" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ਸਾਊਂਡ ਪਸੰਦ ਚਲਾਉਣ ਲਈ ਫੇਲ੍ਹ ਹੈ: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "ਚੁੱਪ(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ਸਾਊਂਡ ਪਸੰਦ(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/pl.po b/po/pl.po new file mode 100644 index 0000000..762fcfc --- /dev/null +++ b/po/pl.po @@ -0,0 +1,446 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Marcin Kralka , 2014 +# Paweł Bandura , 2016 +# Piotr Drąg , 2017 +# Piotr Strębski , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Polish (http://wiki.ukui.org/trans/pl/)\n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n" +"%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n" +"%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Dźwięk" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Zmiana głośności dźwięku i dźwięków zdarzeń" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Regulacja głośności" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Wyświetlanie regulacji głośności na pulpicie" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Wersja tego programu" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Włącz debugowanie" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Aplet regulacji głośności środowiska MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "System dźwięku jest niedostępny" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Oczekiwanie na odpowiedź systemu dźwięku" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Backend systemu dźwięku" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Strona początkowa" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Regulacja głośności w środowisku MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Wejście" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Wyjście" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Głośność mikrofonu" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Głośność dźwięku na wyjściu" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Aplet kontroli głośności MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Lewy" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Prawy" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Tył" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Przód" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "B_alans:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Natężenie głośności:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Głośnik niskotonowy:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Bez wzmocnienia" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Wyciszenie" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Złącze:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Wyłączone" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u wyjście" +msgstr[1] "%u wyjścia" +msgstr[2] "%u wyjść" +msgstr[3] "%u wyjść" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u wejście" +msgstr[1] "%u wejścia" +msgstr[2] "%u wejść" +msgstr[3] "%u wejść" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nazwa" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Testowanie głośnika %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testuj głośniki" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efekty dźwiękowe" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Głośność powiadomień: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Gł_ośność na wyjściu: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Sprzęt" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Wy_bór urządzenia do konfiguracji:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Ustawienia wybranego urządzenia:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Głośność na wejściu: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Poziom wejścia:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Wy_bór urządzenia do wejścia dźwięku:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Wy_bór urządzenia do wyjścia dźwięku:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programy" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Żaden program obecnie nie odtwarza lub nagrywa dźwięku." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferencje dźwięku" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Bez dźwięków" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Wbudowany" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Własne" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testowanie dźwięku zdarzenia" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Domyślne" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Z motywu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Typ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Motyw _dźwiękowy:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Wy_bór dźwięku powiadomienia:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Dźwięki o_kien i przycisków" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Zatrzymaj" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Przetestuj" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Uruchomienie preferencji dźwięku się nie powiodło: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Wyciszenie" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferencje _dźwięku" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Nieznany" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Przedni lewy" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Przedni prawy" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Przedni środkowy" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Niskotonowy" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Tylny lewy" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Tylny prawy" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Tylny środkowy" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Przedni lewy do środkowego" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Przedni prawy do środkowego" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Boczny lewy" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Boczny prawy" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Górny przedni lewy" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Górny przedni prawy" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Górny przedni środkowy" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Górny środkowy" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Górny tylni lewy" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Górny tylni prawy" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Górny tylni środkowy" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/pms.po b/po/pms.po new file mode 100644 index 0000000..5b9188d --- /dev/null +++ b/po/pms.po @@ -0,0 +1,434 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Randy Ichinose , 2016 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 22:29+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Piemontese (http://wiki.ukui.org/trans/pms/)\n" +"Language: pms\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Input" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Output" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Dësabilità" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Output" +msgstr[1] "%u Outputs" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Input" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nòm" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/pt.po b/po/pt.po new file mode 100644 index 0000000..61c7a9d --- /dev/null +++ b/po/pt.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Carlos Moreira, 2014,2017 +# José Vieira , 2017 +# Manuela Silva , 2016-2017 +# Sérgio Marques , 2012 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:12+0000\n" +"Last-Translator: José Vieira \n" +"Language-Team: Portuguese (http://wiki.ukui.org/trans/pt/)\n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Som" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Alterar volume do sistema e sons de eventos" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Controlo de volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Mostrar controlo de volume no ambiente de trabalho" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versão desta aplicação" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Ativar depuração" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Applet do controlo de volume MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistema de som não disponível" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "À espera da resposta do sistema de som" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Motor do sistema de som" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Página inicial" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Controlo de volume MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Saída" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volume do microfone" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volume da saída de som" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Applet do controlo de volume MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquerda" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Direita" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Atrás" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frente" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínimo" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Máximo" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanço:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Desvanecimento:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Sem amplificação" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Silenciar" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_netor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Inativo" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u saída" +msgstr[1] "%u saídas" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u entradas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nome" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Teste de altifalante para %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testar altifalantes" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efeitos sonoros" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume do _alerta: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "V_olume de saída: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Equipamento" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Escol_ha o dispositivo a configurar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Definições do dispositivo escolhido:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume de _entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nível de entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Escol_ha um dispositivo para a entrada de som:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Escol_ha um dispositivo para a saída de som:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicações" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Neste momento, não há aplicações a reproduzir ou gravar áudio." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferências de som" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Sem sons" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Incorporado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizar" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "A testar som do evento" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Pré-definido" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Do tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema de sons:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Escol_ha um som de alerta:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Ativar sons de janela_s e botões" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Parar" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Testar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Failed to start Sound Preferences: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Silenciar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferências de _som" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Silenciado em" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconhecido" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Frente à Esquerda" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Frente à Direita" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Frente ao Centro" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Atrás à Esquerda" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Atrás à Direita" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Atrás ao Centro" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Frente esquerda do centro" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Frente direita do centro" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Lado Esquerdo" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Lado Direito" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Frente à esquerda superior" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Frente à direita superior" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Frente ao centro superior" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Topo ao Centro " + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Atrás à esquerda superior" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Atrás à direita superior" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Atrás ao centro superior" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estéreo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/pt_BR.po b/po/pt_BR.po new file mode 100644 index 0000000..bcf02f0 --- /dev/null +++ b/po/pt_BR.po @@ -0,0 +1,451 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Aldo Oliveira , 2015 +# André Gondim , 2009, 2010 +# Djavan Fagundes , 2008 +# Eduardo Querido Name , 2017 +# Fabrício Godoy , 2008 +# Gilberto José Souza Coutinho , 2015 +# Guilherme de S. Pastore , 2006 +# Gustavo Maciel Dias Vieira , 2001 +# Henrique P. Machado , 2009 +# Jonh Wendell , 2009 +# leonardof , 2006, 2008, 2009 +# Licio Fernando Nascimento da Fonseca , 2006 +# Marcelo Ghelman , 2014,2017 +# Marcus Vinícius Marques, 2014 +# Og Maciel , 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Eduardo Querido Name \n" +"Language-Team: Portuguese (Brazil) (http://wiki.ukui.org/trans/pt_BR/)\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Som" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Alterar volume do áudio e sons de eventos" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Controle de volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Exibir controle de volume" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versão deste aplicativo" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Habilitar debug" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Miniaplicativo de controle de volume do MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistema de som não está disponível" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Esperando resposta do sistema de áudio" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Administração do sistema de som" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Página de início" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Controle de volume do MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Entrada" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Saída" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volume do microfone" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volume da saída de som" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Miniaplicativo de controle de volume do MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Esquerda" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Direita" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Traseiro" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Frontal" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Mínimo" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Máximo" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanço:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Desaparecimento:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Sem amplificação" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Mudo" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Perfil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "C_onector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Desabilitado" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u saída" +msgstr[1] "%u Saídas" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u entrada" +msgstr[1] "%u Entradas" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nome" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Testando alto-falantes para %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testar alto-falantes" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efeitos de som" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volume de _alerta: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Volume de _saída: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Escolha um dispositivo para configurar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Configurações para o dispositivo selecionado:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volume de _entrada: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nível de entrada:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Escolha um dispositivo para entrada de som:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Escolha um dispositivo para saída de som:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicativos" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Nenhum aplicativo está reproduzindo ou gravando áudio no momento." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferências de som" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Sem som" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Embutido" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizado" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testar eventos de som" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Padrão" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Do tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tipo" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema sonoro:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Escolha um som de alerta:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Habilitar som das janelas e botões" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Parar" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Teste" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Falhou ao iniciar as preferências de som: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Mudo" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferências de _som" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Emudecido, Atenuado " + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Desconhecido" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Frontal Esquerdo" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Frontal Direito" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Frontal Central" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Traseiro Esquerdo" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Traseiro Direito" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Traseiro Central" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Frontal Esquerdo do Centro" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Frontal Direito do Centro" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Lateral Esquerdo" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Lateral Direito" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Frontal Superior Esquerdo" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Frontal Superior Direito" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Frontal Superior Central" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Frontal Central" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Trasiero Superior Esquerdo" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Traseiro Superior Direito" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Traseiro Superior Central" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Estéreo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/ro.po b/po/ro.po new file mode 100644 index 0000000..a06039f --- /dev/null +++ b/po/ro.po @@ -0,0 +1,445 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Adi Roiban https://launchpad.net/~adiroiban, 2008, 2009 +# Daniel , 2015 +# Daniel , 2017 +# Lucian Adrian Grijincu , 2010 +# Mugurel Tudor , 2002-2003, 2004, 2005, 2006, 2007 +# Octi , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Daniel \n" +"Language-Team: Romanian (http://wiki.ukui.org/trans/ro/)\n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" +"2:1));\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sunet" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Schimbă volumul sunetului și sunetele evenimentelor" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Control volum" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Afișare control volum desktop" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versiunea aceastei aplicații" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Activează depanare" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Miniaplicație control volum MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Sistemul de sunet nu este disponibil" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Se așteatpă răspuns de la sistemul de sunet" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Furnizor din spate pentru sistemul de sunet" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Pagină pornire" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Control volum MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Intrare" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Ieșire" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volum microfon" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Volum sunet ieșire" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Control volum MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Stânga" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Dreapta" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Spate" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Față" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minim" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maxim" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanță:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Estompare:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Neamplificat" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Tăcut" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Co_nector:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Dezactivat" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ieșire" +msgstr[1] "%u ieșiri" +msgstr[2] "%u de ieșiri" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u intrare" +msgstr[1] "%u intrări" +msgstr[2] "%u de intrări" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nume" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Testare difuzoare pentru %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testează difuzoarele" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efecte sunet" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Volum _alertă:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "V_olum ieșire:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardware" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Ale_geți un dispozitiv pentru configurare:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Configurări pentru dispozitivul ales:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Volum _intrare:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Nivel intrare:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Ale_geți un dispozitiv pentru intrare sunet:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Ale_geți un dispozitiv pentru ieșire sunet:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Aplicații" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Nicio aplicație nu redă sau înregistrează sunete în acest moment." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferințe sunet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Niciun sunet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Integrat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizat" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testare eveniment sunet" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Implicit" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Din temă" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tip" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Temă sunet:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Ale_geți un sunet de alertă:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Acti_vare sunete pentru fereastră și butoane" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stop" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Testează" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Pornirea preferințelor sunet a eșuat: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Tăcut" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Preferințe _sunet" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Tăcut la" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Necunoscut" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Stânga față" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Dreapta față" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Centru față" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Efecte de frecvență joasă" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Stânga spate" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Dreapta spate" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Centru spate" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "La stânga de centru în față" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "La dreapta de centru în față" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Stânga lateral" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Dreapta lateral" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Stânga față sus" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Dreapta față sus" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Centru față sus" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Centru sus" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Stânga spate sus" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Dreapta spate sus" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Centru spate sus" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Sunet înconjurător 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Sunet înconjurător 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Sunet înconjurător 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Sunet înconjurător 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Sunet înconjurător 7.1" diff --git a/po/ru.po b/po/ru.po new file mode 100644 index 0000000..3a7acb6 --- /dev/null +++ b/po/ru.po @@ -0,0 +1,451 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Alexandre Prokoudine , 2009 +# Alexei Sorokin , 2014 +# Andrew W. Nosenko , 2003 +# Дмитрий Михирев, 2015 +# Dmitriy Kulikov , 2017 +# Leonid Kanter , 2004, 2005, 2006 +# theirix , 2015 +# Valery Inozemtsev , 2009 +# Yuri Kozlov , 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: Dmitriy Kulikov \n" +"Language-Team: Russian (http://wiki.ukui.org/trans/ru/)\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" +"%100>=11 && n%100<=14)? 2 : 3);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Звук" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Изменить громкость звука и связать звуки с событиями рабочего стола" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Регулятор громкости" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Показать регулятор громкости" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Версия этого приложения" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Включить отладку" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Апплет регулятора громкости MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Звуковая система недоступна" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Ожидание ответа звуковой подсистемы" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Бэкэнд звуковой системы" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Домашняя страница" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Регулятор громкости MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Вход" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Выход" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Громкость микрофона" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Громкость звука" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Апплет регулятора громкости MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Левый" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Правый" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Задний" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Передний" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Минимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Максимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Баланс" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "Затухание:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "Сабвуфер" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr " Неусиленный" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Приглушить" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Профиль:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Канал:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Выключено" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u выход" +msgstr[1] "%u выхода" +msgstr[2] "%u выходов" +msgstr[3] "%u выходов" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u вход" +msgstr[1] "%u входа" +msgstr[2] "%u входов" +msgstr[3] "%u входов" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Название" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Проверка динамиков для %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Проверить динамики" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Звуковые события" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Громкость _уведомлений: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Громкость звука: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Устройства" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Выберите настраиваемое устройство:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Параметры выбранного устройства:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Громкость _записи: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Уровень записи:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Выберите устройство для записи звука:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "В_ыберите устройство для вывода звука:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Приложения" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "В настоящий момент приложения не проигрывают и не записывают звук." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Параметры звука" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Без звуков" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Встроенная" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Другой" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Тестовый звуковой сигнал" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "По умолчанию" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Из темы" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Тип" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Тема звуков:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Выберите звук уведомления:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Включить звуковые уведомления о действиях с окнами и нажатии кнопок" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Остановить" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Проверить" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Не удалось запустить диалог настройки параметров звука: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Приглушить" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "П_араметры звука" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Отключен" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Неизвестный" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Моно" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Передний левый" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Передний правый" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Фронтальный" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Н/Ч" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Задний левый" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Задний правый" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Задний центральный" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Передний левый или центральный" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Передний правый или центральный" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Боковой левый" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Боковой правый" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Верхний передний левый" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Верхний передний правый" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Верхний передний центральный" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Верхний центральный" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Верхний задний левый" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Верхний задний правый" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Верхний задний центральный" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Стерео" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Объёмный звук 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Объёмный звук 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Объёмный звук 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Объёмный звук 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Объёмный звук 7.1" diff --git a/po/rw.po b/po/rw.po new file mode 100644 index 0000000..9ae516b --- /dev/null +++ b/po/rw.po @@ -0,0 +1,440 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Augustin KIBERWA , 2005 +# Carole Karema , 2005 +# JEAN BAPTISTE NGENDAHAYO , 2005 +# Noëlla Mupole , 2005 +# Philibert Ndandali , 2005 +# Steve Murphy , 2005 +# Viateur MUGENZI , 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Kinyarwanda (http://wiki.ukui.org/trans/rw/)\n" +"Language: rw\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Guhagarara" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/sc.po b/po/sc.po new file mode 100644 index 0000000..efc335b --- /dev/null +++ b/po/sc.po @@ -0,0 +1,434 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Fabrizio Pedes , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:52+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Sardinian (http://wiki.ukui.org/trans/sc/)\n" +"Language: sc\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Sonu" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Muda volùmene e eventos de su sonu" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +msgid " — UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +msgid " — UKUI Volume Control" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +msgid "UKUI Volume Control Applet" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/si.po b/po/si.po new file mode 100644 index 0000000..97ada39 --- /dev/null +++ b/po/si.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Danishka Navin , 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Sinhala (http://wiki.ukui.org/trans/si/)\n" +"Language: si\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "හඬ පාලකය" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "හඬ පාලකය" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "හඬ පාලකය" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "හඬ පාලකය" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "රිසිකළ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ප්‍රකෘතිය" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "නවතන්න" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/sk.po b/po/sk.po new file mode 100644 index 0000000..1c1d647 --- /dev/null +++ b/po/sk.po @@ -0,0 +1,447 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Dušan Kazik , 2015-2017 +# Ján Ďanovský , 2013-2014 +# Marcel Telka , 2005 +# Pavol Šimo , 2015 +# Peter Tuharsky , 2007 +# Stanislav Visnovsky , 2003 +# Stanislav Višňovský , 2002 +# Stanislav Visnovsky , 2000-2002,2003, 2004 +# Tibor Kaputa , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Dušan Kazik \n" +"Language-Team: Slovak (http://wiki.ukui.org/trans/sk/)\n" +"Language: sk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zvuk" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Zmení hlasitosť zvuku a priradí zvuky k udalostiam" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Ovládanie hlasitosti" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Zobrazí ovládanie hlasitosti pracovného prostredia" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Verzia tohto programu" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Povoliť ladenie" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "– applet ovládania hlasitosti MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Zvukový systém nie je dostupný" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Čakanie na odpoveď zvukového systému" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Backend zvukového systému" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Spúšťacia stránka" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Ovládanie hlasitosti MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Vstup" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Výstup" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Hlasitosť mikrofónu" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Hlasitosť výstupného zvuku" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE applet na ovládanie hlasitosti" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Ľavý" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Pravý" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Zadný" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Predný" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "Vyváž_enie:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Prelínanie:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Nezosilnené" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Stlmiť" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ko_nektor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Vypnuté" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Výstup" +msgstr[1] "%u Výstupy" +msgstr[2] "%u Výstupov" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Vstup" +msgstr[1] "%u Vstupy" +msgstr[2] "%u Vstupov" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Názov" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Testovanie reproduktora %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Otestovať reproduktory" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Zvukové efekty" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Hl_asitosť upozornení: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Výst_upná hlasitosť: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hardvér" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Zariadenie nastavíte je_ho vybraním:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Nastavenie vybraného zariadenia:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Vstupná hlas_itosť: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Vstupná úroveň:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "V_yberte zariadenie zvukového vstupu:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "V_yberte zariadenie zvukového výstupu:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programy" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Žiadny program momentálne neprehráva alebo nenahráva zvuk." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Nastavenia zvuku" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Bez zvukov" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Zabudované" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Vlastný" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testujú sa zvuky udalostí" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Predvolené" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Z témy" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Typ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Téma zvuku:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "V_yberte zvuk upozornení:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "P_ovoliť zvuky okien a tlačidiel" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Zastaviť" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Otestovať" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Nepodarilo sa spustiť nastavenia zvuku: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "S_tlmiť" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Na_stavenia zvuku" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Stlmené na" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Neznámy" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Predný ľavý" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Predný pravý" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Predný stredový" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Zadný ľavý" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Zadný pravý" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Zadný stredový" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Predný ľavý stredový" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Predný pravý stredový" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Bočný ľavý" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Bočný pravý" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Horný predný ľavý" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Horný predný pravý" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Horný predný stredový" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Horný stredový" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Horný zadný ľavý" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Horný zadný pravý" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Horný zadný stredový" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/sl.po b/po/sl.po new file mode 100644 index 0000000..b008cdd --- /dev/null +++ b/po/sl.po @@ -0,0 +1,448 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Andraž Tori , 2000 +# Damir Jerovšek , 2013 +# Damir Mevkić , 2017 +# Helena S , 2017 +# Matic Žgur , 2007 +# Matjaž Horvat , 2006 +# worm , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-23 18:10+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Slovenian (http://wiki.ukui.org/trans/sl/)\n" +"Language: sl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n" +"%100==4 ? 2 : 3);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zvok" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Spreminjanje glasnosti zvoka in zvočni dogodki" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Nadzor glasnosti" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Pokaži namizni nadzornik zvoka" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Različica tega programa" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Omogoči debugiranje" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "- MATE aplet za nadzor glasnosti" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Zvočni sistem ni navoljo" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Čakanje na odziv zvočnega sistema" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Zvok sistema podprt" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Začetna stran" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "- MATE nadzor glasnosti" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Vhod" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Izhod" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Glasnost mikrofona" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Izhodna glasnost zvoka" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE Aplikacija za Nadzor Glasnosti" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Levo" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Desno" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Zadaj" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Spredaj" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Najmanj" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Največ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Ravnotežje:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Pojemanje:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Nizkotonski zvočnik:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Neojačano" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Nemo" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Spojnik:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Onemogočeno" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u izhod" +msgstr[1] "%u izhoda" +msgstr[2] "%u izhodov" +msgstr[3] "%u izhodi" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u vhod" +msgstr[1] "%u vhoda" +msgstr[2] "%u vhodov" +msgstr[3] "%u vhodi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Ime" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Preizkus zvočnika za %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Preizkus zvočnikov" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Zvočni učinki" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Glasnost opozoril:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Glasnost izhoda:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Strojna oprema" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Izbor naprave za nastavitev:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Nastavitve za izbrano napravo:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Glasnost vhoda:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Raven vhoda:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "_Izbor naprave za zvočni vhod:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "_Izbor naprave za zvočni izhod:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ni programa, ki bi trenutno predvajal ali snemal zvočni posnetek." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Lastnosti zvoka" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Brez zvoka" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Vgrajeno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Po meri" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Preizkus zvoka dogodkov" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Privzeto" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Iz teme" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Vrsta" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Zvočna _tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "_Izbor zvoka opozorila:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Omogoči zvoke _oken in gumbov" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Zaustavi" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Preizkus" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Napaka med zagonom lastnosti zvoka: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Nemo" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Nastavitve zvoka" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Neznano" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Spredaj levo" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Spredaj desno" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Spredaj v sredini" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Zadaj Levo" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Zadaj Desno" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Zadaj Sredinsko" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Spredaj levo od Sredine" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Spredaj Desno od Sredine" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Ob strani Levo" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Ob strani Desno" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Zgoraj Sprednje Levo" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Zgoraj Sprednje Desno" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Zgoraj Spredaj v Sredini" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Zgoraj v Sredini" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Zgoraj Zadaj Levo" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Zgoraj Zadaj Desno" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Zgoraj Zadaj Sredinsko" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Prostorski zvok 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Prostorski zvok 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Prostorski zvok 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Prostorski zvok 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Prostorski zvok 7.1" diff --git a/po/sq.po b/po/sq.po new file mode 100644 index 0000000..8a5a4b9 --- /dev/null +++ b/po/sq.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Ardit Dani , 2014 +# Indrit Bashkimi , 2015 +# Laurent Dhima , 2003-2006, 2008 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Albanian (http://wiki.ukui.org/trans/sq/)\n" +"Language: sq\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zëri" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Kontrolli i volumit" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Versioni i këtij programi" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— MATE Kontrolli i Volumit Applet" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Faqja e nisjes" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "— MATEKontrolli i Volumit" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Volumi i mikrofonit" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "— MATE Kontrolli i Volumit Applet" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Majtas" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Djathtas" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balanca:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profilet:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Çaktivizuar" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Emri" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Ttestimi Bokseve për %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testo Bokset" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Efektet Zanore" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Konfigurime për dispozitivët e përzgjedhur:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Preferencat Zanore" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ska zë" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Personalizuar" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Paracaktuar" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Lloji" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Ndalo" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Heshtur" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/sr.po b/po/sr.po new file mode 100644 index 0000000..84a73d3 --- /dev/null +++ b/po/sr.po @@ -0,0 +1,443 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007 +# Miloš Popović , 2010 +# Miloš Popović , 2010 +# Мирослав Николић , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Мирослав Николић \n" +"Language-Team: Serbian (http://wiki.ukui.org/trans/sr/)\n" +"Language: sr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Звук" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Измените јачину звука и догађаје звука" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Управљање јачином звука" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Прикажите управљање јачином звука" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Издање овог програма" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Укључује прочишћавање" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Мејтово програмче за управљање звуком" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Звук система није доступан" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Чекам на одговор система звука" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Позадинац система звука" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Почетна страница" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Мејтово управљање звуком" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Улаз" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Излаз" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Јачина звука микрофона" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Јачина излазног звука" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Мејтово програмче за управљање звуком" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Леви" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Десни" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Задњи" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Предњи" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Најтише" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Најгласније" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Однос:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Ишчезавање:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Дубокотонац:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Без појачавања" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Утишај" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Профил:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Конектор:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Искључен" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u излаз" +msgstr[1] "%u излаза" +msgstr[2] "%u излаза" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u улаз" +msgstr[1] "%u улаза" +msgstr[2] "%u улаза" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Назив" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Испробавање звучника %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Испробавање звучника" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Звучна дејства" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Јачина звука за _упозорења: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Јачина звука на _излазу: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Звучне картице" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Изаберите _уређај за подешавање:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Подешавања изабраног уређаја:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Јачина звука на _улазу: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Улазни ниво:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Изаберите уређај као звучни _улаз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Изаберите уређај као звучни _излаз:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Програми" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ниједан програм тренутно не пушта нити снима звук." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Поставке звука" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Без звука" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Уграђено" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Произвољно" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Испробавање звука догађаја" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Основно" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Из теме" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Врста" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Тема звука:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Изабери звук _упозорења:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Укључи звуке за _прозоре и дугмиће" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Заустави" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Испробај" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Нисам успео да покренем поставке звука: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Утишај" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Поставке _звука" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Утишано на" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Непознато" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Предњи леви" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Предњи десни" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Предњи средишњи" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "ЛФЕ" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Позадински леви" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Позадински десни" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Позадински средишњи" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Предњи леви средишњи" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Предњи десни средишњи" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Бочни леви" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Бочни десни" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Горњи предњи леви" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Горњи предњи десни" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Горњи предњи средишњи" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Горњи средишњи" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Горњи позадински леви" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Горњи позадински десни" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Горњи позадински средишњи" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Стерео" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Окружујући 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Окружујући 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Окружујући 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Окружујући 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Окружујући 7.1" diff --git a/po/sr@latin.po b/po/sr@latin.po new file mode 100644 index 0000000..45423c2 --- /dev/null +++ b/po/sr@latin.po @@ -0,0 +1,441 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Courtesy of Prevod.org team (http://prevod.org/) -- 2003, 2004, 2005, 2006, 2007 +# Miloš Popović , 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Serbian (Latin) (http://wiki.ukui.org/trans/sr%40latin/)\n" +"Language: sr@latin\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Zvuk" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Menja jačinu zvuka i dodeljuje zvuke događajima" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Upravljanje zvukom" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Prikaži kontrolu jačine zvuka" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Izdanje programa" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Gnomovo programče upravljanje zvukom" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Čekam na odgovor zvučnog sistema" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Početna stranica" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Gnomovo upravljanje zvukom" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ulaz" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Izlaz" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Jačina mikrofona" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Jačina izlaznog zvuka" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — Gnomovo programče upravljanje zvukom" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Levi" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Desni" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Zadnji" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Prednji" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Majtiše" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Najglasnije" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Odnos:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Izbledi:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subvufer" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Bez pojačavanja" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Utišaj" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Konektor:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Onemogućeno" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Naziv" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Proba zvučnika %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Proba zvučnika" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Zvučni efekti" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Jačina zvuka za _upozorenja: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Jačina _zvuka na izlazu: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Zvučne kartice" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Izaberite uređaj _radi podešavanja:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Podešavanja za izabrani uređaj:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Jačina z_vuka na ulazu: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Ulazni nivo:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Izaberite uređaj kao zvučni ulaz:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Izaberite uređaj kao zvučni izlaz:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Programi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Ni jedan program ne pušta ili snima zvuk." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Postavke zvuka" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Bez zvuka" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Ugrađeno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Prilagođeno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Provera zvuka za događaj" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Uobičajno" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Iz teme" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Vrsta" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "_Tema za zvuk:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "I_zaberite zvuk za upozorenje:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Omo_gući zvuke za prozore i dugmiće" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Zaustavi" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Proba" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Ne mogu da pokrenem zvučne postavke: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Utišaj" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Podesi zvuk" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/sv.po b/po/sv.po new file mode 100644 index 0000000..1704b67 --- /dev/null +++ b/po/sv.po @@ -0,0 +1,444 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Andreas Hyden , 2000 +# Christian Rose , 2001, 2002, 2003, 2004, 2005, 2006 +# Daniel Gullbransen , 2017 +# Daniel Nylander , 2006, 2007, 2008, 2009, 2010 +# Erik, 2016 +# Henrik Mattsson-Mårn , 2016 +# Kristoffer Grundström , 2015 +# Martin Wahlen , 1998, 1999 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Swedish (http://wiki.ukui.org/trans/sv/)\n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Ljud" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Ändra ljudvolym och ljudhändelser" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Volymkontroll" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Visa skrivbordets volymkontroll" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Version av detta program" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Aktivera felsökning" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — Volympanelprogram för MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Ljudsystemet är inte tillgängligt" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Väntar på att ljudsystemet ska svara" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Ljudsystemets bakände" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Uppstartssida" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Volymkontroll för MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Ingång" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Utgång" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofonvolym" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Ljudutgångsvolym " + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Volymkontrollsapplet för MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Vänster" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Höger" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Bak" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Fram" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maximum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balans:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Tona:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Ej förstärkt" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Tyst" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Ko_ntakt:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Inaktiverad" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u utgång" +msgstr[1] "%u utgångar" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ingång" +msgstr[1] "%u ingångar" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Namn" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Högtalartest för %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Testa högtalare" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Ljudeffekter" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Larmvolym: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Utgångsvolym: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Hårdvara" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "Välj en enhet att _konfigurera:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Inställningar för vald enhet:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Ingångsvolym: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Ingångsnivå:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Välj _en enhet för ljudingång:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Välj _en enhet för ljudutgång:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Program" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Inget program spelar upp eller in ljud för tillfället." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Ljudinställningar" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Inga ljud" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Inbyggt" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Anpassad" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Testar händelseljud" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Standard" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Från tema" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Typ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Ljud_tema:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Väl_j ett larmljud:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Aktivera ljud för _fönster och knappar" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Stopp" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Testa" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Misslyckades med att starta ljudinställningar: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Tyst" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Ljudinställningar" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Okänt" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Fronthögtalare vänster" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Fronthögtalare höger" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Fronthögtalare mitten" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Bashögtalare" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Bakre högtalare vänster" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Bakre högtalare höger" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Bakre högtalare mitten" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Fronthögtalare vänster mitten" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Fronthögtalare höger mitten" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Sidohögtalare vänster" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Sidohögtalare höger" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Fronthögtalare övre vänster" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Fronthögtalare övre höger" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Fronthögtalare övre mitten" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Längst upp i mitten" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Bakre högtalare övre vänster" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Bakre högtalare övre höger" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Bakre högtalare övre mitten" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/ta.po b/po/ta.po new file mode 100644 index 0000000..fbddcfe --- /dev/null +++ b/po/ta.po @@ -0,0 +1,442 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Dinesh Nadarajah , 2003 +# Dr,T,Vasudevan , 2010 +# Dr.T.Vasudevan , 2007, 2009 +# Felix , 2006 +# I. Felix , 2008, 2009 +# Jayaradha N , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Tamil (http://wiki.ukui.org/trans/ta/)\n" +"Language: ta\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ஒலியளவு" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ஒலியளவு மற்றும் ஒலி நிகழ்வுகளை மாற்று" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ஒலிவளவு கட்டுப்பாடு" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "பணிமேடை ஒலியளவு கட்டுப்பாட்டை காட்டு" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "இந்த பயன்பாட்டின் பதிப்பு" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ஒலிவளவு கட்டுப்பாடு" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ஒலி அமைப்பு பதிலளிக்க காத்திருக்கிறது" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "துவக்க பக்கம்" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ஒலிவளவு கட்டுப்பாடு" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "உள்ளீடு" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "வெளிப்பாடு" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ஒலிவளவு கட்டுப்பாடு" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "இடது" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "வலது" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "பின்" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "முன்" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "குறைந்த பட்சம்" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "அதிக பட்சம்" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "மீதி (_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_F மெதுவாக அழி:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_S சப் வூஃபர்" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "செறிவூட்டாத" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "அமைதியாக்கு" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "விவரக்குறிப்பு: (_P)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "இணைப்பி: (_n)" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "செயல்நீக்கப்பட்டது" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u வெளிப்பாடு" +msgstr[1] "%u வெளிப்பாடுகள்" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u உள்ளீடுகள்" +msgstr[1] "%u உள்ளீடுகள்" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "பெயர்" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ஒலி விளைவுகள்" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "விழிப்பூட்டும் ஒலியளவு: (_A)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "வெளியேறும் ஒலியளவு: (_O)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "வன் பொருட்கள்" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "கட்டமைப்புக்கு ஒரு சாதனத்தை தேர்ந்தெடு: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "தேர்ந்தெடுக்கப்பட்ட சாதனத்தின் அமைப்புகள்:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "உள்ளீடு ஒலியளவு: (_I)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "உள்ளீடு நிலை:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ஒலி உள்ளீட்டிற்கு ஒரு சாதனத்தை தேர்ந்தெடு: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ஒலி வெளிப்பாடு சாதனத்தை தேர்ந்தெடு: (_h)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "விண்ணப்பங்கள்" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ஆடியோவை ஒரு பயன்பாடும் தற்போது இயக்கவில்லை அல்லது பதிவு செய்யவில்லை" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ஒலியளவு முன்னுரிமைகள்" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ஒலியளவு இல்லை" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "உட்பொதியப்பட்டது" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "வழக்கம்" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ஒலி நிகழ்வை சோதிக்கிறது" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "முன்னிருப்பு" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "தீமிலிருந்து" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "வகை" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ஒலித் தீம்: (_t)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "ஒரு விழிப்பூட்டும் ஒலியை தேர்ந்தெடு: (_h)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "சாளரம் மற்றும் பொத்தான் ஒலிகளை செயல்படுத்து ( _w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ஒலியளவு கட்டுப்பாடு முன்னுரிமைகளில் தோல்வி : %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "அமைதியாக்கு(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ஒலியளவு முன்னுரிமைகள்(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/te.po b/po/te.po new file mode 100644 index 0000000..67fe2a5 --- /dev/null +++ b/po/te.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Krishnababu Krothapalli , 2008, 2009, 2010 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Telugu (http://wiki.ukui.org/trans/te/)\n" +"Language: te\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "శబ్ధము" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "శబ్దపు ఘటనలను మరియు శబ్ధపు ధ్వనిని మార్చుము" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "వాల్యూమ్ నియంత్రిక" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "డెస్కుటాప్ ధ్వని నియంత్రణను చూపుము" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "ఈ అనువర్తనముయొక్క వర్షన్" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "వాల్యూమ్ నియంత్రిక" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "శబ్ధపు వ్యవస్థ స్పందన కొరకు వేచివుంది" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "ప్రారంభ పుట" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "వాల్యూమ్ నియంత్రిక" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ఇన్పుట్" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "అవుట్పుట్" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "వాల్యూమ్ నియంత్రిక" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ఎడమ" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "కుడి" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "ముందలి" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "ఫాంటు" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "కనిష్టం" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "గరిష్టం" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "సమతుల్యం (_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "మాసిన (_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ఉపవూఫర్ (_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "విస్తృతపరచని(అన్‌యాంప్లిఫైడ్)" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "నిశ్శబ్దము" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "ప్రొఫైల్ (_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "అనుసంధానకి (_n):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "అచేతనమైన" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u అవుట్పుట్" +msgstr[1] "%u అవుట్పుట్లు" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ఇన్పుట్" +msgstr[1] "%u ఇన్పుట్లు" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "నామము" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "శబ్ధము ప్రభావములు" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "హెచ్చరిక ధ్వని (_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "అవుట్పుట్ ధ్వని (_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "హార్డువేర్" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "ఆకృతీకరించుటకు వొక పరికరమును యెంచుకొనుము (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "ఎంపికచేసిన పరికరము కొరకు అమరికలు:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ఇన్పుట్ ధ్వని (_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ఇన్పుట్ స్థాయి:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "శబ్ధపు యిన్పుట్ కొరకు వొక పరికరమును యెంచుకొనుము (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "శబ్ధపు అవుట్పుట్ కొరకు పరికరమును యెంచుకొనుము (_h):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "అనువర్తనములు" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ఎటువంటి అనువర్తనము ప్రస్తుతము ప్లేఅవుటలేదు లేదా ఆడియో రికార్డు అవుటలేదు." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "శబ్ధపు అభీష్టములు" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "శబ్ధములు లేవు" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "అంతర్-నిర్మిత(బుల్ట్-ఇన్)" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "మలుచుకొనిన" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ఘటనా శబ్ధమును పరిశీలించుచున్నది" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "అప్రమేయ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "థీమ్ నుండి" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "రకము" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "శబ్ధపు థీమ్ (_t):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "హెచ్చరిక శబ్ధమును యెంచుకొనుము (_h):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "విండో మరియు బటన్ శబ్దములను చేతనముచేయుము (_w)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "శబ్ధము అభీష్టాలు ప్రారంభించుటలో విఫలమైంది: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "నిశ్శబ్దము (_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "శబ్ధము ఆభీష్టాలు (_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/th.po b/po/th.po new file mode 100644 index 0000000..8f1589c --- /dev/null +++ b/po/th.po @@ -0,0 +1,438 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Chanchai Junlouchai , 2004 +# Sapa , 2003, 2004 +# Sawit Kasuriya , 2003 +# Supranee Thirawatthanasuk , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Thai (http://wiki.ukui.org/trans/th/)\n" +"Language: th\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "เสียง" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ปรับความดังของเสียงและตั้งเสียงของเหตุการณ์ต่างๆ" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ความดังเสียง" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "แสดงหน้าต่างปรับความดังเสียง" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "รุ่นของโปรแกรมนี้" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "ความดังเสียง" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "กำลังรอการตอบสนองจากระบบเสียง" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "หน้าเริ่มต้น" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "ความดังเสียง" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "เสียงเข้า" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "เสียงออก" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "ความดังเสียง" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "ซ้าย" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ขวา" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "หลัง" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "หน้า" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "ต่ำสุด" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "สูงสุด" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_สมดุล:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "เ_ฟด:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_ซับวูฟเฟอร์:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "ไม่ขยาย" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "ปิดเสียง" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "โ_พรไฟล์:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_ช่องเชื่อมต่อ:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "ปิดใช้" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "เสียงออก %u ช่อง" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "เสียงเข้า %u ช่อง" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ชื่อ" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "เอฟเฟ็กต์เสียง" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "ความดังเสียงแ_จ้งเตือน: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "ความดังเสียง_ออก: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ฮาร์ดแวร์" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "เ_ลือกอุปกรณ์สำหรับเสียงเข้า:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "ค่าตั้งสำหรับอุปกรณ์ที่เลือก:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "ความดังเสียงเ_ข้า: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ระดับเสียงเข้า:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "เ_ลือกอุปกรณ์สำหรับเสียงเข้า:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "เ_ลือกอุปกรณ์สำหรับเสียงออก:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "โปรแกรม" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "ไม่มีโปรแกรมที่เล่นหรืออัดเสียงอยู่" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "การปรับแต่งเกี่ยวกับเสียง" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ไม่ใช้เสียง" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "ที่มีในตัว" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "กำหนดเอง" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "กำลังทดสอบเสียงของเหตุการณ์" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "ปริยาย" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "จากชุดเสียง" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "ชนิด" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ชุดเ_สียง:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "เ_ลือกเสียงแจ้งเตือน:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "เปิดใช้เสียงของห_น้าต่างและปุ่มต่างๆ" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ไม่สามารถเปิดเครื่องมือปรับแต่งเกี่ยวกับเสียง: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "ปิ_ดเสียง" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ปรับแต่งเ_สียง" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "ไม่ทราบ" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/tk.po b/po/tk.po new file mode 100644 index 0000000..17ed7e2 --- /dev/null +++ b/po/tk.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Gurban Mühemmet Tewekgeli , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Turkmen (http://wiki.ukui.org/trans/tk/)\n" +"Language: tk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Hejim Kontroli" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Hejim Kontroli" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Hejim Kontroli" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Hejim Kontroli" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Şahsy" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Dur" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/tr.po b/po/tr.po new file mode 100644 index 0000000..15ab0df --- /dev/null +++ b/po/tr.po @@ -0,0 +1,444 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Arman Aksoy (Armish) , 2003 +# Baris Cicek , 2004, 2005, 2008, 2009 +# Butterfly , 2017 +# Fatih Demir , 2000 +# Kudret , 2014 +# mauron, 2014 +# mauron, 2012 +# Umut Barış GÖKMEN , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Butterfly \n" +"Language-Team: Turkish (http://wiki.ukui.org/trans/tr/)\n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Ses" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Ses seviyesini ve olay seslerini değiştir" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Ses Kontrolü" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Masaüstü ses kontrolünü göster" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Bu uygulamanın sürümü" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Hata ayıklamayı etkinleştir" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Ses Seviyesi Kontrol Programcığı" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Ses sistemi kullanılabilir değil" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Ses sisteminin cevabı bekleniyor" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Ses sistemi arka ucu" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Başlangıç sayfası" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Ses Seviyesi Kontrolü" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Giriş" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Çıkış" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofon seviyesi" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Ses Çıktı Seviyesi" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE Ses Seviyesi Kontrol Programcığı" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Sol" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Sağ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Arka" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Ön" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "En az" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "En fazla" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Denge:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Geçiş:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Yükseltilmemiş" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "%100" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Sessiz" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Profil:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Bağlayıcı:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Kapalı" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u Çıkış" +msgstr[1] "%u Çıkış" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u Giriş" +msgstr[1] "%u Giriş" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "İsim" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s İçin Hoparlör Testi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Hoparlörleri sına" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Ses Etkileri" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Uyarı ses seviyesi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "Çıkış _ses seviyesi: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Donanım" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Yapılandırmak için bir aygıt seçin:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Seçilen aygıt için ayarlar:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Giriş ses seviyesi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Giriş seviyesi:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Ses _girişi için bir aygıt seçin:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Ses çı_kışı için bir aygıt seçin:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Uygulamalar" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Şu an da hiçbir uygulama ses çalmıyor veya kaydetmiyor." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Ses Tercihleri" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Ses yok" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Dahili" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Özel" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Olay sesleri deneniyor" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Öntanımlı" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Teması" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Tür" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Ses _teması:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Bir _uyarı sesi seçin:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_Pencere ve tuş seslerini etkinleştir" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Dur" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Test" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Ses Tercihleri başlatılamadı: %ss" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Sessiz" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Ses Tercihleri" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Şuna kapalı" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Bilinmeyen" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Ön Sol" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Ön Sağ" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Ön Merkez" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Bas Hoparlörü" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Arka Sol" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Arka Sağ" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Arka Merkez" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Ön Merkezin Solu" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Ön Merkezin Sağı" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Sol Kenar" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Sağ Kenar" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "En Ön Sol" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "En Ön Sağ" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "En Ön Merkez" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "En Orta" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "En Arka Sol" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "En Arka Sağ" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "En Arka Merkez" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Çevresel ses 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Çevresel ses 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Çevresel ses 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Çevresel Ses 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Çevresel ses 7.1" diff --git a/po/ug.po b/po/ug.po new file mode 100644 index 0000000..0334be9 --- /dev/null +++ b/po/ug.po @@ -0,0 +1,434 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Uighur (http://wiki.ukui.org/trans/ug/)\n" +"Language: ug\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "ئاۋاز" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "ئاۋاز مىقدارى ۋە ئاۋاز ھادىسىسى ئۆزگەرت" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "ئاۋاز تىزگىنى" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ئۈستەل`ئۈستى ئاۋاز تىزگىننى كۆرسەت" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "بۇ پروگراممىنىڭ نەشرى" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE ئاۋاز تىزگىن قوللانچاق" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "ئاۋاز سىستېمىسىنىڭ ئىنكاسىنى كۈتۈۋاتىدۇ" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "قوزغىتىش بېتى" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE ئاۋاز تىزگىنى" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "كىرگۈز" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "چىقار" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "مىكروفون ئاۋاز مىقدارى" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "چىقىرىدىغان ئاۋاز مىقدارى" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — MATE ئاۋاز تىزگىن قوللانچاق" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "سول" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "ئوڭ" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "ئارقا تەرەپ" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "ئالدى" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "ئەڭ كىچىك" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "ئەڭ چوڭ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "تەڭپۇڭ(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "ئاجىزلىتىش(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "ئۇلترا تۆۋەن ئاۋاز(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "چوڭايتىلمىغان" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "ئۈنسىز" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "سەپلىمە ھۆججەت(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "ئۇلىغۇچ(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "چەكلەنگەن" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u چىقار" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u كىرگۈز" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "ئاتى" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s نىڭ ياڭراتقۇسىنى سىناش" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "ياڭراتقۇ سىنا" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "ئاۋاز ئۈنۈمى" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "ئاگاھلاندۇرۇش ئاۋاز مىقدارى(_A): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "چىقىرىدىغان ئاۋاز مىقدارى(_O): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "قاتتىق دېتال" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "سەپلەيدىغان ئۈسكۈنە تاللاش(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "تاللىغان ئۈسكۈنىنىڭ تەڭشىكى:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "كىرىش ئاۋاز مىقدارى(_I): " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "كىرىش دەرىجىسى:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "ئاۋاز كىرگۈزۈش ئۈسكۈنىسى تاللاش(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "ئاۋاز چىقىرىش ئۈسكۈنىسى تاللاش(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "پروگراممىلار" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "نۆۋەتتە ئاۋاز قويىدىغان ياكى خاتىرىلەيدىغان پروگرامما يوق." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "ئاۋاز مايىللىقى" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "ئاۋاز يوق" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "ئىچكى" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "ئىختىيارى" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "ھادىسە ئاۋازىنى سىناۋاتىدۇ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "كۆڭۈلدىكى" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "باش تېمىدىن" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "تىپى" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "ئاۋاز باش تېما(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "ئاگاھلاندۇرۇش ئاۋازى تاللاڭ(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "كۆزنەك ۋە توپچا ئاۋازىنى قوزغات(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "توختا" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "سىنا" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "ئاۋاز مايىللىقىنى قوزغىتالمىدى: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "ئۈنسىز(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "ئاۋاز مايىللىقى(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/uk.po b/po/uk.po new file mode 100644 index 0000000..5fb6e10 --- /dev/null +++ b/po/uk.po @@ -0,0 +1,447 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Микола Ткач , 2013 +# wanderlust , 2009 +# zubr139, 2013 +# zubr139, 2012 +# zubr139, 2012-2013 +# Микола Ткач , 2014-2016 +# Микола Ткач , 2017 +# Шаповалов Анатолій Романович , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Микола Ткач \n" +"Language-Team: Ukrainian (http://wiki.ukui.org/trans/uk/)\n" +"Language: uk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Звук" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Зміна гучности звуку та прив'язка звуків до подій" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Регулятор гучности" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Показати регулятор гучности" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Версія цієї проґрами" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Увімкнути зневадження" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— Аплет регулятора гучности MATE" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Звукова система недоступна" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Очікування відповіді звукової підсистеми" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Бекенд звукової системи" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Початкова сторінка" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — Регулятор гучности MATE" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Вхід" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Вихід" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Гучність мікрофону" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Гучність звуку" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Аплет регулятора гучности MATE" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Лівий" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Правий" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Тло" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Фронтальний" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Мінімум" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Максимум" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Баланс" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Затухання:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Сабвуфер:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Непідсилений" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Приглушити" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Профілі:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_Канал:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Вимкнено" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u вихід" +msgstr[1] "%u виходи" +msgstr[2] "%u виходів" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u вхід" +msgstr[1] "%u входи" +msgstr[2] "%u входів" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Назва" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Тест гучномовців для %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Перевірити гучномовці" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Звукові події" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "Гучність _сповіщень: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Гучність звуку: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Пристрої" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "_Виберіть пристрій для налаштування:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Параметри обраного пристрою:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "Гучність _запису: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Рівень запису: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "Ви_беріть пристрій запису звуку:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "Ви_беріть пристрій виводу звуку" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Проґрами" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Наразі проґрами не програють та не записують звук." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Параметри звуку" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Без звуків" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Вбудований" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Власне" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Тестовий звуковий сигнал" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Типовий" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "З теми" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Тип" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Тема _звуків:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "Ви_беріть звук сповіщення:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Увімкнути звукові сповіщення про дії з _вікнами та натисканні кнопок" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Стоп" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Тестувати" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Не вдається запустити діялоґ налаштовування параметрів звуку: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Приглушити" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "П_араметри звуку" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Приглушено" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Невідомий" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Моно" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Передній Лівий" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Передній Правий" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Передній Центральний" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "Сабвуфер" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Задній Лівий" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Задній Правий" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Задній Центральний" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Передній Лівий чи Центральний" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Передній Правий чи Центральний" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Бічний Лівий" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Бічний Правий" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Передній Лівий Згори" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Передній Правий Згори" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Передній Центральний Згори" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Центральний Згори" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Задній Лівий Згори" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Задній Правий Згори" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Задній Центральний Згори" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Стерео" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Об’ємний звук 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Об’ємний звук 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Об’ємний звук 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Об’ємний звук 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Об’ємний звук 7.1" diff --git a/po/ur.po b/po/ur.po new file mode 100644 index 0000000..671c07e --- /dev/null +++ b/po/ur.po @@ -0,0 +1,436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 17:23+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Urdu (http://wiki.ukui.org/trans/ur/)\n" +"Language: ur\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "آواز" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "آواز اور اس کی کیفیتیں بدلیں" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "آواز کنٹرول" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "ڈیسک ٹاپ کا آواز کنٹرول دکھائیں" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "اس اطلاقیے کا نُسخہ" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — میٹ آواز کنٹرول ایپلیٹ" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "آواز کے نظام سے جواب کا انتظار کیا جارہا ہے" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "صفحہ آغاز" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — میٹ آواز کنٹرول" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "ماداخل" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "ماخارج" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "مائکروفون کی آواز" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "ماخارج آواز حُجم" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr " — میٹ آواز کنٹرول ایپلیٹ" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "بائیں" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "دائیں" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "پُشت" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "سامنا" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "کم سے کم" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "زیادہ سے زیادہ" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_توازن:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_دھندلاہٹ:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_سب ووفر:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "خاموش" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_پروفائل:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "_رابط:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "معطل" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u ماخارج" +msgstr[1] "%u ماخارج" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u ماداخل" +msgstr[1] "%u ماداخل" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "نام" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "سپیکر جانچ برائے %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "سپیکر جانچیں" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "آواز کے اثرات" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_انتباہ کی آواز:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_ماخارج آواز:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "ہارڈویئر" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "تشکیل کے لیے ألہ منت_خب کریں:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "منتخب کردہ آلے کی ترتیبات:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_ماداخل آواز:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "ماداخل سطح:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "آواز کے ماداخل کے لیے ألہ _منتخب کریں:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "آواز کے ماخارج کے لیے ألہ م_نتخب کریں:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "اطلاقیے" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "اس وقت کوئی اطلاقیہ آواز کو چلا یا ریکارڈ نہیں کر رہا." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "آواز کی ترجیحات" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "کوئی آوازیں نہیں" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "درساختہ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "مخصوص" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "واقعات کی آوازیں جانچیں" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "طے شُدہ" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "تھیم سے" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "نوعیت" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "آواز کی _تھیم:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "انتباہ کی آواز _منتخب کریں:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "_دریچہ اور بٹن کی آوازیں فعال کریں" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "روکیں" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "جانچیں" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "آواز کی ترجیحات چلانے میں ناکامی: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_خاموش کریں" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_آواز کی ترجیحات" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/uz.po b/po/uz.po new file mode 100644 index 0000000..c7ea66b --- /dev/null +++ b/po/uz.po @@ -0,0 +1,436 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# muzaffar habibullayev , 2016 +# Umidjon Almasov , 2013 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 20:25+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Uzbek (http://wiki.ukui.org/trans/uz/)\n" +"Language: uz\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Ovoz" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Ovoz Nazorati" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE Ovoz Nazorati" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE Ovoz Nazorati" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Mikrofon Ovozi" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Ovoz Nazorati" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Chap" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Oʻng" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Orqa" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Oldi" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Minimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Maksimum" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "_Balans:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Ovozsiz" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Oʻchirilgan" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Nomi" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Spikerlarni Sinash" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Ovoz Effektlari" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Qurilmalar" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Dasturlar" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Tovush Xususiyatlari" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Standart" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Turi" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "To'xtatish" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Sinash" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "_Ovozsiz" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "_Tovush Xususiyatlari" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Noma'lum" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Mono" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Stereo" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/vi.po b/po/vi.po new file mode 100644 index 0000000..7899a58 --- /dev/null +++ b/po/vi.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Duy Truong Nguyen , 2014 +# Horazone Detex , 2017 +# Nguyễn Thái Ngọc Duy , 2002 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Horazone Detex \n" +"Language-Team: Vietnamese (http://wiki.ukui.org/trans/vi/)\n" +"Language: vi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "Âm thanh" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "Thay đổi âm lượng và âm thanh của sự kiện" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Điều khiển Âm lượng" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "Hiện điều khiển âm lượng trên màn hình nền" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "Phiên bản của ứng dụng này" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "Bật debug" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "— Bộ điều khiển âm lượng Mate" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "Âm thanh hệ thống chưa có" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "Đang đợi hệ thống âm thanh đáp ứng" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "Đầu ra âm thanh hệ thống" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "Trang đầu tiên" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "__ Điều khiển âm lượng Mate" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "Vào" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "Kết xuất" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "Âm lượng thiết bị thu âm" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "Âm lượng đầu ra" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Bộ điều khiển âm lượng Mate" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "Trái" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "Phải" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "Sau" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "Trước" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "Tối thiểu" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "Tối đa" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "Cân _bằng:" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "_Fade:" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "_Subwoofer:" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "Không khuếch đại" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "Câm" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "_Hồ sơ:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "Bộ kết_nối:" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "Bị tắt" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u đầu ra" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u đầu vào" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "Tên" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "Thử loa cho %s" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "Thử loa" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "Hiệu ứng Âm thanh" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "_Cảnh báo âm lượng: " + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "_Đầu ra âm lượng:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "Phần cứng" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "C_họn một thiết bị để cấu hình:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "Thiết lập cho thiết bị đã chọn:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "_Đầu vào âm lượng:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "Cấp nhập:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "C_họn một thiết bị để nhập vào âm thanh:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "C_họn một thiết bị để xuất âm thanh:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "Ứng dụng" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "Không có ứng dụng đang phát hay thu âm thanh." + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "Tuỳ thích Âm thanh" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "Không âm" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "Dựng sẵn" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Tự chọn" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "Đang thử âm thanh cho sự kiện" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "Mặc định" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "Từ sắc thái" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "Kiểu" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "Sắc thái _Âm thanh:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "C_họn một âm thanh cảnh báo:" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "Bật _âm thanh cho cửa sổ và cái nút" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Dừng" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "Thử" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "Lỗi khởi chạy Tuỳ thích Âm lượng: %s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "Câ_m" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "Tuỳ thích Â_m thanh" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "Bị câm tại" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "Không rõ" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "Nguồn đơn" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "Trái trước" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "Phải trước" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "Tâm trước" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "Trái sau" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "Phải sau" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "Tâm sau" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "Trái trước của Tâm" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "Phải trước của Tâm" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "Mặt trái" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "Mặt phải" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "Trái trước trên" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "Phải trước trên" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "Tâm trước trên" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "Tâm trên" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "Trái sau trên" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "Phải sau trên" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "Tâm sau trên" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "Lập thể" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "Surround 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "Surround 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "Surround 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "Surround 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "Surround 7.1" diff --git a/po/wa.po b/po/wa.po new file mode 100644 index 0000000..a879f37 --- /dev/null +++ b/po/wa.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Lucyin Mahin , 2004 +# Pablo Saratxaga , 2002 +# Pablo Saratxaga , 2004 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Walloon (http://wiki.ukui.org/trans/wa/)\n" +"Language: wa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Contrôle do volume" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Contrôle do volume" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Contrôle do volume" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Contrôle do volume" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "A vosse môde" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Arester" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/xh.po b/po/xh.po new file mode 100644 index 0000000..b12e226 --- /dev/null +++ b/po/xh.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Translation World CC in South Africa, 2005 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Xhosa (http://wiki.ukui.org/trans/xh/)\n" +"Language: xh\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "Ulawulo lweSandi" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr "Ulawulo lweSandi" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr "Ulawulo lweSandi" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "Ulawulo lweSandi" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "" +msgstr[1] "" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "" +msgstr[1] "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "Ukuzenzela" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "Misa" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "" diff --git a/po/zh_CN.po b/po/zh_CN.po new file mode 100644 index 0000000..180f754 --- /dev/null +++ b/po/zh_CN.po @@ -0,0 +1,446 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Aron Xu , 2010 +# Deng Xiyue , 2009 +# Dillion Chen , 1999 +# Funda Wang , 2003-2004 +# Hinker Liu , 2009 +# liushuyu011 , 2014 +# liushuyu011 , 2017 +# liushuyu011 , 2014 +# Replaced by He Qiangqiang , 2002 +# Sun G11n , 2002 +# Wylmer Wang, 2014 +# Yang Zhang , 2007 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: liushuyu011 \n" +"Language-Team: Chinese (China) (http://wiki.ukui.org/trans/zh_CN/)\n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "声音" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "更改音量以及将声音与事件关联" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "音量控制" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "显示桌面音量控制" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "此应用程序的版本" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "启用调试" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE 音量控制小程序" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "声音系统不可用" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "正在等待声音系统响应" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "声音系统后台" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "启动页面" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " - MATE 音量控制" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "输入" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "输出" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "麦克风音量" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "输出音量:" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE 音量控制小应用" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "左" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "右" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "后置声道" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "前置声道" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "最小值" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "最大值" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "平衡(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "淡出(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "低音炮(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "非放大" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "静音" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "配置文件(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "连接器(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "禁用" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u 输出" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u 输入" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "名称" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s 话筒设置" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "测试话筒" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "声音效果" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "报警音量(_A):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "输出音量(_O):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "硬件" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "选择要配置的设备(_H)" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "所选设备的设置:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "输入音量(_I):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "输入等级:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "选择声音输入设备(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "选择声音输出设备(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "应用程序" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "目前没有应用程序在播放或录制音频。" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "声音首选项" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "无声音" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "内置" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "自定义" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "测试事件声音" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "默认" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "来自主题" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "类型" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "声音主题(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "选择警报声音(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "启用窗体与按钮声音(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "停止" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "测试" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "启动音量首选项失败:%s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "静音(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "水平方向" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "声音首选项(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "已静音于" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "未知" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "单声道" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "左前" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "右前" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "前部中央" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "左后" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "右后" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "后部中央" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "前方左中" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "中心右前" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "左侧" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "右侧" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "顶部左前" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "顶部右前" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "顶部前中央" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "顶部居中央" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "顶部后方左" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "右上" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "中上" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "立体声" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "环绕声 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "环绕声 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "环绕声 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "环绕声 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "环绕声 7.1" diff --git a/po/zh_HK.po b/po/zh_HK.po new file mode 100644 index 0000000..9517e02 --- /dev/null +++ b/po/zh_HK.po @@ -0,0 +1,437 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Chao-Hsiung Liao , 2008 +# Fernando , 1999 +# tomoe_musashi , 2015 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: monsta \n" +"Language-Team: Chinese (Hong Kong) (http://wiki.ukui.org/trans/zh_HK/)\n" +"Language: zh_HK\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "聲音" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "改變音效的音量和音效事件" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "音量控制" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "顯示桌面音量控制" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "這個程式的版本" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "啟用除錯" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE 音量控制面板程式" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "音效系統不可用" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "正在等候音效系統回應" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "音效系統後端" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "啟始頁面" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE 音量控制" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "輸入" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "輸出" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "麥克風音量" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "音效輸出音量" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE 音量控制面板程式" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "左" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "右" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "後" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "前" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "最小值" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "最大值" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "平衡(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "淡化(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "重低音(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "未經放大" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "靜音" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "設定組合(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "連接器(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "已停用" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u 輸出" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u 輸入" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "名稱" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s 的喇叭測試" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "測試喇叭" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "聲音效果" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "警示音量(_A):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "輸出音量(_O):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "硬件" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "選擇要設定的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "已選取裝置的設定值:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "輸入音量(_I):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "輸入等級:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "選擇聲音輸入的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "選擇聲音輸出的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "應用程式" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "沒有應用程式目前正在播放或錄製音效。" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "音效偏好設定" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "不使用音效" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "內置" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "自選" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "測試事件音效" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "預設值" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "從主題" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "類型" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "音效主題(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "選擇警示音效(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "啟用視窗與按鈕音效(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "停止" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "測試" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "啟動音效偏好設定失敗:%s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "靜音(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "音效偏好設定(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "單聲道" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "立體聲" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "環迴立體聲 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "環迴立體聲 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "環迴立體聲 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "環迴立體聲 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "環迴立體聲 7.1" diff --git a/po/zh_TW.po b/po/zh_TW.po new file mode 100644 index 0000000..bcf6b75 --- /dev/null +++ b/po/zh_TW.po @@ -0,0 +1,439 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Translators: +# Chao-Hsiung Liao , 2008 +# Fernando , 1999 +# Jeff Huang , 2014-2015,2017 +# 趙惟倫 , 2012 +# Jeff Huang , 2014 +msgid "" +msgstr "" +"Project-Id-Version: UKUI Desktop Environment\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-20 11:02+0800\n" +"PO-Revision-Date: 2017-09-19 11:49+0000\n" +"Last-Translator: Jeff Huang \n" +"Language-Team: Chinese (Taiwan) (http://wiki.ukui.org/trans/zh_TW/)\n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../data/ukui-volume-control.desktop.in.in.h:1 +msgid "Sound" +msgstr "聲音" + +#: ../data/ukui-volume-control.desktop.in.in.h:2 +msgid "Change sound volume and sound events" +msgstr "改變音效的音量和音效事件" + +#: ../data/ukui-volume-control-applet.desktop.in.h:1 +#: ../ukui-volume-control/dialog-main.c:255 +#: ../ukui-volume-control/gvc-channel-bar.c:487 +#: ../ukui-volume-control/gvc-speaker-test.c:434 +msgid "Volume Control" +msgstr "音量控制" + +#: ../data/ukui-volume-control-applet.desktop.in.h:2 +msgid "Show desktop volume control" +msgstr "顯示桌面音量控制" + +#: ../ukui-volume-control/applet-main.c:45 +#: ../ukui-volume-control/dialog-main.c:193 +msgid "Version of this application" +msgstr "這個程式的版本" + +#: ../ukui-volume-control/applet-main.c:46 +#: ../ukui-volume-control/dialog-main.c:191 +msgid "Enable debug" +msgstr "啟用除錯" + +#: ../ukui-volume-control/applet-main.c:55 +#, fuzzy +msgid " — UKUI Volume Control Applet" +msgstr " — MATE 音量控制面板程式" + +#: ../ukui-volume-control/dialog-main.c:143 +msgid "Sound system is not available" +msgstr "聲音系統不可用" + +#: ../ukui-volume-control/dialog-main.c:165 +msgid "Waiting for sound system to respond" +msgstr "正在等候音效系統回應" + +#: ../ukui-volume-control/dialog-main.c:190 +msgid "Sound system backend" +msgstr "聲音系統後端" + +#: ../ukui-volume-control/dialog-main.c:192 +msgid "Startup page" +msgstr "啟始頁面" + +#: ../ukui-volume-control/dialog-main.c:202 +#, fuzzy +msgid " — UKUI Volume Control" +msgstr " — MATE 音量控制" + +#: ../ukui-volume-control/gvc-applet.c:322 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1999 +msgid "Input" +msgstr "輸入" + +#: ../ukui-volume-control/gvc-applet.c:323 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2086 +msgid "Output" +msgstr "輸出" + +#: ../ukui-volume-control/gvc-applet.c:326 +msgid "Microphone Volume" +msgstr "麥克風音量" + +#: ../ukui-volume-control/gvc-applet.c:328 +msgid "Sound Output Volume" +msgstr "音效輸出音量" + +#: ../ukui-volume-control/gvc-applet.c:333 +#, fuzzy +msgid "UKUI Volume Control Applet" +msgstr "MATE 音量控制面板程式" + +#: ../ukui-volume-control/gvc-balance-bar.c:140 +msgctxt "balance" +msgid "Left" +msgstr "左" + +#: ../ukui-volume-control/gvc-balance-bar.c:141 +msgctxt "balance" +msgid "Right" +msgstr "右" + +#: ../ukui-volume-control/gvc-balance-bar.c:144 +msgctxt "balance" +msgid "Rear" +msgstr "後" + +#: ../ukui-volume-control/gvc-balance-bar.c:145 +msgctxt "balance" +msgid "Front" +msgstr "前" + +#: ../ukui-volume-control/gvc-balance-bar.c:148 +msgctxt "balance" +msgid "Minimum" +msgstr "最小值" + +#: ../ukui-volume-control/gvc-balance-bar.c:149 +msgctxt "balance" +msgid "Maximum" +msgstr "最大值" + +#: ../ukui-volume-control/gvc-balance-bar.c:337 +msgid "_Balance:" +msgstr "平衡(_B):" + +#: ../ukui-volume-control/gvc-balance-bar.c:340 +msgid "_Fade:" +msgstr "淡化(_F):" + +#: ../ukui-volume-control/gvc-balance-bar.c:343 +msgid "_Subwoofer:" +msgstr "重低音(_S):" + +#: ../ukui-volume-control/gvc-channel-bar.c:312 +msgctxt "volume" +msgid "Unamplified" +msgstr "未經放大" + +#: ../ukui-volume-control/gvc-channel-bar.c:325 +msgctxt "volume" +msgid "100%" +msgstr "100%" + +#. Mute button +#: ../ukui-volume-control/gvc-channel-bar.c:1086 +msgid "Mute" +msgstr "靜音" + +#: ../ukui-volume-control/gvc-combo-box.c:253 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1613 +msgid "_Profile:" +msgstr "設定檔(_P):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:355 +#: ../ukui-volume-control/gvc-mixer-dialog.c:504 +msgid "Co_nnector:" +msgstr "連接器(_N):" + +#. translators: +#. * The device has been disabled +#: ../ukui-volume-control/gvc-mixer-dialog.c:1126 +msgid "Disabled" +msgstr "已停用" + +#. translators: +#. * The number of sound outputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1132 +#, c-format +msgid "%u Output" +msgid_plural "%u Outputs" +msgstr[0] "%u 輸出" + +#. translators: +#. * The number of sound inputs on a particular device +#: ../ukui-volume-control/gvc-mixer-dialog.c:1141 +#, c-format +msgid "%u Input" +msgid_plural "%u Inputs" +msgstr[0] "%u 輸入" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1504 +#: ../ukui-volume-control/gvc-mixer-dialog.c:1773 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:868 +msgid "Name" +msgstr "名稱" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1552 +#, c-format +msgid "Speaker Testing for %s" +msgstr "%s 的喇叭測試" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1616 +msgid "Test Speakers" +msgstr "測試喇叭" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1821 +msgid "Sound Effects" +msgstr "聲音效果" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1844 +msgid "_Alert volume: " +msgstr "警示音量(_A):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1913 +msgid "_Output volume: " +msgstr "輸出音量(_O):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1956 +msgid "Hardware" +msgstr "硬體" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1961 +msgid "C_hoose a device to configure:" +msgstr "選擇要設定的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:1985 +#: ../ukui-volume-control/gvc-mixer-dialog.c:2115 +msgid "Settings for the selected device:" +msgstr "已選取裝置的設定值:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2008 +msgid "_Input volume: " +msgstr "輸入音量(_I):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2033 +msgid "Input level:" +msgstr "輸入等級:" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2058 +msgid "C_hoose a device for sound input:" +msgstr "選擇聲音輸入的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2091 +msgid "C_hoose a device for sound output:" +msgstr "選擇聲音輸出的裝置(_H):" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2140 +msgid "Applications" +msgstr "應用程式" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2145 +msgid "No application is currently playing or recording audio." +msgstr "沒有應用程式目前正在播放或錄製音效。" + +#: ../ukui-volume-control/gvc-mixer-dialog.c:2337 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:732 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:744 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:756 +msgid "Sound Preferences" +msgstr "音效偏好設定" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:320 +msgid "No sounds" +msgstr "不使用音效" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:441 +msgid "Built-in" +msgstr "內建" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:628 +#: ../ukui-volume-control/sound-theme-file-utils.c:292 +msgid "Custom" +msgstr "自訂" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:735 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:746 +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:758 +msgid "Testing event sound" +msgstr "測試事件音效" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:844 +msgid "Default" +msgstr "預設值" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:845 +msgid "From theme" +msgstr "從主題" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:875 +msgid "Type" +msgstr "類型" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1034 +msgid "Sound _theme:" +msgstr "音效主題(_T):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1047 +msgid "C_hoose an alert sound:" +msgstr "選擇警示音效(_H):" + +#: ../ukui-volume-control/gvc-sound-theme-chooser.c:1075 +msgid "Enable _window and button sounds" +msgstr "啟用視窗與按鈕音效(_W)" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +msgid "Stop" +msgstr "停止" + +#: ../ukui-volume-control/gvc-speaker-test.c:258 +#: ../ukui-volume-control/gvc-speaker-test.c:372 +msgid "Test" +msgstr "測試" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:240 +#, c-format +msgid "Failed to start Sound Preferences: %s" +msgstr "啟動音效偏好設定失敗:%s" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:291 +msgid "_Mute" +msgstr "靜音(_M)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:301 +msgid "_Horizontal" +msgstr "" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:310 +msgid "_Sound Preferences" +msgstr "音效偏好設定(_S)" + +#: ../ukui-volume-control/gvc-stream-status-icon.c:496 +msgid "Muted at" +msgstr "靜音" + +#: ../ukui-volume-control/gvc-utils.c:58 +msgid "Unknown" +msgstr "未知的" + +#. Speaker channel names +#: ../ukui-volume-control/gvc-utils.c:60 ../ukui-volume-control/gvc-utils.c:108 +msgid "Mono" +msgstr "單聲道" + +#: ../ukui-volume-control/gvc-utils.c:61 +msgid "Front Left" +msgstr "左前" + +#: ../ukui-volume-control/gvc-utils.c:62 +msgid "Front Right" +msgstr "右前" + +#: ../ukui-volume-control/gvc-utils.c:63 +msgid "Front Center" +msgstr "前中" + +#: ../ukui-volume-control/gvc-utils.c:64 +msgid "LFE" +msgstr "LFE" + +#: ../ukui-volume-control/gvc-utils.c:65 +msgid "Rear Left" +msgstr "左後" + +#: ../ukui-volume-control/gvc-utils.c:66 +msgid "Rear Right" +msgstr "右後" + +#: ../ukui-volume-control/gvc-utils.c:67 +msgid "Rear Center" +msgstr "中後" + +#: ../ukui-volume-control/gvc-utils.c:68 +msgid "Front Left of Center" +msgstr "中央左前" + +#: ../ukui-volume-control/gvc-utils.c:69 +msgid "Front Right of Center" +msgstr "中央右前" + +#: ../ukui-volume-control/gvc-utils.c:70 +msgid "Side Left" +msgstr "左邊" + +#: ../ukui-volume-control/gvc-utils.c:71 +msgid "Side Right" +msgstr "右邊" + +#: ../ukui-volume-control/gvc-utils.c:72 +msgid "Top Front Left" +msgstr "前方左上" + +#: ../ukui-volume-control/gvc-utils.c:73 +msgid "Top Front Right" +msgstr "前方右上" + +#: ../ukui-volume-control/gvc-utils.c:74 +msgid "Top Front Center" +msgstr "前方中上" + +#: ../ukui-volume-control/gvc-utils.c:75 +msgid "Top Center" +msgstr "上中" + +#: ../ukui-volume-control/gvc-utils.c:76 +msgid "Top Rear Left" +msgstr "後方左上" + +#: ../ukui-volume-control/gvc-utils.c:77 +msgid "Top Rear Right" +msgstr "後方右上" + +#: ../ukui-volume-control/gvc-utils.c:78 +msgid "Top Rear Center" +msgstr "後方中上" + +#: ../ukui-volume-control/gvc-utils.c:113 +msgid "Stereo" +msgstr "立體聲" + +#: ../ukui-volume-control/gvc-utils.c:120 +msgid "Surround 4.0" +msgstr "環繞 4.0" + +#: ../ukui-volume-control/gvc-utils.c:128 +msgid "Surround 4.1" +msgstr "環繞 4.1" + +#: ../ukui-volume-control/gvc-utils.c:130 +msgid "Surround 5.0" +msgstr "環繞 5.0" + +#: ../ukui-volume-control/gvc-utils.c:140 +msgid "Surround 5.1" +msgstr "環繞 5.1" + +#: ../ukui-volume-control/gvc-utils.c:151 +msgid "Surround 7.1" +msgstr "環繞 7.1" diff --git a/scripts/detection_output_mode.sh b/scripts/detection_output_mode.sh new file mode 100755 index 0000000..b0f07e1 --- /dev/null +++ b/scripts/detection_output_mode.sh @@ -0,0 +1,27 @@ +#!/bin/bash +for USER in $(who | grep tty | awk '{print $1}' | sort | uniq);do + USER_NAME=$USER +# USER_NAME=$USER + USER_ID=$(id -u "$USER_NAME") + PULSE_SERVER="unix:/run/user/"$USER_ID"/pulse/native" + OUTPUT_MODE="not available" + FIND_STR=" analog-output" + sudo -H -u ${USER_NAME} pactl --server $PULSE_SERVER list cards |grep analog-output > /tmp/kylin_headphone.tmp + while read line;do + index="$line" + echo $line + if [ -n "$index" ];then + OUTPUT_MODE=${index#*usec, } + OUTPUT_MODE=${OUTPUT_MODE%%)} + echo "输出模式为" $OUTPUT_MODE + fi + if [[ $line =~ "analog-output-speaker" ]] && [[ $OUTPUT_MODE == "available" ]];then + exit 0 + elif [[ $line =~ "analog-output-headphone" ]] && [[ $OUTPUT_MODE == "available" ]];then + exit 1 + fi + done < /tmp/kylin_headphone.tmp +done + +rm -rf /tmp/kylin_headphone.tmp +exit -1 diff --git a/ukui-media-control-led/main.cpp b/ukui-media-control-led/main.cpp new file mode 100644 index 0000000..2464996 --- /dev/null +++ b/ukui-media-control-led/main.cpp @@ -0,0 +1,12 @@ +#include "ukui_media_control_led.h" +//#include +#include + +int main(int argc, char *argv[]) +{ + QCoreApplication a(argc, argv); + + UkuiMediaControlLed control; + + return a.exec(); +} diff --git a/ukui-media-control-led/ukui-media-control-led.pro b/ukui-media-control-led/ukui-media-control-led.pro new file mode 100644 index 0000000..4ff21bb --- /dev/null +++ b/ukui-media-control-led/ukui-media-control-led.pro @@ -0,0 +1,34 @@ +#------------------------------------------------- +# +# Project created by QtCreator 2021-01-03T20:04:12 +# +#------------------------------------------------- + +QT += core gui dbus + +#greaterThan(QT_MAJOR_VERSION, 4): QT += widgets + +TARGET = ukui-media-control-led +TEMPLATE = app + +# The following define makes your compiler emit warnings if you use +# any feature of Qt which as been marked as deprecated (the exact warnings +# depend on your compiler). Please consult the documentation of the +# deprecated API in order to know how to port your code away from it. +DEFINES += QT_DEPRECATED_WARNINGS + +# You can also make your code fail to compile if you use deprecated APIs. +# In order to do so, uncomment the following line. +# You can also select to disable deprecated APIs only up to a certain version of Qt. +#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 +target.path = /usr/bin + +SOURCES += \ + main.cpp \ + ukui_media_control_led.cpp + +HEADERS += \ + ukui_media_control_led.h + +INSTALLS += \ + target diff --git a/ukui-media-control-led/ukui_media_control_led.cpp b/ukui-media-control-led/ukui_media_control_led.cpp new file mode 100644 index 0000000..1096cff --- /dev/null +++ b/ukui-media-control-led/ukui_media_control_led.cpp @@ -0,0 +1,48 @@ +#include "ukui_media_control_led.h" +#include +#include +#include +#include +#include +#include +#include + +UkuiMediaControlLed::UkuiMediaControlLed() +{ + QDBusConnection::systemBus().connect(QString(),"/","org.ukui.media","systemOutputVolumeIsMute",this,SLOT(outputMuteChanged(QString))); + QDBusConnection::systemBus().connect(QString(),"/","org.ukui.media","systemInputVolumeIsMute",this,SLOT(inputMuteChanged(QString))); +} + +void UkuiMediaControlLed::outputMuteChanged(QString str) +{ + qDebug() << "muted" < /sys/class/leds/platform::mute/brightness"); + } + else if (strstr(str.toLatin1().data(),"no")) { + qDebug() << "输出音量取消静音"; + system("echo 0 > /sys/class/leds/platform::mute/brightness"); + } +} + + +void UkuiMediaControlLed::inputMuteChanged(QString str) +{ + qDebug() << "muted" < /sys/class/leds/platform::micmute/brightness"); + + } + else if (strstr(str.toLatin1().data(),"no")) { + qDebug() << "输入音量取消静音"; + system("echo 0 > /sys/class/leds/platform::micmute/brightness"); + } +} + + +UkuiMediaControlLed::~UkuiMediaControlLed() +{ + +} diff --git a/ukui-media-control-led/ukui_media_control_led.h b/ukui-media-control-led/ukui_media_control_led.h new file mode 100644 index 0000000..604eaac --- /dev/null +++ b/ukui-media-control-led/ukui_media_control_led.h @@ -0,0 +1,23 @@ +#ifndef MATE_MEDIA_CONTROL_LED_H +#define MATE_MEDIA_CONTROL_LED_H + +#include +#include +#include + +class UkuiMediaControlLed : public QObject +{ + Q_OBJECT +public: + UkuiMediaControlLed(); + ~UkuiMediaControlLed(); + +private slots: + void outputMuteChanged(QString str); + void inputMuteChanged(QString str); + +private: + +}; + +#endif // MATE_MEDIA_CONTROL_LED_H diff --git a/ukui-media.pro b/ukui-media.pro new file mode 100644 index 0000000..7bc990b --- /dev/null +++ b/ukui-media.pro @@ -0,0 +1,10 @@ +TEMPLATE = subdirs + +CONFIG += ordered + +SUBDIRS = \ + audio \ + ukui-volume-control-applet-qt \ + ukui-media-control-led + + diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/QtLockedFile b/ukui-volume-control-applet-qt/QtSingleApplication/QtLockedFile new file mode 100644 index 0000000..16b48ba --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/QtLockedFile @@ -0,0 +1 @@ +#include "qtlockedfile.h" diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/QtSingleApplication b/ukui-volume-control-applet-qt/QtSingleApplication/QtSingleApplication new file mode 100644 index 0000000..d111bf7 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/QtSingleApplication @@ -0,0 +1 @@ +#include "qtsingleapplication.h" diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.cpp b/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.cpp new file mode 100644 index 0000000..cd1fb58 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.cpp @@ -0,0 +1,213 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include "qtlocalpeer.h" +#include +#include +#include + +#if defined(Q_OS_WIN) +#include +#include +typedef BOOL(WINAPI*PProcessIdToSessionId)(DWORD,DWORD*); +static PProcessIdToSessionId pProcessIdToSessionId = 0; +#endif +#if defined(Q_OS_UNIX) +#include +#include +#include +#endif + +namespace QtLP_Private { +#include "qtlockedfile.cpp" +#if defined(Q_OS_WIN) +#include "qtlockedfile_win.cpp" +#else +#include "qtlockedfile_unix.cpp" +#endif +} + +const char* QtLocalPeer::ack = "ack"; + +QtLocalPeer::QtLocalPeer(QObject* parent, const QString &appId) + : QObject(parent), id(appId) +{ + QString prefix = id; + if (id.isEmpty()) { + id = QCoreApplication::applicationFilePath(); +#if defined(Q_OS_WIN) + id = id.toLower(); +#endif + prefix = id.section(QLatin1Char('/'), -1); + } + prefix.remove(QRegExp("[^a-zA-Z]")); + prefix.truncate(6); + + QByteArray idc = id.toUtf8(); + quint16 idNum = qChecksum(idc.constData(), idc.size()); + socketName = QLatin1String("qtsingleapp-") + prefix + + QLatin1Char('-') + QString::number(idNum, 16); + +#if defined(Q_OS_WIN) + if (!pProcessIdToSessionId) { + QLibrary lib("kernel32"); + pProcessIdToSessionId = (PProcessIdToSessionId)lib.resolve("ProcessIdToSessionId"); + } + if (pProcessIdToSessionId) { + DWORD sessionId = 0; + pProcessIdToSessionId(GetCurrentProcessId(), &sessionId); + socketName += QLatin1Char('-') + QString::number(sessionId, 16); + } +#else + socketName += QLatin1Char('-') + QString::number(::getuid(), 16); +#endif + + server = new QLocalServer(this); + QString lockName = QDir(QDir::tempPath()).absolutePath() + + QLatin1Char('/') + socketName + + QLatin1String("-lockfile"); + lockFile.setFileName(lockName); + lockFile.open(QIODevice::ReadWrite); +} + + + +bool QtLocalPeer::isClient() +{ + if (lockFile.isLocked()) + return false; + + if (!lockFile.lock(QtLP_Private::QtLockedFile::WriteLock, false)) + return true; + + bool res = server->listen(socketName); +#if defined(Q_OS_UNIX) && (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) + // ### Workaround + if (!res && server->serverError() == QAbstractSocket::AddressInUseError) { + QFile::remove(QDir::cleanPath(QDir::tempPath())+QLatin1Char('/')+socketName); + res = server->listen(socketName); + } +#endif + if (!res) + qWarning("QtSingleCoreApplication: listen on local socket failed, %s", qPrintable(server->errorString())); + QObject::connect(server, SIGNAL(newConnection()), SLOT(receiveConnection())); + return false; +} + + +bool QtLocalPeer::sendMessage(const QString &message, int timeout) +{ + if (!isClient()) + return false; + + QLocalSocket socket; + bool connOk = false; + for(int i = 0; i < 2; i++) { + // Try twice, in case the other instance is just starting up + socket.connectToServer(socketName); + connOk = socket.waitForConnected(timeout/2); + if (connOk || i) + break; + int ms = 250; +#if defined(Q_OS_WIN) + Sleep(DWORD(ms)); +#else + struct timespec ts = { ms / 1000, (ms % 1000) * 1000 * 1000 }; + nanosleep(&ts, NULL); +#endif + } + if (!connOk) + return false; + + QByteArray uMsg(message.toUtf8()); + QDataStream ds(&socket); + ds.writeBytes(uMsg.constData(), uMsg.size()); + bool res = socket.waitForBytesWritten(timeout); + if (res) { + res &= socket.waitForReadyRead(timeout); // wait for ack + if (res) + res &= (socket.read(qstrlen(ack)) == ack); + } + return res; +} + + +void QtLocalPeer::receiveConnection() +{ + QLocalSocket* socket = server->nextPendingConnection(); + if (!socket) + return; + + while (true) { + if (socket->state() == QLocalSocket::UnconnectedState) { + qWarning("QtLocalPeer: Peer disconnected"); + delete socket; + return; + } + if (socket->bytesAvailable() >= qint64(sizeof(quint32))) + break; + socket->waitForReadyRead(); + } + + QDataStream ds(socket); + QByteArray uMsg; + quint32 remaining; + ds >> remaining; + uMsg.resize(remaining); + int got = 0; + char* uMsgBuf = uMsg.data(); + do { + got = ds.readRawData(uMsgBuf, remaining); + remaining -= got; + uMsgBuf += got; + } while (remaining && got >= 0 && socket->waitForReadyRead(2000)); + if (got < 0) { + qWarning("QtLocalPeer: Message reception failed %s", socket->errorString().toLatin1().constData()); + delete socket; + return; + } + QString message(QString::fromUtf8(uMsg)); + socket->write(ack, qstrlen(ack)); + socket->waitForBytesWritten(1000); + socket->waitForDisconnected(1000); // make sure client reads ack + delete socket; + Q_EMIT messageReceived(message); //### (might take a long time to return) +} diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.h b/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.h new file mode 100644 index 0000000..1b533b1 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtlocalpeer.h @@ -0,0 +1,77 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTLOCALPEER_H +#define QTLOCALPEER_H + +#include +#include +#include + +#include "qtlockedfile.h" + +class QtLocalPeer : public QObject +{ + Q_OBJECT + +public: + QtLocalPeer(QObject *parent = 0, const QString &appId = QString()); + bool isClient(); + bool sendMessage(const QString &message, int timeout); + QString applicationId() const + { return id; } + +Q_SIGNALS: + void messageReceived(const QString &message); + +protected Q_SLOTS: + void receiveConnection(); + +protected: + QString id; + QString socketName; + QLocalServer* server; + QtLP_Private::QtLockedFile lockFile; + +private: + static const char* ack; +}; + +#endif // QTLOCALPEER_H diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.cpp b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.cpp new file mode 100644 index 0000000..c142a86 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.cpp @@ -0,0 +1,193 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qtlockedfile.h" + +/*! + \class QtLockedFile + + \brief The QtLockedFile class extends QFile with advisory locking + functions. + + A file may be locked in read or write mode. Multiple instances of + \e QtLockedFile, created in multiple processes running on the same + machine, may have a file locked in read mode. Exactly one instance + may have it locked in write mode. A read and a write lock cannot + exist simultaneously on the same file. + + The file locks are advisory. This means that nothing prevents + another process from manipulating a locked file using QFile or + file system functions offered by the OS. Serialization is only + guaranteed if all processes that access the file use + QLockedFile. Also, while holding a lock on a file, a process + must not open the same file again (through any API), or locks + can be unexpectedly lost. + + The lock provided by an instance of \e QtLockedFile is released + whenever the program terminates. This is true even when the + program crashes and no destructors are called. +*/ + +/*! \enum QtLockedFile::LockMode + + This enum describes the available lock modes. + + \value ReadLock A read lock. + \value WriteLock A write lock. + \value NoLock Neither a read lock nor a write lock. +*/ + +/*! + Constructs an unlocked \e QtLockedFile object. This constructor + behaves in the same way as \e QFile::QFile(). + + \sa QFile::QFile() +*/ +QtLockedFile::QtLockedFile() + : QFile() +{ +#ifdef Q_OS_WIN + wmutex = 0; + rmutex = 0; +#endif + m_lock_mode = NoLock; +} + +/*! + Constructs an unlocked QtLockedFile object with file \a name. This + constructor behaves in the same way as \e QFile::QFile(const + QString&). + + \sa QFile::QFile() +*/ +QtLockedFile::QtLockedFile(const QString &name) + : QFile(name) +{ +#ifdef Q_OS_WIN + wmutex = 0; + rmutex = 0; +#endif + m_lock_mode = NoLock; +} + +/*! + Opens the file in OpenMode \a mode. + + This is identical to QFile::open(), with the one exception that the + Truncate mode flag is disallowed. Truncation would conflict with the + advisory file locking, since the file would be modified before the + write lock is obtained. If truncation is required, use resize(0) + after obtaining the write lock. + + Returns true if successful; otherwise false. + + \sa QFile::open(), QFile::resize() +*/ +bool QtLockedFile::open(OpenMode mode) +{ + if (mode & QIODevice::Truncate) { + qWarning("QtLockedFile::open(): Truncate mode not allowed."); + return false; + } + return QFile::open(mode); +} + +/*! + Returns \e true if this object has a in read or write lock; + otherwise returns \e false. + + \sa lockMode() +*/ +bool QtLockedFile::isLocked() const +{ + return m_lock_mode != NoLock; +} + +/*! + Returns the type of lock currently held by this object, or \e + QtLockedFile::NoLock. + + \sa isLocked() +*/ +QtLockedFile::LockMode QtLockedFile::lockMode() const +{ + return m_lock_mode; +} + +/*! + \fn bool QtLockedFile::lock(LockMode mode, bool block = true) + + Obtains a lock of type \a mode. The file must be opened before it + can be locked. + + If \a block is true, this function will block until the lock is + aquired. If \a block is false, this function returns \e false + immediately if the lock cannot be aquired. + + If this object already has a lock of type \a mode, this function + returns \e true immediately. If this object has a lock of a + different type than \a mode, the lock is first released and then a + new lock is obtained. + + This function returns \e true if, after it executes, the file is + locked by this object, and \e false otherwise. + + \sa unlock(), isLocked(), lockMode() +*/ + +/*! + \fn bool QtLockedFile::unlock() + + Releases a lock. + + If the object has no lock, this function returns immediately. + + This function returns \e true if, after it executes, the file is + not locked by this object, and \e false otherwise. + + \sa lock(), isLocked(), lockMode() +*/ + +/*! + \fn QtLockedFile::~QtLockedFile() + + Destroys the \e QtLockedFile object. If any locks were held, they + are released. +*/ diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.h b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.h new file mode 100644 index 0000000..84c18e5 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile.h @@ -0,0 +1,97 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTLOCKEDFILE_H +#define QTLOCKEDFILE_H + +#include +#ifdef Q_OS_WIN +#include +#endif + +#if defined(Q_OS_WIN) +# if !defined(QT_QTLOCKEDFILE_EXPORT) && !defined(QT_QTLOCKEDFILE_IMPORT) +# define QT_QTLOCKEDFILE_EXPORT +# elif defined(QT_QTLOCKEDFILE_IMPORT) +# if defined(QT_QTLOCKEDFILE_EXPORT) +# undef QT_QTLOCKEDFILE_EXPORT +# endif +# define QT_QTLOCKEDFILE_EXPORT __declspec(dllimport) +# elif defined(QT_QTLOCKEDFILE_EXPORT) +# undef QT_QTLOCKEDFILE_EXPORT +# define QT_QTLOCKEDFILE_EXPORT __declspec(dllexport) +# endif +#else +# define QT_QTLOCKEDFILE_EXPORT +#endif + +namespace QtLP_Private { + +class QT_QTLOCKEDFILE_EXPORT QtLockedFile : public QFile +{ +public: + enum LockMode { NoLock = 0, ReadLock, WriteLock }; + + QtLockedFile(); + QtLockedFile(const QString &name); + ~QtLockedFile(); + + bool open(OpenMode mode); + + bool lock(LockMode mode, bool block = true); + bool unlock(); + bool isLocked() const; + LockMode lockMode() const; + +private: +#ifdef Q_OS_WIN + Qt::HANDLE wmutex; + Qt::HANDLE rmutex; + QVector rmutexes; + QString mutexname; + + Qt::HANDLE getMutexHandle(int idx, bool doCreate); + bool waitMutex(Qt::HANDLE mutex, bool doBlock); + +#endif + LockMode m_lock_mode; +}; +} +#endif diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_unix.cpp b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_unix.cpp new file mode 100644 index 0000000..976c1b9 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_unix.cpp @@ -0,0 +1,115 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include +#include +#include +#include + +#include "qtlockedfile.h" + +bool QtLockedFile::lock(LockMode mode, bool block) +{ + if (!isOpen()) { + qWarning("QtLockedFile::lock(): file is not opened"); + return false; + } + + if (mode == NoLock) + return unlock(); + + if (mode == m_lock_mode) + return true; + + if (m_lock_mode != NoLock) + unlock(); + + struct flock fl; + fl.l_whence = SEEK_SET; + fl.l_start = 0; + fl.l_len = 0; + fl.l_type = (mode == ReadLock) ? F_RDLCK : F_WRLCK; + int cmd = block ? F_SETLKW : F_SETLK; + int ret = fcntl(handle(), cmd, &fl); + + if (ret == -1) { + if (errno != EINTR && errno != EAGAIN) + qWarning("QtLockedFile::lock(): fcntl: %s", strerror(errno)); + return false; + } + + + m_lock_mode = mode; + return true; +} + + +bool QtLockedFile::unlock() +{ + if (!isOpen()) { + qWarning("QtLockedFile::unlock(): file is not opened"); + return false; + } + + if (!isLocked()) + return true; + + struct flock fl; + fl.l_whence = SEEK_SET; + fl.l_start = 0; + fl.l_len = 0; + fl.l_type = F_UNLCK; + int ret = fcntl(handle(), F_SETLKW, &fl); + + if (ret == -1) { + qWarning("QtLockedFile::lock(): fcntl: %s", strerror(errno)); + return false; + } + + m_lock_mode = NoLock; + return true; +} + +QtLockedFile::~QtLockedFile() +{ + if (isOpen()) + unlock(); +} + diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_win.cpp b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_win.cpp new file mode 100644 index 0000000..5e21262 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtlockedfile_win.cpp @@ -0,0 +1,211 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qtlockedfile.h" +#include +#include + +#define MUTEX_PREFIX "QtLockedFile mutex " +// Maximum number of concurrent read locks. Must not be greater than MAXIMUM_WAIT_OBJECTS +#define MAX_READERS MAXIMUM_WAIT_OBJECTS + +#if QT_VERSION >= 0x050000 +#define QT_WA(unicode, ansi) unicode +#endif + +Qt::HANDLE QtLockedFile::getMutexHandle(int idx, bool doCreate) +{ + if (mutexname.isEmpty()) { + QFileInfo fi(*this); + mutexname = QString::fromLatin1(MUTEX_PREFIX) + + fi.absoluteFilePath().toLower(); + } + QString mname(mutexname); + if (idx >= 0) + mname += QString::number(idx); + + Qt::HANDLE mutex; + if (doCreate) { + QT_WA( { mutex = CreateMutexW(NULL, FALSE, (TCHAR*)mname.utf16()); }, + { mutex = CreateMutexA(NULL, FALSE, mname.toLocal8Bit().constData()); } ); + if (!mutex) { + qErrnoWarning("QtLockedFile::lock(): CreateMutex failed"); + return 0; + } + } + else { + QT_WA( { mutex = OpenMutexW(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, (TCHAR*)mname.utf16()); }, + { mutex = OpenMutexA(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, mname.toLocal8Bit().constData()); } ); + if (!mutex) { + if (GetLastError() != ERROR_FILE_NOT_FOUND) + qErrnoWarning("QtLockedFile::lock(): OpenMutex failed"); + return 0; + } + } + return mutex; +} + +bool QtLockedFile::waitMutex(Qt::HANDLE mutex, bool doBlock) +{ + Q_ASSERT(mutex); + DWORD res = WaitForSingleObject(mutex, doBlock ? INFINITE : 0); + switch (res) { + case WAIT_OBJECT_0: + case WAIT_ABANDONED: + return true; + break; + case WAIT_TIMEOUT: + break; + default: + qErrnoWarning("QtLockedFile::lock(): WaitForSingleObject failed"); + } + return false; +} + + + +bool QtLockedFile::lock(LockMode mode, bool block) +{ + if (!isOpen()) { + qWarning("QtLockedFile::lock(): file is not opened"); + return false; + } + + if (mode == NoLock) + return unlock(); + + if (mode == m_lock_mode) + return true; + + if (m_lock_mode != NoLock) + unlock(); + + if (!wmutex && !(wmutex = getMutexHandle(-1, true))) + return false; + + if (!waitMutex(wmutex, block)) + return false; + + if (mode == ReadLock) { + int idx = 0; + for (; idx < MAX_READERS; idx++) { + rmutex = getMutexHandle(idx, false); + if (!rmutex || waitMutex(rmutex, false)) + break; + CloseHandle(rmutex); + } + bool ok = true; + if (idx >= MAX_READERS) { + qWarning("QtLockedFile::lock(): too many readers"); + rmutex = 0; + ok = false; + } + else if (!rmutex) { + rmutex = getMutexHandle(idx, true); + if (!rmutex || !waitMutex(rmutex, false)) + ok = false; + } + if (!ok && rmutex) { + CloseHandle(rmutex); + rmutex = 0; + } + ReleaseMutex(wmutex); + if (!ok) + return false; + } + else { + Q_ASSERT(rmutexes.isEmpty()); + for (int i = 0; i < MAX_READERS; i++) { + Qt::HANDLE mutex = getMutexHandle(i, false); + if (mutex) + rmutexes.append(mutex); + } + if (rmutexes.size()) { + DWORD res = WaitForMultipleObjects(rmutexes.size(), rmutexes.constData(), + TRUE, block ? INFINITE : 0); + if (res != WAIT_OBJECT_0 && res != WAIT_ABANDONED) { + if (res != WAIT_TIMEOUT) + qErrnoWarning("QtLockedFile::lock(): WaitForMultipleObjects failed"); + m_lock_mode = WriteLock; // trick unlock() to clean up - semiyucky + unlock(); + return false; + } + } + } + + m_lock_mode = mode; + return true; +} + +bool QtLockedFile::unlock() +{ + if (!isOpen()) { + qWarning("QtLockedFile::unlock(): file is not opened"); + return false; + } + + if (!isLocked()) + return true; + + if (m_lock_mode == ReadLock) { + ReleaseMutex(rmutex); + CloseHandle(rmutex); + rmutex = 0; + } + else { + foreach(Qt::HANDLE mutex, rmutexes) { + ReleaseMutex(mutex); + CloseHandle(mutex); + } + rmutexes.clear(); + ReleaseMutex(wmutex); + } + + m_lock_mode = QtLockedFile::NoLock; + return true; +} + +QtLockedFile::~QtLockedFile() +{ + if (isOpen()) + unlock(); + if (wmutex) + CloseHandle(wmutex); +} diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.cpp b/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.cpp new file mode 100644 index 0000000..bc2943a --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.cpp @@ -0,0 +1,348 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include "qtsingleapplication.h" +#include "qtlocalpeer.h" +#include + + +/*! + \class QtSingleApplication qtsingleapplication.h + \brief The QtSingleApplication class provides an API to detect and + communicate with running instances of an application. + + This class allows you to create applications where only one + instance should be running at a time. I.e., if the user tries to + launch another instance, the already running instance will be + activated instead. Another usecase is a client-server system, + where the first started instance will assume the role of server, + and the later instances will act as clients of that server. + + By default, the full path of the executable file is used to + determine whether two processes are instances of the same + application. You can also provide an explicit identifier string + that will be compared instead. + + The application should create the QtSingleApplication object early + in the startup phase, and call isRunning() to find out if another + instance of this application is already running. If isRunning() + returns false, it means that no other instance is running, and + this instance has assumed the role as the running instance. In + this case, the application should continue with the initialization + of the application user interface before entering the event loop + with exec(), as normal. + + The messageReceived() signal will be emitted when the running + application receives messages from another instance of the same + application. When a message is received it might be helpful to the + user to raise the application so that it becomes visible. To + facilitate this, QtSingleApplication provides the + setActivationWindow() function and the activateWindow() slot. + + If isRunning() returns true, another instance is already + running. It may be alerted to the fact that another instance has + started by using the sendMessage() function. Also data such as + startup parameters (e.g. the name of the file the user wanted this + new instance to open) can be passed to the running instance with + this function. Then, the application should terminate (or enter + client mode). + + If isRunning() returns true, but sendMessage() fails, that is an + indication that the running instance is frozen. + + Here's an example that shows how to convert an existing + application to use QtSingleApplication. It is very simple and does + not make use of all QtSingleApplication's functionality (see the + examples for that). + + \code + // Original + int main(int argc, char **argv) + { + QApplication app(argc, argv); + + MyMainWidget mmw; + mmw.show(); + return app.exec(); + } + + // Single instance + int main(int argc, char **argv) + { + QtSingleApplication app(argc, argv); + + if (app.isRunning()) + return !app.sendMessage(someDataString); + + MyMainWidget mmw; + app.setActivationWindow(&mmw); + mmw.show(); + return app.exec(); + } + \endcode + + Once this QtSingleApplication instance is destroyed (normally when + the process exits or crashes), when the user next attempts to run the + application this instance will not, of course, be encountered. The + next instance to call isRunning() or sendMessage() will assume the + role as the new running instance. + + For console (non-GUI) applications, QtSingleCoreApplication may be + used instead of this class, to avoid the dependency on the QtGui + library. + + \sa QtSingleCoreApplication +*/ + + +void QtSingleApplication::sysInit(const QString &appId) +{ + actWin = 0; + peer = new QtLocalPeer(this, appId); + connect(peer, SIGNAL(messageReceived(const QString&)), SIGNAL(messageReceived(const QString&))); +} + + +/*! + Creates a QtSingleApplication object. The application identifier + will be QCoreApplication::applicationFilePath(). \a argc, \a + argv, and \a GUIenabled are passed on to the QAppliation constructor. + + If you are creating a console application (i.e. setting \a + GUIenabled to false), you may consider using + QtSingleCoreApplication instead. +*/ + +QtSingleApplication::QtSingleApplication(int &argc, char **argv, bool GUIenabled) + : QApplication(argc, argv, GUIenabled) +{ + sysInit(); +} + + +/*! + Creates a QtSingleApplication object with the application + identifier \a appId. \a argc and \a argv are passed on to the + QAppliation constructor. +*/ + +QtSingleApplication::QtSingleApplication(const QString &appId, int &argc, char **argv) + : QApplication(argc, argv) +{ + sysInit(appId); +} + +#if QT_VERSION < 0x050000 + +/*! + Creates a QtSingleApplication object. The application identifier + will be QCoreApplication::applicationFilePath(). \a argc, \a + argv, and \a type are passed on to the QAppliation constructor. +*/ +QtSingleApplication::QtSingleApplication(int &argc, char **argv, Type type) + : QApplication(argc, argv, type) +{ + sysInit(); +} + + +# if defined(Q_WS_X11) +/*! + Special constructor for X11, ref. the documentation of + QApplication's corresponding constructor. The application identifier + will be QCoreApplication::applicationFilePath(). \a dpy, \a visual, + and \a cmap are passed on to the QApplication constructor. +*/ +QtSingleApplication::QtSingleApplication(Display* dpy, Qt::HANDLE visual, Qt::HANDLE cmap) + : QApplication(dpy, visual, cmap) +{ + sysInit(); +} + +/*! + Special constructor for X11, ref. the documentation of + QApplication's corresponding constructor. The application identifier + will be QCoreApplication::applicationFilePath(). \a dpy, \a argc, \a + argv, \a visual, and \a cmap are passed on to the QApplication + constructor. +*/ +QtSingleApplication::QtSingleApplication(Display *dpy, int &argc, char **argv, Qt::HANDLE visual, Qt::HANDLE cmap) + : QApplication(dpy, argc, argv, visual, cmap) +{ + sysInit(); +} + +/*! + Special constructor for X11, ref. the documentation of + QApplication's corresponding constructor. The application identifier + will be \a appId. \a dpy, \a argc, \a + argv, \a visual, and \a cmap are passed on to the QApplication + constructor. +*/ +QtSingleApplication::QtSingleApplication(Display* dpy, const QString &appId, int argc, char **argv, Qt::HANDLE visual, Qt::HANDLE cmap) + : QApplication(dpy, argc, argv, visual, cmap) +{ + sysInit(appId); +} +# endif // Q_WS_X11 +#endif // QT_VERSION < 0x050000 + + +/*! + Returns true if another instance of this application is running; + otherwise false. + + This function does not find instances of this application that are + being run by a different user (on Windows: that are running in + another session). + + \sa sendMessage() +*/ + +bool QtSingleApplication::isRunning() +{ + return peer->isClient(); +} + + +/*! + Tries to send the text \a message to the currently running + instance. The QtSingleApplication object in the running instance + will emit the messageReceived() signal when it receives the + message. + + This function returns true if the message has been sent to, and + processed by, the current instance. If there is no instance + currently running, or if the running instance fails to process the + message within \a timeout milliseconds, this function return false. + + \sa isRunning(), messageReceived() +*/ +bool QtSingleApplication::sendMessage(const QString &message, int timeout) +{ + return peer->sendMessage(message, timeout); +} + + +/*! + Returns the application identifier. Two processes with the same + identifier will be regarded as instances of the same application. +*/ +QString QtSingleApplication::id() const +{ + return peer->applicationId(); +} + + +/*! + Sets the activation window of this application to \a aw. The + activation window is the widget that will be activated by + activateWindow(). This is typically the application's main window. + + If \a activateOnMessage is true (the default), the window will be + activated automatically every time a message is received, just prior + to the messageReceived() signal being emitted. + + \sa activateWindow(), messageReceived() +*/ + +void QtSingleApplication::setActivationWindow(QWidget* aw, bool activateOnMessage) +{ + actWin = aw; + if (activateOnMessage) + connect(peer, SIGNAL(messageReceived(const QString&)), this, SLOT(activateWindow())); + else + disconnect(peer, SIGNAL(messageReceived(const QString&)), this, SLOT(activateWindow())); +} + + +/*! + Returns the applications activation window if one has been set by + calling setActivationWindow(), otherwise returns 0. + + \sa setActivationWindow() +*/ +QWidget* QtSingleApplication::activationWindow() const +{ + return actWin; +} + + +/*! + De-minimizes, raises, and activates this application's activation window. + This function does nothing if no activation window has been set. + + This is a convenience function to show the user that this + application instance has been activated when he has tried to start + another instance. + + This function should typically be called in response to the + messageReceived() signal. By default, that will happen + automatically, if an activation window has been set. + + \sa setActivationWindow(), messageReceived(), initialize() +*/ +void QtSingleApplication::activateWindow() +{ + if (actWin) { + actWin->setWindowState(actWin->windowState() & ~Qt::WindowMinimized); + actWin->raise(); + actWin->showNormal(); + actWin->activateWindow(); + } +} + + +/*! + \fn void QtSingleApplication::messageReceived(const QString& message) + + This signal is emitted when the current instance receives a \a + message from another instance of this application. + + \sa sendMessage(), setActivationWindow(), activateWindow() +*/ + + +/*! + \fn void QtSingleApplication::initialize(bool dummy = true) + + \obsolete +*/ diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.h b/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.h new file mode 100644 index 0000000..049406f --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.h @@ -0,0 +1,105 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTSINGLEAPPLICATION_H +#define QTSINGLEAPPLICATION_H + +#include + +class QtLocalPeer; + +#if defined(Q_OS_WIN) +# if !defined(QT_QTSINGLEAPPLICATION_EXPORT) && !defined(QT_QTSINGLEAPPLICATION_IMPORT) +# define QT_QTSINGLEAPPLICATION_EXPORT +# elif defined(QT_QTSINGLEAPPLICATION_IMPORT) +# if defined(QT_QTSINGLEAPPLICATION_EXPORT) +# undef QT_QTSINGLEAPPLICATION_EXPORT +# endif +# define QT_QTSINGLEAPPLICATION_EXPORT __declspec(dllimport) +# elif defined(QT_QTSINGLEAPPLICATION_EXPORT) +# undef QT_QTSINGLEAPPLICATION_EXPORT +# define QT_QTSINGLEAPPLICATION_EXPORT __declspec(dllexport) +# endif +#else +# define QT_QTSINGLEAPPLICATION_EXPORT +#endif + +class QT_QTSINGLEAPPLICATION_EXPORT QtSingleApplication : public QApplication +{ + Q_OBJECT + +public: + QtSingleApplication(int &argc, char **argv, bool GUIenabled = true); + QtSingleApplication(const QString &id, int &argc, char **argv); +#if QT_VERSION < 0x050000 + QtSingleApplication(int &argc, char **argv, Type type); +# if defined(Q_WS_X11) + QtSingleApplication(Display* dpy, Qt::HANDLE visual = 0, Qt::HANDLE colormap = 0); + QtSingleApplication(Display *dpy, int &argc, char **argv, Qt::HANDLE visual = 0, Qt::HANDLE cmap= 0); + QtSingleApplication(Display* dpy, const QString &appId, int argc, char **argv, Qt::HANDLE visual = 0, Qt::HANDLE colormap = 0); +# endif // Q_WS_X11 +#endif // QT_VERSION < 0x050000 + + bool isRunning(); + QString id() const; + + void setActivationWindow(QWidget* aw, bool activateOnMessage = true); + QWidget* activationWindow() const; + + // Obsolete: + void initialize(bool dummy = true) + { isRunning(); Q_UNUSED(dummy) } + +public Q_SLOTS: + bool sendMessage(const QString &message, int timeout = 5000); + void activateWindow(); + + +Q_SIGNALS: + void messageReceived(const QString &message); + + +private: + void sysInit(const QString &appId = QString()); + QtLocalPeer *peer; + QWidget *actWin; +}; + +#endif // QTSINGLEAPPLICATION_H diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.pri b/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.pri new file mode 100644 index 0000000..1d85285 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtsingleapplication.pri @@ -0,0 +1,16 @@ +INCLUDEPATH += $$PWD +DEPENDPATH += $$PWD +QT *= network +greaterThan(QT_MAJOR_VERSION, 4): QT *= widgets + +qtsingleapplication-uselib:!qtsingleapplication-buildlib { + LIBS += -L$$QTSINGLEAPPLICATION_LIBDIR -l$$QTSINGLEAPPLICATION_LIBNAME +} else { + SOURCES += $$PWD/qtsingleapplication.cpp $$PWD/qtlocalpeer.cpp + HEADERS += $$PWD/qtsingleapplication.h $$PWD/qtlocalpeer.h +} + +win32 { + contains(TEMPLATE, lib):contains(CONFIG, shared):DEFINES += QT_QTSINGLEAPPLICATION_EXPORT + else:qtsingleapplication-uselib:DEFINES += QT_QTSINGLEAPPLICATION_IMPORT +} diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.cpp b/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.cpp new file mode 100644 index 0000000..5634537 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.cpp @@ -0,0 +1,149 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + + +#include "qtsinglecoreapplication.h" +#include "qtlocalpeer.h" + +/*! + \class QtSingleCoreApplication qtsinglecoreapplication.h + \brief A variant of the QtSingleApplication class for non-GUI applications. + + This class is a variant of QtSingleApplication suited for use in + console (non-GUI) applications. It is an extension of + QCoreApplication (instead of QApplication). It does not require + the QtGui library. + + The API and usage is identical to QtSingleApplication, except that + functions relating to the "activation window" are not present, for + obvious reasons. Please refer to the QtSingleApplication + documentation for explanation of the usage. + + A QtSingleCoreApplication instance can communicate to a + QtSingleApplication instance if they share the same application + id. Hence, this class can be used to create a light-weight + command-line tool that sends commands to a GUI application. + + \sa QtSingleApplication +*/ + +/*! + Creates a QtSingleCoreApplication object. The application identifier + will be QCoreApplication::applicationFilePath(). \a argc and \a + argv are passed on to the QCoreAppliation constructor. +*/ + +QtSingleCoreApplication::QtSingleCoreApplication(int &argc, char **argv) + : QCoreApplication(argc, argv) +{ + peer = new QtLocalPeer(this); + connect(peer, SIGNAL(messageReceived(const QString&)), SIGNAL(messageReceived(const QString&))); +} + + +/*! + Creates a QtSingleCoreApplication object with the application + identifier \a appId. \a argc and \a argv are passed on to the + QCoreAppliation constructor. +*/ +QtSingleCoreApplication::QtSingleCoreApplication(const QString &appId, int &argc, char **argv) + : QCoreApplication(argc, argv) +{ + peer = new QtLocalPeer(this, appId); + connect(peer, SIGNAL(messageReceived(const QString&)), SIGNAL(messageReceived(const QString&))); +} + + +/*! + Returns true if another instance of this application is running; + otherwise false. + + This function does not find instances of this application that are + being run by a different user (on Windows: that are running in + another session). + + \sa sendMessage() +*/ + +bool QtSingleCoreApplication::isRunning() +{ + return peer->isClient(); +} + + +/*! + Tries to send the text \a message to the currently running + instance. The QtSingleCoreApplication object in the running instance + will emit the messageReceived() signal when it receives the + message. + + This function returns true if the message has been sent to, and + processed by, the current instance. If there is no instance + currently running, or if the running instance fails to process the + message within \a timeout milliseconds, this function return false. + + \sa isRunning(), messageReceived() +*/ + +bool QtSingleCoreApplication::sendMessage(const QString &message, int timeout) +{ + return peer->sendMessage(message, timeout); +} + + +/*! + Returns the application identifier. Two processes with the same + identifier will be regarded as instances of the same application. +*/ + +QString QtSingleCoreApplication::id() const +{ + return peer->applicationId(); +} + + +/*! + \fn void QtSingleCoreApplication::messageReceived(const QString& message) + + This signal is emitted when the current instance receives a \a + message from another instance of this application. + + \sa sendMessage() +*/ diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.h b/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.h new file mode 100644 index 0000000..b87fffe --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.h @@ -0,0 +1,71 @@ +/**************************************************************************** +** +** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt Solutions component. +** +** $QT_BEGIN_LICENSE:BSD$ +** You may use this file under the terms of the BSD license as follows: +** +** "Redistribution and use in source and binary forms, with or without +** modification, are permitted provided that the following conditions are +** met: +** * Redistributions of source code must retain the above copyright +** notice, this list of conditions and the following disclaimer. +** * Redistributions in binary form must reproduce the above copyright +** notice, this list of conditions and the following disclaimer in +** the documentation and/or other materials provided with the +** distribution. +** * Neither the name of Digia Plc and its Subsidiary(-ies) nor the names +** of its contributors may be used to endorse or promote products derived +** from this software without specific prior written permission. +** +** +** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QTSINGLECOREAPPLICATION_H +#define QTSINGLECOREAPPLICATION_H + +#include + +class QtLocalPeer; + +class QtSingleCoreApplication : public QCoreApplication +{ + Q_OBJECT + +public: + QtSingleCoreApplication(int &argc, char **argv); + QtSingleCoreApplication(const QString &id, int &argc, char **argv); + + bool isRunning(); + QString id() const; + +public Q_SLOTS: + bool sendMessage(const QString &message, int timeout = 5000); + + +Q_SIGNALS: + void messageReceived(const QString &message); + + +private: + QtLocalPeer* peer; +}; + +#endif // QTSINGLECOREAPPLICATION_H diff --git a/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.pri b/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.pri new file mode 100644 index 0000000..d2d6cc3 --- /dev/null +++ b/ukui-volume-control-applet-qt/QtSingleApplication/qtsinglecoreapplication.pri @@ -0,0 +1,10 @@ +INCLUDEPATH += $$PWD +DEPENDPATH += $$PWD +HEADERS += $$PWD/qtsinglecoreapplication.h $$PWD/qtlocalpeer.h +SOURCES += $$PWD/qtsinglecoreapplication.cpp $$PWD/qtlocalpeer.cpp + +QT *= network + +win32:contains(TEMPLATE, lib):contains(CONFIG, shared) { + DEFINES += QT_QTSINGLECOREAPPLICATION_EXPORT=__declspec(dllexport) +} diff --git a/ukui-volume-control-applet-qt/config.h b/ukui-volume-control-applet-qt/config.h new file mode 100644 index 0000000..3683020 --- /dev/null +++ b/ukui-volume-control-applet-qt/config.h @@ -0,0 +1,47 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +CustomStyle::CustomStyle(const QString &proxyStyleName, QObject *parent) : QProxyStyle (proxyStyleName) +{ + Q_UNUSED(parent); + m_helpTip = new SliderTipLabelHelper(this); +} +CustomStyle::~CustomStyle() +{ +} + +void CustomStyle::drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget) const +{ + if(control == CC_ToolButton) + { + /// 我们需要获取ToolButton的详细信息,通过qstyleoption_cast可以得到 + /// 对应的option,通过拷贝构造函数得到一份备份用于绘制子控件 + /// 我们一般不用在意option是怎么得到的,大部分的Qt控件都能够提供了option的init方法 + + } + return QProxyStyle::drawComplexControl(control, option, painter, widget); +} + +void CustomStyle::drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const +{ + + return QProxyStyle::drawControl(element, option, painter, widget); +} + +void CustomStyle::drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const +{ + return QProxyStyle::drawItemPixmap(painter, rectangle, alignment, pixmap); +} + +void CustomStyle::drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole) const +{ + return QProxyStyle::drawItemText(painter, rectangle, alignment, palette, enabled, text, textRole); +} + +//绘制简单的颜色圆角等 +void CustomStyle::drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const +{ + switch (element) { + //绘制 ToolButton + case PE_PanelButtonTool:{ + painter->save(); + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x00)); + painter->drawRoundedRect(option->rect,4,4); + if (option->state & State_MouseOver) { + if (option->state & State_Sunken) { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x14)); + painter->drawRoundedRect(option->rect,4,4); + qDebug() << " 点击按钮"; + } else { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); + painter->drawRoundedRect(option->rect,4,4); + qDebug() << "悬停按钮"; + } + } + painter->restore(); + return; + } + case PE_PanelTipLabel:{ + painter->save(); + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0x00,0xff)); + painter->drawRoundedRect(option->rect,4,4); + painter->restore(); + return; + }break; + case PE_PanelButtonCommand:{ + painter->save(); + painter->setRenderHint(QPainter::TextAntialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x00)); + if (option->state & State_MouseOver) { + if (option->state & State_Sunken) { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0x3d,0x6b,0xe5,0xff)); + painter->drawRoundedRect(option->rect,4,4); + } else { + painter->setRenderHint(QPainter::Antialiasing,true); + painter->setPen(Qt::NoPen); + painter->setBrush(QColor(0xff,0xff,0xff,0x1f)); + painter->drawRoundedRect(option->rect.adjusted(2,2,-2,-2),4,4); + } + } + painter->restore(); + return; + }break; + } + return QProxyStyle::drawPrimitive(element, option, painter, widget); +} + +QPixmap CustomStyle::generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const +{ + return QProxyStyle::generatedIconPixmap(iconMode, pixmap, option); +} + +QStyle::SubControl CustomStyle::hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget) const +{ + return QProxyStyle::hitTestComplexControl(control, option, position, widget); +} + +QRect CustomStyle::itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const +{ + return QProxyStyle::itemPixmapRect(rectangle, alignment, pixmap); +} + +QRect CustomStyle::itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const +{ + return QProxyStyle::itemTextRect(metrics, rectangle, alignment, enabled, text); +} + +// +int CustomStyle::pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option, const QWidget *widget) const +{ + switch (metric){ + case PM_ToolBarIconSize:{ + return (int)48*qApp->devicePixelRatio(); + } + default: + break; + } + return QProxyStyle::pixelMetric(metric, option, widget); +} + +// +void CustomStyle::polish(QWidget *widget) +{ + if (widget) { + if (widget->inherits("QTipLabel")) { + widget->setAttribute(Qt::WA_TranslucentBackground); + QPainterPath path; + auto rect = widget->rect(); + rect.adjust(0,0,0,0); + path.addRoundedRect(rect,6,6); + widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + } + } + if (widget) { + if (widget->inherits("QLable")) { + const_cast (widget)->setAttribute(Qt::WA_TranslucentBackground); + widget->setAttribute(Qt::WA_TranslucentBackground); + QPainterPath path; + auto rect = widget->rect(); + rect.adjust(0,0,0,0); + path.addRoundedRect(rect,6,6); + widget->setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + } + } + if (widget){ + widget->setAttribute(Qt::WA_Hover); + widget->inherits("QSlider"); + m_helpTip->registerWidget(widget); + widget->installEventFilter(this); + } + + return QProxyStyle::polish(widget); +} + +void CustomStyle::polish(QApplication *application) +{ + return QProxyStyle::polish(application); +} + +// +void CustomStyle::polish(QPalette &palette) +{ + // return QProxyStyle::polish(palette); + // QProxyStyle::polish(palette); + // palette.setBrush(QPalette::Foreground, Qt::black); + QColor lightBlue(200, 0, 0); + palette.setBrush(QPalette::Highlight, lightBlue); +} + +void CustomStyle::unpolish(QWidget *widget) +{ + return QProxyStyle::unpolish(widget); +} + +void CustomStyle::unpolish(QApplication *application) +{ + return QProxyStyle::unpolish(application); +} + +QSize CustomStyle::sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget) const +{ + return QProxyStyle::sizeFromContents(type, option, contentsSize, widget); +} + +QIcon CustomStyle::standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const +{ + return QProxyStyle::standardIcon(standardIcon, option, widget); +} + +QPalette CustomStyle::standardPalette() const +{ + return QProxyStyle::standardPalette(); +} + +//如果需要背景透明也许需要用到这个函数 +int CustomStyle::styleHint(QStyle::StyleHint hint, const QStyleOption *option, const QWidget *widget, QStyleHintReturn *returnData) const +{ + switch (hint) { + /// 让ScrollView viewport的绘制区域包含scrollbar和corner widget + /// 这个例子中没有什么作用,如果我们需要绘制一个背景透明的滚动条 + /// 这个style hint对我们的意义应该很大,因为我们希望视图能够帮助 + /// 我们填充滚动条的背景区域,否则当背景透明时底下会出现明显的分割 + + case SH_ScrollView_FrameOnlyAroundContents: { + return false; + } + default: + break; + } + return QProxyStyle::styleHint(hint, option, widget, returnData); +} + +QRect CustomStyle::subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget) const +{ + return QProxyStyle::subControlRect(control, option, subControl, widget); +} + +QRect CustomStyle::subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget) const +{ + return QProxyStyle::subElementRect(element, option, widget); +} diff --git a/ukui-volume-control-applet-qt/customstyle.h b/ukui-volume-control-applet-qt/customstyle.h new file mode 100644 index 0000000..5ab8fe1 --- /dev/null +++ b/ukui-volume-control-applet-qt/customstyle.h @@ -0,0 +1,158 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include "ukmedia_slider_tip_label_helper.h" +/*! + * \brief The CustomStyle class + * \details + * 自定义QStyle + * 基于QProxyStyle,默认使用QProxyStyle的实例绘制控件,你需要针对某一个控件重新实现若干对应的接口。 + * QProxyStyle可以从现有的qt style实例化,我们只需要知道这个style的名字即可。 + * 这种做法带来了不错的扩展性和自由度,因为我们不需要将某个style的代码直接引入我们的项目中, + * 也能够“继承”这个style类进行二次开发。 + * + * 下面的方法展现了QStyle的所有的接口,使用QStyle进行控件的绘制使得qt应用能够进行风格的切换, + * 从而达到不修改项目源码却对应用外观产生巨大影响的效果。 + * + * \note + * 需要注意QStyle与QSS并不兼容,因为QSS本身其实上也是QStyle的一种实现,对一个控件而言,本身理论上只能 + * 在同一时间调用唯一一个QStyle进行绘制。 + */ +class CustomStyle : public QProxyStyle +{ + Q_OBJECT +public: + explicit CustomStyle(const QString &proxyStyleName = "windows", QObject *parent = nullptr); + ~CustomStyle(); + /*! + * \brief drawComplexControl + * \param control 比如ScrollBar,对应CC枚举类型 + * \param option + * \param painter + * \param widget + * \details + * drawComplexControl用于绘制具有子控件的复杂控件,它本身一般不直接绘制控件, + * 而是通过QStyle的其它方法将复杂控件分解成子控件再调用其它的draw方法绘制。 + * 如果你需要重新实现一个复杂控件的绘制方法,首先考虑的应该是在不改变它原有的绘制流程的情况下, + * 对它调用到的其它方法进行重写。 + * + * 如果你不想使用原有的绘制流程,那你需要重写这个接口,然后自己实现一切, + * 包括背景的绘制,子控件的位置和状态计算,子控件的绘制等。 + * 所以,你需要对这个控件有足够的了解之后再尝试直接重写这个接口。 + */ + virtual void drawComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, QPainter *painter, const QWidget *widget = nullptr) const; + /*! + * \brief drawControl + * \param element 比如按钮,对应CE枚举类型 + * \param option + * \param painter + * \param widget + * \details + * drawControl用于绘制基本控件元素,它本身一般只负责绘制控件的一部分或者一层。 + * 如果你想要知道控件具体如何绘制,你需要同时研究这个控件的源码和QStyle中的源码, + * 因为它们都有可能改变控件的绘制流程。 + * + * QStyle一般会遵循QCommonStyle的绘制流程,QCommenStyle是大部分主流style的最基类, + * 它本身不能完全称之为一个主题,如果你直接使用它,你的控件将不能被正常绘制,因为它有可能只是 + * 在特定的时候执行了特定却未实现的绘制方法,它更像一个框架或者规范。 + */ + virtual void drawControl(QStyle::ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; + virtual void drawItemPixmap(QPainter *painter, const QRect &rectangle, int alignment, const QPixmap &pixmap) const; + virtual void drawItemText(QPainter *painter, const QRect &rectangle, int alignment, const QPalette &palette, bool enabled, const QString &text, QPalette::ColorRole textRole = QPalette::NoRole) const; + /*! + * \brief drawPrimitive + * \param element 背景绘制,对应PE枚举类型 + * \param option + * \param painter + * \param widget + * \details + * drawPrimitive用于绘制控件背景,比如按钮和菜单的背景, + * 我们一般需要判断控件的状态来绘制不同的背景, + * 比如按钮的hover和点击效果。 + */ + virtual void drawPrimitive(QStyle::PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget = nullptr) const; + virtual QPixmap generatedIconPixmap(QIcon::Mode iconMode, const QPixmap &pixmap, const QStyleOption *option) const; + virtual QStyle::SubControl hitTestComplexControl(QStyle::ComplexControl control, const QStyleOptionComplex *option, const QPoint &position, const QWidget *widget = nullptr) const; + virtual QRect itemPixmapRect(const QRect &rectangle, int alignment, const QPixmap &pixmap) const; + virtual QRect itemTextRect(const QFontMetrics &metrics, const QRect &rectangle, int alignment, bool enabled, const QString &text) const; + //virtual int layoutSpacing(QSizePolicy::ControlType control1, QSizePolicy::ControlType control2, Qt::Orientation orientation, const QStyleOption *option, const QWidget *widget); + virtual int pixelMetric(QStyle::PixelMetric metric, const QStyleOption *option = nullptr, const QWidget *widget = nullptr) const; + + /*! + * \brief polish + * \param widget + * \details + * polish用于对widget进行预处理,一般我们可以在polish中修改其属性, + * 另外,polish是对动画和特效实现而言十分重要的一个方法, + * 通过polish我们能够使widget和特效和动画形成对应关系。 + */ + virtual void polish(QWidget *widget); + virtual void polish(QApplication *application); + virtual void polish(QPalette &palette); + virtual void unpolish(QWidget *widget); + virtual void unpolish(QApplication *application); + + virtual QSize sizeFromContents(QStyle::ContentsType type, const QStyleOption *option, const QSize &contentsSize, const QWidget *widget = nullptr) const; + virtual QIcon standardIcon(QStyle::StandardPixmap standardIcon, const QStyleOption *option, const QWidget *widget) const; + virtual QPalette standardPalette() const; + /*! + * \brief styleHint + * \param hint 对应的枚举是SH + * \param option + * \param widget + * \param returnData + * \return + * \details + * styleHint比较特殊,通过它我们能够改变一些控件的绘制流程或者方式,比如说QMenu是否可以滚动。 + */ + virtual int styleHint(QStyle::StyleHint hint, const QStyleOption *option = nullptr, const QWidget *widget = nullptr, QStyleHintReturn *returnData = nullptr) const; + /*! + * \brief subControlRect + * \param control + * \param option + * \param subControl + * \param widget + * \return + * \details + * subControlRect返回子控件的位置和大小信息,这个方法一般在内置流程中调用, + * 如果我们要重写某个绘制方法,可能需要用到它 + */ + virtual QRect subControlRect(QStyle::ComplexControl control, const QStyleOptionComplex *option, QStyle::SubControl subControl, const QWidget *widget = nullptr) const; + /*! + * \brief subElementRect + * \param element + * \param option + * \param widget + * \return + * \details + * 与subControlRect类似 + */ + virtual QRect subElementRect(QStyle::SubElement element, const QStyleOption *option, const QWidget *widget = nullptr) const; + +Q_SIGNALS: + +public Q_SLOTS: +private: + SliderTipLabelHelper *m_helpTip; +}; + +#endif // CUSTOMSTYLE_H diff --git a/ukui-volume-control-applet-qt/data/img/application.svg b/ukui-volume-control-applet-qt/data/img/application.svg new file mode 100644 index 0000000..9534da3 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/application.svg @@ -0,0 +1,16 @@ + + + + +画板 1 + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-headphones.svg b/ukui-volume-control-applet-qt/data/img/audio-headphones.svg new file mode 100644 index 0000000..820513d --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-headphones.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-input-microphone.svg b/ukui-volume-control-applet-qt/data/img/audio-input-microphone.svg new file mode 100644 index 0000000..7df2807 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-input-microphone.svg @@ -0,0 +1 @@ +audio-input-microphone32 \ No newline at end of file diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-high-s.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-high-s.svg new file mode 100644 index 0000000..e43c601 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-high-s.svg @@ -0,0 +1,14 @@ + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-high.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-high.svg new file mode 100644 index 0000000..923dc38 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-high.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-low-s.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-low-s.svg new file mode 100644 index 0000000..fc9d31a --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-low-s.svg @@ -0,0 +1,15 @@ + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-low.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-low.svg new file mode 100644 index 0000000..795fb46 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-low.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-medium-s.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-medium-s.svg new file mode 100644 index 0000000..df3f729 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-medium-s.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-medium.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-medium.svg new file mode 100644 index 0000000..2093029 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-medium.svg @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-muted-s.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-muted-s.svg new file mode 100644 index 0000000..2cc281c --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-muted-s.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audio-volume-muted.svg b/ukui-volume-control-applet-qt/data/img/audio-volume-muted.svg new file mode 100644 index 0000000..32ae390 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audio-volume-muted.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/audiocard.svg b/ukui-volume-control-applet-qt/data/img/audiocard.svg new file mode 100644 index 0000000..112fc45 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/audiocard.svg @@ -0,0 +1 @@ +audiocard32 \ No newline at end of file diff --git a/ukui-volume-control-applet-qt/data/img/complete-module-s.svg b/ukui-volume-control-applet-qt/data/img/complete-module-s.svg new file mode 100644 index 0000000..35d0847 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/complete-module-s.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/complete-module.svg b/ukui-volume-control-applet-qt/data/img/complete-module.svg new file mode 100644 index 0000000..b75ab45 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/complete-module.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/device.svg b/ukui-volume-control-applet-qt/data/img/device.svg new file mode 100644 index 0000000..670b704 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/device.svg @@ -0,0 +1,13 @@ + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/microphone-high.svg b/ukui-volume-control-applet-qt/data/img/microphone-high.svg new file mode 100644 index 0000000..d3d1333 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/microphone-high.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/microphone-low.svg b/ukui-volume-control-applet-qt/data/img/microphone-low.svg new file mode 100644 index 0000000..6279150 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/microphone-low.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/microphone-medium.svg b/ukui-volume-control-applet-qt/data/img/microphone-medium.svg new file mode 100644 index 0000000..2f14522 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/microphone-medium.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/microphone-mute.svg b/ukui-volume-control-applet-qt/data/img/microphone-mute.svg new file mode 100644 index 0000000..2882f0b --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/microphone-mute.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/mini-module-s.svg b/ukui-volume-control-applet-qt/data/img/mini-module-s.svg new file mode 100644 index 0000000..6d8b247 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/mini-module-s.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/mini-module.svg b/ukui-volume-control-applet-qt/data/img/mini-module.svg new file mode 100644 index 0000000..682b841 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/mini-module.svg @@ -0,0 +1,15 @@ + + + + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/setting.svg b/ukui-volume-control-applet-qt/data/img/setting.svg new file mode 100644 index 0000000..bbf1853 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/setting.svg @@ -0,0 +1,14 @@ + + + + + + + diff --git a/ukui-volume-control-applet-qt/data/img/tick.png b/ukui-volume-control-applet-qt/data/img/tick.png new file mode 100644 index 0000000..a0b7ac7 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/img/tick.png differ diff --git a/ukui-volume-control-applet-qt/data/img/tick.svg b/ukui-volume-control-applet-qt/data/img/tick.svg new file mode 100644 index 0000000..6ead6f5 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/img/tick.svg @@ -0,0 +1,9 @@ + + + + + + diff --git a/ukui-volume-control-applet-qt/data/org.ukui.audio.gschema.xml b/ukui-volume-control-applet-qt/data/org.ukui.audio.gschema.xml new file mode 100644 index 0000000..15f7a63 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/org.ukui.audio.gschema.xml @@ -0,0 +1,74 @@ + + + + true + Init system volume + If true init system volume, otherwise do nothing + + + 17 + Default headphone volume percentage + Default headphone volume percentage 0-100 + + + 67 + Default output volume perccentage + Default output volume percentage 0-100 + + + 100 + Default hdmi volume perccentage + Default hdmi volume percentage 0-100 + + + 100 + Default Mic volume percentage + Default Mic volume percentage 0-100 + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init intel mic volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init speaker volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the headset + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the rear headphone + + + true + Plugin init volume + Whether to initialize the volume when plugging or unplugging the hdmi + + + diff --git a/ukui-volume-control-applet-qt/data/org.ukui.sound.gschema.xml b/ukui-volume-control-applet-qt/data/org.ukui.sound.gschema.xml new file mode 100644 index 0000000..18393b0 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/org.ukui.sound.gschema.xml @@ -0,0 +1,39 @@ + + + + '' + Default mixer device + The default mixer device used by the multimedia key bindings. + + + [] + Default mixer tracks + The default mixer tracks used by the multimedia key bindings. + + + false + Enable ESD + Enable sound server startup. + + + true + Sounds for events + Whether to play sounds on user events. + + + 'ukui' + Sound theme name + The XDG sound theme to use for event sounds. + + + true + Input feedback sounds + Whether to play sounds on input events. + + + true + Noise Reduction + Mic noise reduction option + + + diff --git a/ukui-volume-control-applet-qt/data/qss/ukuimedia.qss b/ukui-volume-control-applet-qt/data/qss/ukuimedia.qss new file mode 100644 index 0000000..e69de29 diff --git a/ukui-volume-control-applet-qt/data/sounds/bark.ogg b/ukui-volume-control-applet-qt/data/sounds/bark.ogg new file mode 100644 index 0000000..480950c Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/bark.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/clang.ogg b/ukui-volume-control-applet-qt/data/sounds/clang.ogg new file mode 100644 index 0000000..bda25f5 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/clang.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/clank.ogg b/ukui-volume-control-applet-qt/data/sounds/clank.ogg new file mode 100644 index 0000000..a47db69 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/clank.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/creak.ogg b/ukui-volume-control-applet-qt/data/sounds/creak.ogg new file mode 100644 index 0000000..dda5aa8 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/creak.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/ding.ogg b/ukui-volume-control-applet-qt/data/sounds/ding.ogg new file mode 100644 index 0000000..09223d4 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/ding.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/drip.ogg b/ukui-volume-control-applet-qt/data/sounds/drip.ogg new file mode 100644 index 0000000..144d2b3 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/drip.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/fizz.ogg b/ukui-volume-control-applet-qt/data/sounds/fizz.ogg new file mode 100644 index 0000000..fb7f18a Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/fizz.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/flop.ogg b/ukui-volume-control-applet-qt/data/sounds/flop.ogg new file mode 100644 index 0000000..05e7bab Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/flop.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/glass.ogg b/ukui-volume-control-applet-qt/data/sounds/glass.ogg new file mode 100644 index 0000000..902a3c8 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/glass.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/gudou.ogg b/ukui-volume-control-applet-qt/data/sounds/gudou.ogg new file mode 100644 index 0000000..3016012 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/gudou.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/gurgle.ogg b/ukui-volume-control-applet-qt/data/sounds/gurgle.ogg new file mode 100644 index 0000000..17a2e73 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/gurgle.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/index.theme b/ukui-volume-control-applet-qt/data/sounds/index.theme new file mode 100644 index 0000000..754f564 --- /dev/null +++ b/ukui-volume-control-applet-qt/data/sounds/index.theme @@ -0,0 +1,6 @@ +[Sound Theme] +Name=Kylin +Directories=stereo + +[stereo] +OutputProfile=stereo diff --git a/ukui-volume-control-applet-qt/data/sounds/jingle.ogg b/ukui-volume-control-applet-qt/data/sounds/jingle.ogg new file mode 100644 index 0000000..83835bf Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/jingle.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/kaca.ogg b/ukui-volume-control-applet-qt/data/sounds/kaca.ogg new file mode 100644 index 0000000..cf07206 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/kaca.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/plump.ogg b/ukui-volume-control-applet-qt/data/sounds/plump.ogg new file mode 100644 index 0000000..e20f8ba Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/plump.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/quack.ogg b/ukui-volume-control-applet-qt/data/sounds/quack.ogg new file mode 100644 index 0000000..f465ede Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/quack.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/rat-rat.ogg b/ukui-volume-control-applet-qt/data/sounds/rat-rat.ogg new file mode 100644 index 0000000..1b16d4c Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/rat-rat.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/sonar.ogg b/ukui-volume-control-applet-qt/data/sounds/sonar.ogg new file mode 100644 index 0000000..77aadec Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/sonar.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/splash.ogg b/ukui-volume-control-applet-qt/data/sounds/splash.ogg new file mode 100644 index 0000000..649beaa Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/splash.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/thud.ogg b/ukui-volume-control-applet-qt/data/sounds/thud.ogg new file mode 100644 index 0000000..dbf43ca Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/thud.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/ttlou.ogg b/ukui-volume-control-applet-qt/data/sounds/ttlou.ogg new file mode 100644 index 0000000..07b54d0 Binary files /dev/null and b/ukui-volume-control-applet-qt/data/sounds/ttlou.ogg differ diff --git a/ukui-volume-control-applet-qt/data/sounds/ukui-sound.xml b/ukui-volume-control-applet-qt/data/sounds/ukui-sound.xml new file mode 100644 index 0000000..79b86bd --- /dev/null +++ b/ukui-volume-control-applet-qt/data/sounds/ukui-sound.xml @@ -0,0 +1,110 @@ + + + + flop + 电波回音 + /usr/share/ukui-media/sounds/flop.ogg + + + + clank + 叮铃 + /usr/share/ukui-media/sounds/clank.ogg + + + + gudou + 咕咚 + /usr/share/ukui-media/sounds/gudou.ogg + + + + thud + 回音 + /usr/share/ukui-media/sounds/thud.ogg + + + + plump + 机器人 + /usr/share/ukui-media/sounds/plump.ogg + + + + quack + 机械 + /usr/share/ukui-media/sounds/quack.ogg + + + + ding + 金属 + /usr/share/ukui-media/sounds/ding.ogg + + + + clang + 水波 + /usr/share/ukui-media/sounds/clang.ogg + + + + gurgle + 水声 + /usr/share/ukui-media/sounds/gurgle.ogg + + + + fizz + 吐泡泡 + /usr/share/ukui-media/sounds/fizz.ogg + + + + ttlou + 完成 + /usr/share/ukui-media/sounds/ttlou.ogg + + + + rat-rat + 煮茶 + /usr/share/ukui-media/sounds/rat-rat.ogg + + + + splash + 电磁 + /usr/share/ukui-media/sounds/splash.ogg + + + + bark + 犬吠 + /usr/share/ukui-media/sounds/bark.ogg + + + + drip + 雨滴 + /usr/share/ukui-media/sounds/drip.ogg + + + + glass + 玻璃 + /usr/share/ukui-media/sounds/glass.ogg + + + + sonar + 声纳 + /usr/share/ukui-media/sounds/sonar.ogg + + + + None + + + + diff --git a/ukui-volume-control-applet-qt/main.cpp b/ukui-volume-control-applet-qt/main.cpp new file mode 100644 index 0000000..ead667b --- /dev/null +++ b/ukui-volume-control-applet-qt/main.cpp @@ -0,0 +1,95 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include + +#include "ukmedia_main_widget.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "xatom/xatom-helper.h" + + +int main(int argc, char *argv[]) +{ + initUkuiLog4qt("ukui-media"); + Display *display = XOpenDisplay(NULL); + Screen *scrn = DefaultScreenOfDisplay(display); + if(scrn == nullptr) { + return 0; + } + + #if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) + QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); + QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); + #endif + #if (QT_VERSION >= QT_VERSION_CHECK(5, 14, 0)) + QApplication::setHighDpiScaleFactorRoundingPolicy(Qt::HighDpiScaleFactorRoundingPolicy::PassThrough); + #endif + + QtSingleApplication app("ukui-volume-control-applet",argc,argv); + if (app.isRunning()) { + app.sendMessage("raise_window_noop"); + return EXIT_SUCCESS; + } + +#ifndef QT_NO_TRANSLATION + QString translatorFileName = QLatin1String("qt_"); + translatorFileName += QLocale::system().name(); + QTranslator *pTranslator = new QTranslator(); + if (pTranslator->load(translatorFileName, QLibraryInfo::location(QLibraryInfo::TranslationsPath))) + app.installTranslator(pTranslator); +#endif + + //加载qm文件 + QTranslator translator; + translator.load("/usr/share/ukui-media/translations/" + QLocale::system().name()); + app.installTranslator(&translator); + + //加载qss文件 + QFile qss(":/data/qss/ukuimedia.qss"); + qss.open(QFile::ReadOnly); + + qss.close(); + UkmediaMainWidget w; + app.setActivationWindow(&w); + w.setProperty("useStyleWindowManager", false); //禁用拖动 + + MotifWmHints window_hints; + window_hints.flags = MWM_HINTS_FUNCTIONS | MWM_HINTS_DECORATIONS; + window_hints.functions = MWM_FUNC_ALL; + window_hints.decorations = MWM_DECOR_BORDER; + XAtomHelper::getInstance()->setWindowMotifHint(w.winId(), window_hints); + + XCloseDisplay(display); + return app.exec(); +} + diff --git a/ukui-volume-control-applet-qt/res.qrc b/ukui-volume-control-applet-qt/res.qrc new file mode 100644 index 0000000..13c28d6 --- /dev/null +++ b/ukui-volume-control-applet-qt/res.qrc @@ -0,0 +1,8 @@ + + + data/img/setting.svg + data/img/tick.png + data/img/tick.svg + data/qss/ukuimedia.qss + + diff --git a/ukui-volume-control-applet-qt/translations/bo.qm b/ukui-volume-control-applet-qt/translations/bo.qm new file mode 100644 index 0000000..be651ee --- /dev/null +++ b/ukui-volume-control-applet-qt/translations/bo.qm @@ -0,0 +1 @@ + + + + + ApplicationVolumeWidget + + + Application Volume + + + + + System Volume + + + + + Sound Settings + + + + + QObject + + + pa_context_subscribe() failed + + + + + pa_context_get_card_info_list() failed + + + + + pa_context_get_sink_info_list() failed + + + + + pa_context_get_source_info_list() failed + + + + + Failed to initialize stream_restore extension: %s + + + + + pa_ext_stream_restore_read() failed + + + + + pa_context_get_sink_info_by_index() failed + + + + + pa_context_get_source_info_by_index() failed + + + + + pa_context_get_card_info_by_index() failed + + + + + Card callback failure + + + + + + Sink callback failure + + + + + Source callback failure + + + + + Fatal Error: Unable to connect to PulseAudio + + + + + + + pa_context_get_server_info() failed + + + + + + Sink input callback failure + + + + + Source output callback failure + + + + + Client callback failure + + + + + + Server info callback failure + + + + + Failed to initialize device restore extension: %s + + + + + pa_ext_device_restore_read_sink_formats() failed + + + + + Failed to initialize device manager extension: %s + + + + + pa_ext_device_manager_read() failed + + + + + + pa_context_get_sink_input_info() failed + + + + + pa_context_get_client_info() failed + + + + + pa_context_client_info_list() failed + + + + + pa_context_get_sink_input_info_list() failed + + + + + pa_context_get_source_output_info_list() failed + + + + + Connection failed, attempting reconnect + + + + + Ukui Media Volume Control + + + + + UkmediaMainWidget + + + Output volume control + + + + + + Sound preference(S) + + + + + System Volume + + + + + App Volume + + + + + Current volume: + + + + + UkmediaSystemVolumeWidget + + + Volume + + + + + Output + + + + + Sound Settings + + + + + UkmediaVolumeControl + + + + + + + + + + pa_context_set_sink_volume_by_index() failed + + + + + + pa_context_set_source_output_volume() failed + + + + + pa_context_set_source_output_mute() failed + + + + + pa_context_set_card_profile_by_index() failed + + + + + pa_context_set_default_sink() failed + + + + + pa_context_set_default_source() failed + + + + + pa_context_set_sink_port_by_name() failed + + + + + pa_context_set_source_port_by_name() failed + + + + + pa_context_kill_sink_input() failed + + + + + (plugged in) + + + + + + (unavailable) + + + + + + (unplugged) + + + + + Failed to read data from stream + + + + + Peak detect + + + + + Failed to create monitoring stream + + + + + Failed to connect monitoring stream + + + + + Ignoring sink-input due to it being designated as an event and thus handled by the Event widget + + + + + Establishing connection to PulseAudio. Please wait... + + + + + pa_context_get_sink_info_by_name() failed + + + + + pa_context_get_source_info_by_name() failed + + + + + UkuiMediaSetHeadsetWidget + + + Sound Settings + + + + + Cancel + + + + + Select Sound Device + + + + + Headphone + + + + + Headset + + + + + Microphone + + + + diff --git a/ukui-volume-control-applet-qt/translations/tr.qm b/ukui-volume-control-applet-qt/translations/tr.qm new file mode 100644 index 0000000..3c76c95 Binary files /dev/null and b/ukui-volume-control-applet-qt/translations/tr.qm differ diff --git a/ukui-volume-control-applet-qt/translations/tr.ts b/ukui-volume-control-applet-qt/translations/tr.ts new file mode 100644 index 0000000..0310c88 --- /dev/null +++ b/ukui-volume-control-applet-qt/translations/tr.ts @@ -0,0 +1,107 @@ + + + + + ApplicationVolumeWidget + + + Application Volume + Uygulama Sesi + + + + System Volume + Sistem Sesi + + + + DeviceSwitchWidget + + + Go Into Mini Mode + Mini Moda Geç + + + + Output volume control + Çıkış ses kontrolü + + + + + Mute + Sessiz + + + + + Sound preference(S) + Ses tercihi + + + + Device Volume + Aygıt Sesi + + + + Application Volume + Uygulama Sesi + + + + + + + Speaker (Realtek Audio) + Hoparlör (Realtek Audio) + + + + + Headphone + Kulaklık + + + + UkmediaDeviceWidget + + + Input Device + Giriş Sesi + + + + Microphone + Mikrofon + + + + Output Device + Çıkış Sesi + + + + Speaker Realtek Audio + Hoparlör Realtek Audio + + + + Input device can not be detected + Giriş cihazı algılanamıyor + + + + UkmediaMiniMasterVolumeWidget + + + Speaker (Realtek Audio) + Hoparlör (Realtek Audio) + + + + Go Into Full Mode + Tam Moda Geçin + + + diff --git a/ukui-volume-control-applet-qt/translations/zh_CN.ts b/ukui-volume-control-applet-qt/translations/zh_CN.ts new file mode 100644 index 0000000..03dda75 --- /dev/null +++ b/ukui-volume-control-applet-qt/translations/zh_CN.ts @@ -0,0 +1,462 @@ + + + + + ApplicationVolumeWidget + + + Application Volume + 应用 + + + + System Volume + 系统音量 + + + + Sound Settings + 声音设置 + + + + DeviceSwitchWidget + + Go Into Mini Mode + 进入Mini模式 + + + Output volume control + 输出音量控制 + + + Mute + 静音 + + + Sound preference(S) + 声音首选项 + + + Device Volume + 设备音量 + + + Application Volume + 应用音量 + + + is using + 正在使用 + + + Bluetooth + 蓝牙 + + + Error + 错误 + + + Unable to connect to the sound system, please check whether the pulseaudio service is running! + 无法连接到系统声音,请检查pulseaudio服务是否正在运行! + + + Dummy output + 伪输出 + + + Speaker (Realtek Audio) + 扬声器(Realtek Audio) + + + Headphone + 模拟耳机 + + + + QObject + + + pa_context_subscribe() failed + + + + + pa_context_get_card_info_list() failed + + + + + pa_context_get_sink_info_list() failed + + + + + pa_context_get_source_info_list() failed + + + + + Failed to initialize stream_restore extension: %s + + + + + pa_ext_stream_restore_read() failed + + + + + pa_context_get_sink_info_by_index() failed + + + + + pa_context_get_source_info_by_index() failed + + + + + pa_context_get_card_info_by_index() failed + + + + + Card callback failure + + + + + + Sink callback failure + + + + + Source callback failure + + + + + Fatal Error: Unable to connect to PulseAudio + + + + + + + pa_context_get_server_info() failed + + + + + + Sink input callback failure + + + + + Source output callback failure + + + + + Client callback failure + + + + + + Server info callback failure + + + + + Failed to initialize device restore extension: %s + + + + + pa_ext_device_restore_read_sink_formats() failed + + + + + Failed to initialize device manager extension: %s + + + + + pa_ext_device_manager_read() failed + + + + + + pa_context_get_sink_input_info() failed + + + + + pa_context_get_client_info() failed + + + + + pa_context_client_info_list() failed + + + + + pa_context_get_sink_input_info_list() failed + + + + + pa_context_get_source_output_info_list() failed + + + + + Connection failed, attempting reconnect + + + + + Ukui Media Volume Control + + + + + UkmediaDeviceWidget + + Input Device + 输入设备 + + + Microphone + 麦克风 + + + Output Device + 输出设备 + + + Speaker Realtek Audio + 扬声器(Realtek Audio) + + + Input device can not be detected + 无法检测到输入设备 + + + + UkmediaMainWidget + + + Output volume control + 输出音量控制 + + + Mute + 静音 + + + + + Sound preference(S) + 设置声音项 + + + + System Volume + 系统音量 + + + + App Volume + 应用音量 + + + + Current volume: + 当前音量: + + + + UkmediaMiniMasterVolumeWidget + + Speaker (Realtek Audio) + 扬声器(Realtek Audio) + + + Go Into Full Mode + 进入完整模式 + + + + UkmediaSystemVolumeWidget + + + Volume + 音量 + + + + Output + 输出 + + + + Sound Settings + 声音设置 + + + + UkmediaVolumeControl + + + + + + + + + + pa_context_set_sink_volume_by_index() failed + + + + + + pa_context_set_source_output_volume() failed + + + + + pa_context_set_source_output_mute() failed + + + + + pa_context_set_card_profile_by_index() failed + + + + + pa_context_set_default_sink() failed + + + + + pa_context_set_default_source() failed + + + + + pa_context_set_sink_port_by_name() failed + + + + + pa_context_set_source_port_by_name() failed + + + + + pa_context_kill_sink_input() failed + + + + + (plugged in) + + + + + + (unavailable) + + + + + + (unplugged) + + + + + Failed to read data from stream + + + + + Peak detect + + + + + Failed to create monitoring stream + + + + + Failed to connect monitoring stream + + + + + Ignoring sink-input due to it being designated as an event and thus handled by the Event widget + + + + + Establishing connection to PulseAudio. Please wait... + + + + + pa_context_get_sink_info_by_name() failed + + + + + pa_context_get_source_info_by_name() failed + + + + + UkuiMediaSetHeadsetWidget + + + Sound Settings + 声音设置 + + + + Cancel + 取消 + + + + Select Sound Device + 选择输出设备 + + + + Headphone + 耳机 + + + + Headset + 耳麦 + + + + Microphone + 麦克风 + + + diff --git a/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.cpp new file mode 100644 index 0000000..e192f4e --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.cpp @@ -0,0 +1,169 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +ApplicationVolumeWidget::ApplicationVolumeWidget(QWidget *parent) : QWidget (parent) +{ + applicationLabel = new QLabel(tr("Application Volume"),this); + app_volume_list = new QStringList; + systemVolumeLabel = new QLabel(tr("System Volume"),this); + systemVolumeBtn = new UkuiMediaMuteButton(this); + systemVolumeSlider = new UkmediaVolumeSlider(this); + systemVolumeDisplayLabel = new QLabel(this); + systemVolumeSliderWidget = new QWidget(this); + + QPalette palette = applicationLabel->palette(); + QColor color = palette.color(QPalette::PlaceholderText); + palette.setColor(QPalette::WindowText,color); + applicationLabel->setPalette(palette); + systemVolumeLabel->setPalette(palette); + + //系统音量label + QWidget *systemVolumeLabelWidget = new QWidget(this); + systemVolumeLabelWidget->setFixedSize(404,20); + systemVolumeLabel->setFixedSize(404,20); + QHBoxLayout *systemVolumeLabelLayout = new QHBoxLayout; + systemVolumeLabelLayout->addWidget(systemVolumeLabel); + systemVolumeLabelWidget->setLayout(systemVolumeLabelLayout); + systemVolumeLabelLayout->setContentsMargins(16,0,0,0); + + //应用label + QWidget *applicationLabelWidget = new QWidget(this); + applicationLabel->setFixedSize(404,20); + applicationLabelWidget->setFixedSize(404,20); + QHBoxLayout *applicationLabelLayout = new QHBoxLayout; + applicationLabelLayout->addWidget(applicationLabel); + applicationLabelWidget->setLayout(applicationLabelLayout); + applicationLabelLayout->setContentsMargins(16,0,0,0); + + //音量滑动条 + QHBoxLayout *systemVolumeSliderLayout = new QHBoxLayout(); + systemVolumeSliderWidget->setFixedSize(412,48); + systemVolumeBtn->setFixedSize(36,36); + systemVolumeBtn->setActive(true); + systemVolumeSlider->setOrientation(Qt::Horizontal); + systemVolumeSlider->setRange(0,100); + systemVolumeSlider->setFixedSize(273,48); + systemVolumeDisplayLabel->setFixedSize(55,48); + systemVolumeDisplayLabel->setAlignment(Qt::AlignCenter); + systemVolumeSliderLayout->addWidget(systemVolumeBtn); + systemVolumeSliderLayout->addSpacing(8); + systemVolumeSliderLayout->addWidget(systemVolumeSlider); + systemVolumeSliderLayout->addSpacing(16); + systemVolumeSliderLayout->addWidget(systemVolumeDisplayLabel); + systemVolumeSliderLayout->setSpacing(0); + systemVolumeSliderWidget->setLayout(systemVolumeSliderLayout); + systemVolumeSliderLayout->setContentsMargins(16,0,24,0); + systemVolumeSlider->setObjectName("systemVolumeSlider"); + this->setFixedSize(420,436); + + volumeSettingButton = new UkuiSettingButton(volumeSettingFrame); + volumeSettingButton->setText(tr("Sound Settings")); + volumeSettingButton->setCursor(Qt::PointingHandCursor); + volumeSettingButton->setScaledContents(true); + + volumeSettingFrame = new QFrame(this); + volumeSettingFrame->setFixedHeight(52); + QHBoxLayout *volumeSettingLayout = new QHBoxLayout(volumeSettingFrame); + volumeSettingLayout->setContentsMargins(16,0,24,8); + volumeSettingLayout->addWidget(volumeSettingButton); + volumeSettingLayout->addStretch(); + volumeSettingFrame->setLayout(volumeSettingLayout); + + appArea = new QScrollArea(this); + displayAppVolumeWidget = new UkuiApplicationWidget(appArea); + appArea->setWidget(displayAppVolumeWidget); + QPalette palette1 = appArea->palette(); + palette1.setColor(QPalette::Window, QColor(0x00,0xff,0x00,0x00)); //改变appArea背景色透明 + appArea->setPalette(palette1); + appArea->verticalScrollBar()->setProperty("drawScrollBarGroove",false); +// appWidget->appArea->verticalScrollBar()->setFixedSize(2,70); //设置垂直滑动条大小和背景色,因为设置完不美观,暂时注释掉 +// appWidget->appArea->verticalScrollBar()->setBackgroundRole(QPalette::Light); + displayAppVolumeWidget->setFixedWidth(404); + m_pVlayout = new QVBoxLayout(displayAppVolumeWidget); + + displayAppVolumeWidget->setAttribute(Qt::WA_TranslucentBackground); + appArea->setFixedSize(404,245); + displayAppVolumeWidget->setLayout(m_pVlayout); + this->setObjectName("mainWidget"); + setObjectName("appWidget"); + appArea->setFrameShape(QFrame::NoFrame);//bjc去掉appArea的边框 + appArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); + + //整体布局 + QVBoxLayout *mainLayout = new QVBoxLayout; + mainLayout->addWidget(systemVolumeLabelWidget); + mainLayout->addSpacing(8); + mainLayout->addWidget(systemVolumeSliderWidget); + mainLayout->addSpacing(17); + mainLayout->addWidget(applicationLabelWidget); + mainLayout->addSpacing(8); + mainLayout->addWidget(appArea); + mainLayout->addSpacing(8); + mainLayout->addWidget(volumeSettingFrame); + mainLayout->setSpacing(0); + this->setLayout(mainLayout); + mainLayout->setContentsMargins(8,16,0,0); +} + +void ApplicationVolumeWidget::fullushBlueRecordStream() +{ + isRecording = true; + outputFile.setFileName("/tmp/test.raw"); + outputFile.open( QIODevice::WriteOnly | QIODevice::Truncate ); + QAudioFormat format; + + format.setSampleRate(8000); + format.setChannelCount(1); + format.setSampleSize(8); + format.setCodec("audio/pcm"); + format.setByteOrder(QAudioFormat::LittleEndian); + + format.setSampleType(QAudioFormat::UnSignedInt); + QAudioDeviceInfo info = QAudioDeviceInfo::defaultInputDevice(); + qDebug() << "input device" << info.deviceName(); + if (!info.isFormatSupported(format)) + { + qWarning()<<"default format not supported try to use nearest"; + format = info.nearestFormat(format); + } + qDebug() << "准备蓝牙录音-------"; + audio = new QAudioInput(info, format, this); + audio->start(&outputFile); +} + +void ApplicationVolumeWidget::deleteBlueRecordStream() +{ + isRecording = false; + qDebug() << "停止录制-------"; + audio->stop(); + outputFile.close(); + system("rm /tmp/test.raw"); + delete audio; +} + +ApplicationVolumeWidget::~ApplicationVolumeWidget() +{ +// delete app_volume_list; +// delete appIconBtn; +} diff --git a/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.h b/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.h new file mode 100644 index 0000000..2a96010 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_application_volume_widget.h @@ -0,0 +1,68 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include "ukmedia_custom_class.h" + +class ApplicationVolumeWidget : public QWidget +{ + Q_OBJECT +public: + ApplicationVolumeWidget(QWidget *parent = nullptr); + ~ApplicationVolumeWidget(); + void fullushBlueRecordStream(); + void deleteBlueRecordStream(); + friend class DeviceSwitchWidget; + friend class UkmediaMainWidget; +private: + QLabel *applicationLabel; + QLabel *systemVolumeLabel; + UkuiMediaMuteButton *systemVolumeBtn; + UkmediaVolumeSlider *systemVolumeSlider; + QLabel *systemVolumeDisplayLabel; + + QWidget *systemVolumeSliderWidget; + QWidget *displayAppVolumeWidget; + QStringList *app_volume_list; + QLabel *appVolumeLabel; + QPushButton *appMuteBtn; + QPushButton *appIconBtn; + QSlider *appSlider; + QScrollArea *appArea; + QVBoxLayout *m_pVlayout; + + QFrame * volumeSettingFrame; + UkuiSettingButton *volumeSettingButton; + + QFile outputFile; // class member. + QAudioInput* audio; // class member. + QAudioOutput *outAudio; + bool isRecording = false; +protected: +// void paintEvent(QPaintEvent *event); + +}; + +#endif // APPLICATIONVOLUMEWIDGET_H diff --git a/ukui-volume-control-applet-qt/ukmedia_custom_class.cpp b/ukui-volume-control-applet-qt/ukmedia_custom_class.cpp new file mode 100644 index 0000000..70affff --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_custom_class.cpp @@ -0,0 +1,883 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define TIMER_TIMEOUT (2*1000) +#define FOREGROUND_COLOR_NORMAL qApp->palette().text().color() + + +extern double transparency; + +UkmediaTrayIcon::UkmediaTrayIcon(QWidget *parent) +{ + Q_UNUSED(parent); +} + +UkmediaTrayIcon::~UkmediaTrayIcon() +{ + +} + +/*! + * \brief + * \details + * 处理托盘的滚动事件 + */ +bool UkmediaTrayIcon::event(QEvent *event) +{ + bool value = false; + QWheelEvent *e = static_cast(event); + if (event->type() == QEvent::Wheel) { + if (e->delta() > 0) { + value = true; + } + else if (e->delta() < 0) { + value = false; + } + Q_EMIT wheelRollEventSignal(value); + } + return QSystemTrayIcon::event(e); + +} + +MyTimer::MyTimer(QObject *parent) + :QObject(parent) +{ + m_nTimerID = this->startTimer(TIMER_TIMEOUT); +} + +MyTimer::~MyTimer() +{ + +} + +void MyTimer::timerEvent(QTimerEvent *event) +{ + if(event->timerId() == m_nTimerID){ + handleTimeout(); + Q_EMIT timeOut(); + } +} + +void MyTimer::handleTimeout() +{ + killTimer(m_nTimerID); +} + +UkuiApplicationWidget::UkuiApplicationWidget(QWidget *parent) +{ +// this->setAttribute(Qt::WA_TranslucentBackground); +// this->setStyleSheet("QWiget{background:rgba(0,0,0,0);}"); + Q_UNUSED(parent); +} + +UkuiMediaSliderTipLabel::UkuiMediaSliderTipLabel(){ + setAttribute(Qt::WA_TranslucentBackground); +} + +UkuiMediaSliderTipLabel::~UkuiMediaSliderTipLabel(){ +} + +void UkuiApplicationWidget::paintEvent(QPaintEvent *e) +{ + QStyleOption opt; + opt.init(this); + QPainter p(this); + double transparence = transparency * 255; + QColor color = palette().color(QPalette::Base); + color.setAlpha(transparence); + QBrush brush = QBrush(QColor(0,0,0,0)); + p.setBrush(brush); + p.setBrush(this->palette().base()); + p.setBrush(QBrush(QColor(19, 19, 20, 0))); + p.setPen(Qt::NoPen); + QPainterPath path; + opt.rect.adjust(0,0,0,0); + path.addRoundedRect(opt.rect,0,0); + p.setRenderHint(QPainter::Antialiasing); // 反锯齿; + p.drawRoundedRect(opt.rect,0,0); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); + +} + +UkuiApplicationWidget::~UkuiApplicationWidget() +{ + +} + +void UkuiMediaSliderTipLabel::paintEvent(QPaintEvent *e) +{ + QStyleOptionFrame opt; + initStyleOption(&opt); + QStylePainter p(this); +// p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); + p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x00))); + p.setPen(Qt::NoPen); + p.drawRoundedRect(this->rect(), 1, 1); + QPainterPath path; + path.addRoundedRect(opt.rect,6,6); + p.setRenderHint(QPainter::Antialiasing); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); + this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); + QLabel::paintEvent(e); +} + +UkuiMediaMuteButton::UkuiMediaMuteButton(QWidget *parent) +{ + Q_UNUSED(parent); + this->setFixedSize(36,36); + m_iconLabel = new QLabel(this); + m_iconLabel->setFixedSize(36,36); + m_iconLabel->setAlignment(Qt::AlignCenter); + + connect(qApp, &QApplication::paletteChanged, this, &UkuiMediaMuteButton::onPaletteChanged); +} + +/*! + * \brief + * \details + * 绘制窗体的颜色及圆角 + */ +void UkuiMediaMuteButton::paintEvent(QPaintEvent *event) +{ + QPalette pal = this->palette(); + pal.setColor(QPalette::Base, BACKGROUND_COLOR); + pal.setColor(QPalette::Text, m_backgroundColor); + + QPainterPath cPath; + cPath.addRect(0, 0, this->width(), this->height()); + cPath.addEllipse(0, 0, this->width(), this->width()); + + QPainterPath innerPath; + innerPath.addEllipse(0, 0, this->width(), this->width()); + + QPainter painter(this); + painter.setRenderHint(QPainter:: Antialiasing, true); //设置渲染,启动反锯齿 + painter.setPen(Qt::NoPen); + + painter.setBrush(pal.color(QPalette::Base)); + painter.drawPath(cPath); + + painter.fillPath(innerPath, pal.color(QPalette::Text)); +} + +void UkuiMediaMuteButton::mousePressEvent(QMouseEvent *e) +{ + if (m_isActivated) { + m_backgroundColor = QColor(0x24,0x6D,0xD4,0xFF); + } else { + m_backgroundColor = QColor(0xD9,0xD9,0xD9,0xFF); + m_backgroundColor.setAlphaF(0.20); + } + this->update(); + QPushButton::mousePressEvent(e); +} + +void UkuiMediaMuteButton::mouseReleaseEvent(QMouseEvent *e) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.05); + } + this->update(); + QPushButton::mouseReleaseEvent(e); +} + +void UkuiMediaMuteButton::enterEvent(QEvent *e) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.32); + } + this->update(); + QPushButton::enterEvent(e); +} + +void UkuiMediaMuteButton::leaveEvent(QEvent *e) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.18); + } + this->update(); + return QPushButton::leaveEvent(e); +} + +UkuiMediaMuteButton::~UkuiMediaMuteButton() +{ + +} + +//根据连接状态更改图标颜色 +void UkuiMediaMuteButton::setActive(const bool &isActive) +{ + m_isActivated = isActive; + refreshButtonIcon(); +} + +void UkuiMediaMuteButton::onPaletteChanged() +{ + refreshButtonIcon(); +} + +void UkuiMediaMuteButton::setButtonIcon(const QIcon &icon) +{ + if (icon.isNull()) { + return; + } + m_pixmap = icon.pixmap(18,18); +} +//显示默认图标 +void UkuiMediaMuteButton::setDefaultPixmap() +{ + m_iconLabel->setPixmap(m_pixmap); +} + +void UkuiMediaMuteButton::refreshButtonIcon() +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.18); + if (qApp->palette().base().color().red() > MIDDLE_COLOR) { + m_iconLabel->setPixmap(m_pixmap); + } else { + m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); + } + } + + return; +} + +const QPixmap UkuiMediaMuteButton:: loadSvg(const QPixmap &source, const PixmapColor &cgColor) +{ + QImage img = source.toImage(); + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + switch (cgColor) { + case PixmapColor::WHITE: + color.setRed(255); + color.setGreen(255); + color.setBlue(255); + img.setPixelColor(x, y, color); + break; + case PixmapColor::BLACK: + color.setRed(0); + color.setGreen(0); + color.setBlue(0); + img.setPixelColor(x, y, color); + break; + case PixmapColor::GRAY: + color.setRed(152); + color.setGreen(163); + color.setBlue(164); + img.setPixelColor(x, y, color); + break; + case PixmapColor::BLUE: + color.setRed(61); + color.setGreen(107); + color.setBlue(229); + img.setPixelColor(x, y, color); + break; + default: + return source; + break; + } + } + } + } + return QPixmap::fromImage(img); +} + + +UkuiMediaButton::UkuiMediaButton(QWidget *parent) +{ + Q_UNUSED(parent); + this->setFixedSize(36,36); + m_iconLabel = new QLabel(this); + m_iconLabel->setFixedSize(36,36); + m_iconLabel->setAlignment(Qt::AlignCenter); + + setActive(false); + connect(qApp, &QApplication::paletteChanged, this, &UkuiMediaButton::onPaletteChanged); +} + +UkuiMediaButton::~UkuiMediaButton() +{ + +} + +//根据连接状态更改图标颜色 +void UkuiMediaButton::setActive(const bool &isActive) +{ + m_isActivated = isActive; + refreshButtonIcon(); +} + +void UkuiMediaButton::onPaletteChanged() +{ + refreshButtonIcon(); +} + +void UkuiMediaButton::setButtonIcon(const QIcon &icon) +{ + if (icon.isNull()) { + return; + } + m_pixmap = icon.pixmap(18,18); +} +//显示默认图标 +void UkuiMediaButton::setDefaultPixmap() +{ + m_iconLabel->setPixmap(m_pixmap); +} + +void UkuiMediaButton::refreshButtonIcon() +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.18); + if (qApp->palette().base().color().red() > MIDDLE_COLOR) { + m_iconLabel->setPixmap(m_pixmap); + } else { + m_iconLabel->setPixmap(loadSvg(m_pixmap, PixmapColor::WHITE)); + } + } + + return; +} + +const QPixmap UkuiMediaButton:: loadSvg(const QPixmap &source, const PixmapColor &cgColor) +{ + QImage img = source.toImage(); + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + switch (cgColor) { + case PixmapColor::WHITE: + color.setRed(255); + color.setGreen(255); + color.setBlue(255); + img.setPixelColor(x, y, color); + break; + case PixmapColor::BLACK: + color.setRed(0); + color.setGreen(0); + color.setBlue(0); + img.setPixelColor(x, y, color); + break; + case PixmapColor::GRAY: + color.setRed(152); + color.setGreen(163); + color.setBlue(164); + img.setPixelColor(x, y, color); + break; + case PixmapColor::BLUE: + color.setRed(61); + color.setGreen(107); + color.setBlue(229); + img.setPixelColor(x, y, color); + break; + default: + return source; + break; + } + } + } + } + return QPixmap::fromImage(img); +} + +/*! + * \brief + * \details + * 绘制窗体的颜色及圆角 + */ +void UkuiMediaButton::paintEvent(QPaintEvent *event) +{ + QPalette pal = this->palette(); + pal.setColor(QPalette::Base, BACKGROUND_COLOR); + pal.setColor(QPalette::Text, m_backgroundColor); + + QPainterPath cPath; + cPath.addRect(0, 0, this->width(), this->height()); + cPath.addEllipse(0, 0, this->width(), this->width()); + + QPainterPath innerPath; + innerPath.addEllipse(0, 0, this->width(), this->width()); + + QPainter painter(this); + painter.setRenderHint(QPainter:: Antialiasing, true); //设置渲染,启动反锯齿 + painter.setPen(Qt::NoPen); + + painter.setBrush(pal.color(QPalette::Base)); + painter.drawPath(cPath); + + painter.fillPath(innerPath, pal.color(QPalette::Text)); +} + +void UkuiMediaButton::mousePressEvent(QMouseEvent *event) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.21); + } + this->update(); + return QWidget::mousePressEvent(event); +} + +void UkuiMediaButton::mouseReleaseEvent(QMouseEvent *event) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.18); + } + this->update(); + return QWidget::mouseReleaseEvent(event); +} + +void UkuiMediaButton::enterEvent(QEvent *event) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.32); + } + this->update(); + return QWidget::enterEvent(event); +} + +void UkuiMediaButton::leaveEvent(QEvent *event) +{ + if (m_isActivated) { + m_backgroundColor = qApp->palette().highlight().color(); + } else { + m_backgroundColor = qApp->palette().brightText().color(); + m_backgroundColor.setAlphaF(0.18); + } + this->update(); + return QWidget::leaveEvent(event); +} + + +static inline qreal mixQreal(qreal a, qreal b, qreal bias) +{ + return a + (b - a) * bias; +} + +QColor mixColor(const QColor &c1, const QColor &c2, qreal bias) +{ + if (bias <= 0.0) { + return c1; + } + if (bias >= 1.0) { + return c2; + } + if (qIsNaN(bias)) { + return c1; + } + + qreal r = mixQreal(c1.redF(), c2.redF(), bias); + qreal g = mixQreal(c1.greenF(), c2.greenF(), bias); + qreal b = mixQreal(c1.blueF(), c2.blueF(), bias); + qreal a = mixQreal(c1.alphaF(), c2.alphaF(), bias); + + return QColor::fromRgbF(r, g, b, a); +} + +void UkuiSettingButton::onPaletteChanged() +{ + m_foregroundColor = FOREGROUND_COLOR_NORMAL; + this->repaint(); +} + +void UkuiSettingButton::setPressColor() +{ + QColor hightlight = this->palette().color(QPalette::Active,QPalette::Highlight); + QColor mix = this->palette().color(QPalette::Active,QPalette::BrightText); + m_foregroundColor = mixColor(hightlight, mix, 0.05); +} + +void UkuiSettingButton::setHoverColor() +{ + QColor hightlight = this->palette().color(QPalette::Active,QPalette::Highlight); + QColor mix = this->palette().color(QPalette::Active,QPalette::BrightText); + m_foregroundColor = mixColor(hightlight, mix, 0.2); +} + +void UkuiSettingButton::setNormalColor() +{ + m_foregroundColor = FOREGROUND_COLOR_NORMAL; +} + +UkuiSettingButton::UkuiSettingButton(QWidget *parent) +{ + connect(qApp, &QApplication::paletteChanged, this, &UkuiSettingButton::onPaletteChanged); + onPaletteChanged(); +} + +UkuiSettingButton::~UkuiSettingButton() +{ + +} + +void UkuiSettingButton::paintEvent(QPaintEvent *event) +{ + QPalette pal = this->palette(); + pal.setColor(QPalette::WindowText, m_foregroundColor); + this->setPalette(pal); + return QLabel::paintEvent(event); +} + +void UkuiSettingButton::enterEvent(QEvent *event) +{ + setHoverColor(); + this->update(); +} + +void UkuiSettingButton::leaveEvent(QEvent *event) +{ + setNormalColor(); + this->update(); +} + +void UkuiSettingButton::mousePressEvent(QMouseEvent *event) +{ + setPressColor(); + this->update(); + return QLabel::mousePressEvent(event); +} + +void UkuiSettingButton::mouseReleaseEvent(QMouseEvent *event) +{ + setHoverColor(); + this->update(); + Q_EMIT clicked(); + return QLabel::mouseReleaseEvent(event); +} + + +UkmediaVolumeSlider::UkmediaVolumeSlider(QWidget *parent,bool needTip) +{ + Q_UNUSED(parent); + if (needTip) { + state = needTip; + m_pTiplabel = new UkuiMediaSliderTipLabel(); + m_pTiplabel->setWindowFlags(Qt::ToolTip); + // qApp->installEventFilter(new AppEventFilter(this)); + m_pTiplabel->setFixedSize(52,30); + m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); + } + this->setFixedSize(284,20); +} + +void UkmediaVolumeSlider::mousePressEvent(QMouseEvent *ev) +{ + + if (state) { + m_pTiplabel->show(); + } + //注意应先调用父类的鼠标点击处理事件,这样可以不影响拖动的情况 + //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) + int value = 0; + int currentX = ev->pos().x(); + double per = currentX * 1.0 / this->width(); + if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { + value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); + } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { + value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); + } else { + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + } + } else { + value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); + } + if(value != this->value()) { + mousePress = true; + Q_EMIT silderPressSignal(); + } + this->setValue(value); + QSlider::mousePressEvent(ev); + //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 + QEvent evEvent(static_cast(QEvent::User + 1)); + QCoreApplication::sendEvent(parentWidget(), &evEvent); +} + +void UkmediaVolumeSlider::mouseReleaseEvent(QMouseEvent *e) +{ + if(mousePress){ + Q_EMIT silderReleaseSignal(); + } + mousePress = false; + QSlider::mouseReleaseEvent(e); + +} + +void UkmediaVolumeSlider::initStyleOption(QStyleOptionSlider *option) +{ + QSlider::initStyleOption(option); +} + +void UkmediaVolumeSlider::leaveEvent(QEvent *e) +{ + if (state) { + m_pTiplabel->hide(); + } +} + +void UkmediaVolumeSlider::enterEvent(QEvent *e) +{ + if (state) { + m_pTiplabel->show(); + } +} + +void UkmediaVolumeSlider::paintEvent(QPaintEvent *e) +{ + QRect rect; + QStyleOptionSlider m_option; + QSlider::paintEvent(e); + if (state) { + + this->initStyleOption(&m_option); + rect = this->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,this); + QPoint gPos = this->mapToGlobal(rect.topLeft()); + QString percent; + percent = QString::number(this->value()); + percent.append("%"); + m_pTiplabel->setText(percent); + m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); + } + + +} + +UkmediaVolumeSlider::~UkmediaVolumeSlider() +{ +// delete m_pTiplabel; +} + +void UkuiButtonDrawSvg::init(QImage img, QColor color) +{ + themeIcon.image = img; + themeIcon.color = color; +} + +void UkuiButtonDrawSvg::paintEvent(QPaintEvent *event) +{ + QStyleOptionComplex opt; + opt.init(this); + QPainter p(this); + + QColor color; + switch (buttonState) { + case PUSH_BUTTON_NORMAL: + color = QColor(0x25,0x25,0x25,0xFF); + break; + case PUSH_BUTTON_CLICK: + color = QColor(0x37,0x90,0xFA,0xFF); + break; + case PUSH_BUTTON_PRESS: + color = QColor(0x24,0x6D,0xD4,0xFF); + break; + default: + break; + } + + p.setBrush(QBrush(color)); + p.setPen(Qt::NoPen); + QPainterPath path; + opt.rect.adjust(0,0,0,0); + path.addRoundedRect(opt.rect,18,18); + p.setRenderHint(QPainter::Antialiasing); // 反锯齿; + p.drawRoundedRect(opt.rect,18,18); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + style()->drawComplexControl(QStyle::CC_ToolButton,&opt,&p,this); + +// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +// QStyleOption opt; +// opt.init(this); +// QPainter p(this); +// p.setBrush(QBrush(QColor(0x13,0x13,0x14,0x00))); +// p.setPen(Qt::NoPen); +// QPainterPath path; +// opt.rect.adjust(0,0,0,0); +// path.addRoundedRect(opt.rect,18,18); +// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; +// p.drawRoundedRect(opt.rect,18,18); +// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +} + +QRect UkuiButtonDrawSvg::IconGeometry() +{ + QRect res = QRect(QPoint(0,0),QSize(24,24)); + res.moveCenter(QRect(0,0,width(),height()).center()); + return res; +} + +void UkuiButtonDrawSvg::draw(QPaintEvent* e) +{ + Q_UNUSED(e); + QPainter painter(this); + QRect iconRect = IconGeometry(); + if (themeIcon.image.size() != iconRect.size()) + { + themeIcon.image = themeIcon.image.scaled(iconRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); + QRect r = themeIcon.image.rect(); + r.moveCenter(iconRect.center()); + iconRect = r; + } + + this->setProperty("fillIconSymbolicColor", true); + filledSymbolicColoredPixmap(themeIcon.image,themeIcon.color); + painter.drawImage(iconRect, themeIcon.image); +} + +bool UkuiButtonDrawSvg::event(QEvent *event) +{ + switch (event->type()) + { + case QEvent::Paint: + draw(static_cast(event)); + break; + + case QEvent::Move: + case QEvent::Resize: + { + QRect rect = IconGeometry(); + } + break; + + case QEvent::MouseButtonPress: + case QEvent::MouseButtonRelease: + case QEvent::MouseButtonDblClick: + event->accept(); + break; + + default: + break; + } + + return QPushButton::event(event); +} + + +UkuiButtonDrawSvg::UkuiButtonDrawSvg(QWidget *parent) +{ + Q_UNUSED(parent); +} +UkuiButtonDrawSvg::~UkuiButtonDrawSvg() +{ + +} + +QPixmap UkuiButtonDrawSvg::filledSymbolicColoredPixmap(QImage &img, QColor &baseColor) +{ + + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + int hue = color.hue(); + if (!qAbs(hue - symbolic_color.hue()) < 10) { + color.setRed(baseColor.red()); + color.setGreen(baseColor.green()); + color.setBlue(baseColor.blue()); + img.setPixelColor(x, y, color); + } + } + } + } + + return QPixmap::fromImage(img); +} + +FixLabel::FixLabel(QWidget *parent): + QLabel(parent) +{ + +} + +FixLabel::FixLabel(QString text , QWidget *parent): + QLabel(parent) +{ + this->setText(text); +} + +FixLabel::~FixLabel() +{ + +} + +void FixLabel::paintEvent(QPaintEvent *event) +{ + QFontMetrics fontMetrics(this->font()); + int fontSize = fontMetrics.width(fullText); + if (fontSize > this->width()) { + this->setText(fontMetrics.elidedText(fullText, Qt::ElideRight, this->width()), false); +// this->setToolTip(mStr); + } else { + this->setText(fullText, false); + this->setToolTip(""); + } + QLabel::paintEvent(event); +} + +void FixLabel::setText(const QString & text, bool saveTextFlag) +{ + if (saveTextFlag) + fullText = text; + QLabel::setText(text); +} + diff --git a/ukui-volume-control-applet-qt/ukmedia_custom_class.h b/ukui-volume-control-applet-qt/ukmedia_custom_class.h new file mode 100644 index 0000000..9848385 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_custom_class.h @@ -0,0 +1,314 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#define MIDDLE_COLOR 178 +#define BACKGROUND_COLOR QColor(0,0,0,0) + + + +class UkmediaTrayIcon : public QSystemTrayIcon +{ + Q_OBJECT +public: + UkmediaTrayIcon(QWidget *parent = nullptr); + ~UkmediaTrayIcon(); + +Q_SIGNALS: + void wheelRollEventSignal(bool); + +protected: + bool event(QEvent *e) ; +}; + +class MyTimer : public QObject +{ + Q_OBJECT + +public: + MyTimer(QObject* parent = NULL); + ~MyTimer(); + void handleTimeout(); //超时处理函数 + virtual void timerEvent( QTimerEvent *event); +private: + int m_nTimerID; +Q_SIGNALS: + void timeOut(); +}; + +typedef struct UkuiThemeIcon +{ + QImage image; + QColor color; +}UkuiThemeIcon; +enum DisplayerMode{ + MINI_MODE, + ADVANCED_MODE +}; +enum PushButtonState{ + PUSH_BUTTON_NORMAL, + PUSH_BUTTON_CLICK, + PUSH_BUTTON_PRESS +}; +static QColor symbolic_color = Qt::gray; + +class UkuiMediaSliderTipLabel:public QLabel +{ + public: + UkuiMediaSliderTipLabel(); + ~UkuiMediaSliderTipLabel(); +protected: + void paintEvent(QPaintEvent*); +}; + +class UkuiButtonDrawSvg:public QPushButton +{ + Q_OBJECT +public: + UkuiButtonDrawSvg(QWidget *parent = nullptr); + ~UkuiButtonDrawSvg(); + QPixmap filledSymbolicColoredPixmap(QImage &source, QColor &baseColor); + QRect IconGeometry(); + void draw(QPaintEvent* e); + void init(QImage image ,QColor color); + friend class DeviceSwitchWidget; + friend class UkmediaMainWidget; + friend class UkmediaOsdDisplayWidget; + friend class UkmediaSystemVolumeWidget; + +protected: + void paintEvent(QPaintEvent *event); + bool event(QEvent *e); +private: + int buttonState = PUSH_BUTTON_NORMAL; + UkuiThemeIcon themeIcon; +}; + +class UkuiApplicationWidget:public QWidget +{ + Q_OBJECT +public: + UkuiApplicationWidget(QWidget *parent = nullptr); + ~UkuiApplicationWidget(); +protected: + void paintEvent(QPaintEvent*); +}; + +class UkuiMediaMuteButton:public QPushButton +{ + Q_OBJECT +public: + UkuiMediaMuteButton(QWidget *parent = nullptr); + ~UkuiMediaMuteButton(); + friend class UkmediaMiniMasterVolumeWidget; + friend class UkmediaMainWidget; + friend class UkmediaSystemVolumeWidget; + friend class ApplicationVolumeWidget; + void setButtonIcon(const QIcon &icon); + void setActive(const bool &isActive); + void setDefaultPixmap(); + enum PixmapColor { + WHITE = 0, + BLACK, + GRAY, + BLUE, + }; + const QPixmap loadSvg(const QPixmap &source, const PixmapColor &color); + +protected: + void mousePressEvent(QMouseEvent *e)override; + void mouseReleaseEvent(QMouseEvent *e)override; + void paintEvent(QPaintEvent *event); + void enterEvent(QEvent *e); + void leaveEvent(QEvent *e); + +private: + bool m_isActivated = false; + + QColor m_backgroundColor; + QLabel * m_iconLabel = nullptr; + QPixmap m_pixmap; + void refreshButtonIcon(); + int buttonState = PUSH_BUTTON_NORMAL; + +private Q_SLOTS: + void onPaletteChanged(); +}; + +class UkuiMediaButton:public QPushButton +{ + Q_OBJECT +public: + UkuiMediaButton(QWidget *parent = nullptr); + ~UkuiMediaButton(); + friend class UkmediaMiniMasterVolumeWidget; + friend class UkmediaMainWidget; + friend class UkmediaSystemVolumeWidget; + friend class ApplicationVolumeWidget; + void setButtonIcon(const QIcon &icon); + void setDefaultPixmap(); + void setActive(const bool &isActive); + enum PixmapColor { + WHITE = 0, + BLACK, + GRAY, + BLUE, + }; + const QPixmap loadSvg(const QPixmap &source, const PixmapColor &color); + +protected: + void paintEvent(QPaintEvent *event); + void mousePressEvent(QMouseEvent *event)override; + void mouseReleaseEvent(QMouseEvent *event)override; + void enterEvent(QEvent *event); + void leaveEvent(QEvent *event); +private: + + int buttonState = PUSH_BUTTON_NORMAL; + + bool m_isActivated = false; + QLabel * m_iconLabel = nullptr; + QColor m_backgroundColor; + QPixmap m_pixmap; + + void refreshButtonIcon(); + +private Q_SLOTS: + void onPaletteChanged(); +}; + + +class UkuiSettingButton:public QLabel +{ + Q_OBJECT +public: + UkuiSettingButton(QWidget *parent = nullptr); + ~UkuiSettingButton(); + friend class UkmediaMiniMasterVolumeWidget; + friend class UkmediaMainWidget; + friend class UkmediaSystemVolumeWidget; + friend class ApplicationVolumeWidget; + +protected: + + void paintEvent(QPaintEvent *event); + void enterEvent(QEvent *event); + void leaveEvent(QEvent *event); + void mousePressEvent(QMouseEvent *event); + void mouseReleaseEvent(QMouseEvent *event); + +private: + + QColor m_foregroundColor; + + void setPressColor(); + void setHoverColor(); + void setNormalColor(); + +Q_SIGNALS: + void clicked(void); + +private Q_SLOTS: + void onPaletteChanged(); +}; + + + +class UkmediaVolumeSlider : public QSlider +{ + Q_OBJECT +public: +// UkmediaVolumeSlider(QWidget *parent = nullptr); + UkmediaVolumeSlider(QWidget *parent = nullptr,bool needTip = false); + void initStyleOption(QStyleOptionSlider *option); + ~UkmediaVolumeSlider(); +Q_SIGNALS: + void silderPressSignal(); + void silderReleaseSignal(); +private: + UkuiMediaSliderTipLabel *m_pTiplabel; + bool state = false; + bool mousePress = false; + + +protected: + void mousePressEvent(QMouseEvent *ev); + void mouseReleaseEvent(QMouseEvent *e); +// void mouseMoveEvent(QMouseEvent *e) +// { +// int value = 0; +// int currentX = e->pos().x(); +// double per = currentX * 1.0 / this->width(); +// if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 +// value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); +// if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { +// value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); +// } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { +// value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); +// } else { +// value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); +// } +// } else { +// value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); +// } +// this->setValue(value); +// QSlider::mousePressEvent(e); +//// setCursor(QCursor(Qt::OpenHandCursor)); +//// m_displayLabel->move((this->width()-m_displayLabel->width())*this->value()/(this->maximum()-this->minimum()),3); +//// QSlider::mouseMoveEvent(e); +// } + void leaveEvent(QEvent *e); + + void enterEvent(QEvent *e); + void paintEvent(QPaintEvent *e); +}; + +//文本长自动省略并添加悬浮 +class FixLabel : public QLabel +{ + + Q_OBJECT +public: + explicit FixLabel(QWidget *parent = nullptr); + explicit FixLabel(QString text , QWidget *parent = nullptr); + ~FixLabel(); + void setText(const QString &text, bool saveTextFlag = true); + QString fullText; +private: + void paintEvent(QPaintEvent *event); + +private: +}; + +#endif diff --git a/ukui-volume-control-applet-qt/ukmedia_custom_sound.cpp b/ukui-volume-control-applet-qt/ukmedia_custom_sound.cpp new file mode 100644 index 0000000..433aa3a --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_custom_sound.cpp @@ -0,0 +1,211 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see close(); +} + +bool CustomSound::createAudioFile() +{ + //打开或创建文件 + QFile *file; + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + if(!QFile::exists(audioPath)){ + file = new QFile(audioPath); + if(!file->open(QFile::WriteOnly)) + return false; + //写入xml头部 + QDomDocument doc; + QDomProcessingInstruction instruction; //添加处理命令 + + instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); + doc.appendChild(instruction); + //添加根节点 + QDomElement root = doc.createElement("root"); + doc.appendChild(root); + //添加子节点 + QDomElement node = doc.createElement("firstRun"); + QDomElement init = doc.createElement("init"); //创建子元素 + QDomText text = doc.createTextNode("true"); + init.appendChild(text); + node.appendChild(init); + root.appendChild(node); + + //输出到文件 + QTextStream out_stream(file); + doc.save(out_stream,4); //缩进4格 + file->close(); + return true; + } + return true; +} + +//判断某个节点是否存在 +bool CustomSound::isExist(QString nodeName) +{ + if (nodeName == "") + return false; + //打开文件 + QString errorStr; + int errorLine; + int errorCol; + + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + QFile file(audioPath); + + if(!file.exists()) + createAudioFile(); + + if(file.open(QFile::ReadOnly)){ + QDomDocument doc; + if(doc.setContent(&file,true,&errorStr,&errorLine,&errorCol)){ + qDebug() << "isExist" <='0' && nodeName.at(0)<='9'){ + nodeName = "Audio_"+nodeName; + } + while(!ele.isNull()) { + if(ele.nodeName() == nodeName) + return true; + ele = ele.nextSiblingElement(); + } + } + else + { + QFile::remove(audioPath); + qDebug() << errorStr << "line: " << errorLine << "col: " << errorCol; + } + + file.close(); + } + + return false; +} + +//添加第一个子节点及其子元素 +int CustomSound::addXmlNode(QString nodeName, bool initState) +{ + //打开文件 + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + QFile file(audioPath); + QDomDocument doc;//增加一个一级子节点以及元素 + if(file.open(QFile::ReadOnly)){ + if(doc.setContent(&file)){ + file.close(); + } + else { + file.close(); + return -1; + } + } + else + return -1; + + //添加新节点 + nodeName.remove(" "); + nodeName.remove("/"); + nodeName.remove("("); + nodeName.remove(")"); + nodeName.remove("["); + nodeName.remove("]"); + if(nodeName.at(0)>='0' && nodeName.at(0)<='9'){ + nodeName = "Audio_"+nodeName; + } + QDomElement root=doc.documentElement(); + QDomElement node=doc.createElement(nodeName); + + QDomElement init=doc.createElement("init"); + QDomText text; + if(initState) + text = doc.createTextNode("true"); + else + text = doc.createTextNode("false"); + init.appendChild(text); + node.appendChild(init); + root.appendChild(node); + qDebug() << "addXmlNode" << nodeName ; + //修改first-run状态 + QDomElement ele = root.firstChildElement(); + while(!ele.isNull()) { + if(ele.nodeName() == "firstRun"){ + QString value = ele.firstChildElement().firstChild().nodeValue(); + if(value == "true") + ele.firstChildElement().firstChild().setNodeValue("false"); + } + ele = ele.nextSiblingElement(); + } + + if(file.open(QFile::WriteOnly|QFile::Truncate)) { + //输出到文件 + QTextStream out_stream(&file); + doc.save(out_stream,4); //缩进4格 + file.close(); + } + + return 0; +} + +bool CustomSound::isFirstRun() +{ + + QString audioPath = QDir::homePath() + "/.config/customAudio.xml"; + QFile file(audioPath); + if(!file.exists()){ + createAudioFile(); + } + + if(file.open(QFile::ReadOnly)){ + QDomDocument doc; + if(doc.setContent(&file)){ + file.close(); + QDomElement root = doc.documentElement(); + QDomElement ele = root.firstChildElement(); + + qDebug()<<"===================ele.nodeName() :"< +#include +#include +#include +#include + +class CustomSound +{ +public: + CustomSound(); + ~CustomSound(); + bool createAudioFile(); + bool isExist(QString nodeName); + int addXmlNode(QString nodeNane, bool initState); + bool isFirstRun(); + + +public: + QFile *file; +private: + QDomDocument *doc; + QString audioPath; +}; + +#endif // CUSTOMSOUND_H diff --git a/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp new file mode 100644 index 0000000..09e598a --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_main_widget.cpp @@ -0,0 +1,3165 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +#define MAINWINDOW_WIDTH 420 +#define MAINWINDOW_HEIGHT 476 +#define KEYBINDINGS_CUSTOM_SCHEMA "org.ukui.media.sound" +#define KEYBINDINGS_CUSTOM_DIR "/org/ukui/sound/keybindings/" +#define KEY_SOUNDS_SCHEMA "org.ukui.sound" +#define EVENT_SOUNDS_KEY "event-sounds" +#define MAX_CUSTOM_SHORTCUTS 1000 + +#define FILENAME_KEY "filename" +#define NAME_KEY "name" + +double transparency = 0.8; +typedef enum { + DEVICE_VOLUME_BUTTON, + APP_VOLUME_BUTTON +}ButtonType; + +ButtonType btnType = DEVICE_VOLUME_BUTTON; +guint appnum = 0; +int app_count = 0; +extern bool isCheckBluetoothInput; +extern DisplayerMode displayMode ; +QString application_name; + +UkmediaMainWidget::UkmediaMainWidget(QMainWindow *parent) : QMainWindow(parent) +{ + //初始化系统托盘 + m_pVolumeControl = new UkmediaVolumeControl(); + + //初始化gsetting + initGsettings(); + //初始化界面 + initWidget(); + //初始化托盘图标 + initSystemTrayIcon(); + //Dbus注册 + UkmediaDbusRegister(); + initAlertSound(); + //处理槽函数 + dealSlot(); +} + +bool UkmediaMainWidget::eventFilter(QObject *obj, QEvent *event) +{ + if (event->type() == QEvent::ActivationChange) { + if(QApplication::activeWindow() != this) { + this->hide(); + } + } + return QWidget::eventFilter(obj,event); +} + +void UkmediaMainWidget::paintEvent(QPaintEvent *event) +{ + +} + +void UkmediaMainWidget::initSystemTrayIcon() +{ + soundSystemTrayIcon = new UkmediaTrayIcon(this); + ca_context_create(&caContext); + //为系统托盘图标添加菜单静音和声音首选项 + soundSystemTrayIcon->setToolTip(tr("Output volume control")); +#if (QT_VERSION <= QT_VERSION_CHECK(5,6,1)) + m_pSoundPreferenceAction = new QAction(tr("Sound preference(S)"),this); +#elif (QT_VERSION > QT_VERSION_CHECK(5,6,1)) + m_pSoundPreferenceAction = new QAction(tr("Sound preference(S)")); +#endif + QString settingsIconStr = "document-page-setup-symbolic"; + QIcon settingsIcon = QIcon::fromTheme(settingsIconStr); + m_pSoundPreferenceAction->setIcon(settingsIcon); + soundSystemTrayIcon->setVisible(true); + int nOutputValue = paVolumeToValue(m_pVolumeControl->getSinkVolume()); + + bool outputStatus = m_pVolumeControl->getSinkMute(); + outputVolumeDarkThemeImage(nOutputValue,outputStatus); + + //初始化右键菜单 + systemTrayMenuInit(); +} + +/* + * 初始化右键菜单 + */ +void UkmediaMainWidget::systemTrayMenuInit() +{ + menu = new QMenu(); + menu->setAttribute(Qt::WA_NoMouseReplay); + soundSystemTrayIcon->setContextMenu(menu); + //设置右键菜单 + menu->addAction(m_pSoundPreferenceAction); +} + +/* + * 初始化界面 + */ +void UkmediaMainWidget::initWidget() +{ + QWidget::installEventFilter(this);//为这个窗口安装过滤器 + this->setFixedSize(MAINWINDOW_WIDTH,MAINWINDOW_HEIGHT); + this->setAttribute(Qt::WA_TranslucentBackground,true); //透明 + this->setMouseTracking(true); + this->setFocusPolicy(Qt::NoFocus); + + QPainterPath path; + auto rect = this->rect(); + path.addRoundedRect(rect, 12, 12); + KWindowEffects::enableBlurBehind(this->winId(), true, QRegion(path.toFillPolygon().toPolygon())); // 背景模糊 + + osdWidget = new UkmediaOsdDisplayWidget(); + headsetWidget = new UkuiMediaSetHeadsetWidget; // osd弹窗 + + m_pTabWidget = new QTabWidget(this); + this->setCentralWidget(m_pTabWidget); + m_pTabWidget->tabBar()->setFixedWidth(this->width()+1); + systemWidget = new UkmediaSystemVolumeWidget(m_pTabWidget); + appWidget = new ApplicationVolumeWidget(m_pTabWidget); + myLine(volumeLine,volumeSettingLine); // 界面分隔线 + + + m_pTabWidget->addTab(systemWidget, tr("")); + m_pTabWidget->addTab(appWidget,tr("")); + m_tabBarLayout = new QHBoxLayout(this); + m_tabBarLayout->setContentsMargins(0,0,0,0); + systemWidgetLabel = new QLabel(tr("System Volume")); + systemWidgetLabel->setAlignment(Qt::AlignCenter); + appWidgetLabel = new QLabel(tr("App Volume")); + appWidgetLabel->setAlignment(Qt::AlignCenter); + m_tabBarLayout->addWidget(systemWidgetLabel); + m_tabBarLayout->addWidget(appWidgetLabel); + m_pTabWidget->tabBar()->setLayout(m_tabBarLayout); + m_pTabWidget->tabBar()->setProperty("useTabbarSeparateLine",false); // 去掉标签页中间的分隔线 + m_pTabWidget->setAttribute(Qt::WA_TranslucentBackground,true); // 背景透明 解决切换黑屏问题 + paintWithTrans(); +} + +void UkmediaMainWidget::onTransChanged() +{ + m_pTransparency = m_pTransGsettings->get("transparency").toDouble() + 0.15; + m_pTransparency = (m_pTransparency > 1) ? 1 : m_pTransparency; + paintWithTrans(); +} + +void UkmediaMainWidget::paintWithTrans() +{ + QPalette pal = m_pTabWidget->palette(); + QColor color = qApp->palette().base().color(); + color.setAlphaF(m_pTransparency); + pal.setColor(QPalette::Base, color); + m_pTabWidget->setPalette(pal); + + QPalette tabPal = m_pTabWidget->tabBar()->palette(); + tabPal.setColor(QPalette::Base, color); + + QColor inactiveColor = qApp->palette().window().color(); + inactiveColor.setAlphaF(0.86 *m_pTransparency); + tabPal.setColor(QPalette::Window, inactiveColor); + + m_pTabWidget->tabBar()->setPalette(tabPal); +} + +/* + * 添加分隔线 + */ +void UkmediaMainWidget::myLine(QFrame *volumeLine,QFrame *volumeSettingLine) +{ + volumeLine = new QFrame(this); + volumeLine->setFrameShape(QFrame::NoFrame); + volumeLine->setFrameStyle(QFrame::HLine); + volumeLine->setFixedSize(420,1); + volumeLine->setParent(this); + QPalette palette = volumeLine->palette(); + QColor color = QColor(239,239,239); + color.setAlphaF(0.1); + palette.setColor(QPalette::WindowText, color); + volumeLine->setPalette(palette); + + volumeSettingLine = new QFrame(this); + volumeSettingLine->setFrameShape(QFrame::NoFrame); + volumeSettingLine->setFrameStyle(QFrame::HLine); + volumeSettingLine->setFixedSize(420,1); + volumeSettingLine->setParent(this); + palette = volumeSettingLine->palette(); + palette.setColor(QPalette::WindowText, color); + volumeSettingLine->setPalette(palette); + + volumeLine->move(0,140); + volumeSettingLine->move(0,424); +} + +/* + * 初始化静音灯 + */ +void UkmediaMainWidget::initVolumeLed() +{ + bool outputStatus = m_pVolumeControl->getSinkMute();//获取输出设备的静音状态 + if(outputStatus) { + QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); + message << "mute"; + QDBusConnection::systemBus().send(message); + } + else { + QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); + message << "no"; + QDBusConnection::systemBus().send(message); + } + themeChangeIcons(); +} + + +/* + * 注册dbus + */ +void UkmediaMainWidget::UkmediaDbusRegister() +{ + QDBusConnection::sessionBus().unregisterService("org.ukui.media"); + QDBusConnection::sessionBus().registerService("org.ukui.media"); + QDBusConnection::sessionBus().registerObject("/", this,QDBusConnection :: ExportAllSlots | QDBusConnection :: ExportAllSignals); +} + + +void UkmediaMainWidget::initVolumeSlider() +{ + int sinkVolume = paVolumeToValue(m_pVolumeControl->getSinkVolume()); + QString percent; + if(isFirstMuteLed) + { + initVolumeLed(); + isFirstMuteLed = false; + } + sinkVolume = initDefaultVolume(sinkVolume); + + percent = QString::number(sinkVolume); + appWidget->systemVolumeDisplayLabel->setText(percent+"%"); + systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); + appWidget->systemVolumeSlider->blockSignals(true); + systemWidget->m_pSystemVolumeSlider->blockSignals(true); + systemWidget->m_pSystemVolumeSlider->setValue(sinkVolume); + appWidget->systemVolumeSlider->setValue(sinkVolume); + systemWidget->m_pSystemVolumeSlider->blockSignals(false); + appWidget->systemVolumeSlider->blockSignals(false); + + initOutputListWidgetItem(); + initInputListWidgetItem(); + themeChangeIcons(); + //设置输入输出设备名 +} + +/* + * 初始化默认音量 + */ +int UkmediaMainWidget::initDefaultVolume(int sinkVolume) +{ + qDebug() << "initDefaultVolume----------->" << m_pVolumeControl->sinkPortName << m_pVolumeControl->sourcePortName; + QString temp = ""; + QString outputCardName = findCardName(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->cardMap); + if (m_pVolumeControl->sinkPortName.contains("histen-algo",Qt::CaseInsensitive)) { + m_pVolumeControl->sinkPortName = m_pVolumeControl->findSinkActivePortName(PANGUW_SINK); + temp = "histen-algo"; + } + + if(!m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->sinkPortName)) && !strcmp(m_pVolumeControl->sinkPortName.toLatin1().data(),"") == 0 ) { + + if (m_pVolumeControl->sinkPortName.contains("headphone",Qt::CaseInsensitive)) { + if(outputCardName.contains("bluez",Qt::CaseSensitive)) + sinkVolume = OUTPUT_VOLUME; + else + sinkVolume = HEADPHONE_VOLUME; + } + else if (m_pVolumeControl->sinkPortName.contains("hdmi",Qt::CaseInsensitive)) { + sinkVolume = HDMI_VOLUME; + } + else if (m_pVolumeControl->sinkPortName.contains("speaker",Qt::CaseInsensitive)){ + sinkVolume = OUTPUT_VOLUME; + } + else { + sinkVolume = HEADPHONE_VOLUME; + } + m_pVolumeControl->sinkVolume = valueToPaVolume(sinkVolume); + m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,valueToPaVolume(sinkVolume)); + m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sinkPortName,false); + if (temp != "") + m_pVolumeControl->sinkPortName = temp; + qDebug() << "initSystemVolume" << m_pVolumeControl->sinkPortName << sinkVolume << m_pVolumeControl->sinkVolume; + } + else if(m_pVolumeControl->sinkPortName == ""&& !m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->defaultSinkName))){ + m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSinkName,false); + sinkVolume = OUTPUT_VOLUME; + m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,valueToPaVolume(sinkVolume)); + qDebug()<< "初始化音量sinkPortName不存在的情况" << sinkVolume; + } + if(!m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->sourcePortName)) && !strcmp(m_pVolumeControl->sourcePortName.toLatin1().data(),"") == 0 ) + { + m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->sourcePortName,false); + m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,valueToPaVolume(MIC_VOLUME)); + qDebug() << "初始化输入音量为100" ; + } + else if (m_pVolumeControl->sourcePortName == "" && !m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(m_pVolumeControl->defaultSourceName))){ + m_pVolumeControl->customSoundFile->addXmlNode(m_pVolumeControl->defaultSourceName,false); + m_pVolumeControl->setSourceVolume(m_pVolumeControl->sourceIndex,valueToPaVolume(MIC_VOLUME)); + qDebug()<< "初始化音量SourcePortName不存在的情况" <defaultSourceName ; + } + return sinkVolume; +} + + +/* + * 初始化output/input list widget的选项 + */ +void UkmediaMainWidget::initOutputListWidgetItem() +{ + QString outputCardName = findCardName(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->cardMap); + QString outputPortLabel = findOutputPortLabel(m_pVolumeControl->defaultOutputCard,m_pVolumeControl->sinkPortName); + findOutputListWidgetItem(outputCardName,outputPortLabel); + + int vol = m_pVolumeControl->getSinkVolume(); + systemWidget->m_pSystemVolumeSlider->blockSignals(true); + appWidget->systemVolumeSlider->blockSignals(true); + appWidget->systemVolumeSlider->setValue(paVolumeToValue(vol)); + systemWidget->m_pSystemVolumeSlider->setValue(paVolumeToValue(vol)); + systemWidget->m_pSystemVolumeSlider->blockSignals(false); + appWidget->systemVolumeSlider->blockSignals(false); + systemWidget->m_pSystemVolumeSliderLabel->setText(QString::number(paVolumeToValue(vol))+"%"); + appWidget->systemVolumeDisplayLabel->setText(QString::number(paVolumeToValue(vol))+"%"); + + outputListWidgetRow = systemWidget->m_pOutputListWidget->currentRow(); + + qDebug() <<"initOutputListWidgetItem" << m_pVolumeControl->defaultOutputCard << outputCardName + <sinkPortName << outputPortLabel; +} + +void UkmediaMainWidget::initInputListWidgetItem() +{ + QString inputCardName = findCardName(m_pVolumeControl->defaultInputCard,m_pVolumeControl->cardMap); + QString inputPortLabel = findInputPortLabel(m_pVolumeControl->defaultInputCard,m_pVolumeControl->sourcePortName); + findInputListWidgetItem(inputCardName,inputPortLabel); + + qDebug() <<"initInputListWidgetItem" << m_pVolumeControl->defaultInputCard << inputCardName + <sourcePortName << inputPortLabel; +} + +/* + * 滑动条值转换成音量值 + */ +int UkmediaMainWidget::valueToPaVolume(int value) +{ + return value / UKMEDIA_VOLUME_NORMAL * PA_VOLUME_NORMAL; +} + +/* + * 音量值转换成滑动条值 + */ +int UkmediaMainWidget::paVolumeToValue(int value) +{ + return (value / PA_VOLUME_NORMAL * UKMEDIA_VOLUME_NORMAL) + 0.5; +} + +QString UkmediaMainWidget::outputVolumeToIconStr(bool status,int volume) +{ + QString iconStr; + if (status) { + iconStr = iconNameOutputs[0]; + } + else if (volume <= 0 && !shortcutMute) { + iconStr = iconNameOutputs[0]; + } + else if(volume <= 0 && shortcutMute){ + iconStr = iconNameOutputs[0]; + } + else if (volume > 0 && volume <= 33) { + iconStr = iconNameOutputs[1]; + } + else if (volume >33 && volume <= 66) { + iconStr = iconNameOutputs[2]; + } + else { + iconStr = iconNameOutputs[3]; + } + return iconStr; +} + +/* + * 处理槽函数 + */ +void UkmediaMainWidget::dealSlot() +{ + QDBusInterface *iface = new QDBusInterface("org.freedesktop.login1", + "/org/freedesktop/login1", + "org.freedesktop.login1.Manager", + QDBusConnection::systemBus(), + this); + connect(iface, SIGNAL(PrepareForSleep(bool)), this, SLOT(onPrepareForSleep(bool))); + + //根据设备检测发来的信号,显示相应的提示窗 + connect(m_pVolumeControl,SIGNAL(device_changed_signal(QString)),this,SLOT(deviceChangedShowSlot(QString))); + + //声卡包含headsetmic 端口时插入4段式mic需要设置对应的port + QDBusConnection::sessionBus().connect( QString(), "/", "org.ukui.media", "headsetJack", this, SLOT(setHeadsetPort(QString))); + QTimer::singleShot(100, this, SLOT(initVolumeSlider())); + + connect(m_pVolumeControl,&UkmediaVolumeControl::updateMute,this,[=](bool state) { + bool outputStatus = m_pVolumeControl->getSinkMute();//获取输出设备的静音状态 + if(outputStatus) { + QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); + message << "mute"; + QDBusConnection::systemBus().send(message); + } + else { + QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemOutputVolumeIsMute"); + message << "no"; + QDBusConnection::systemBus().send(message); + } + setVolumeSettingMute(state); + themeChangeIcons(); + }); + + connect(m_pVolumeControl,&UkmediaVolumeControl::updateSourceMute,this,[=](bool state) { + bool inputStatus = m_pVolumeControl->getSourceMute();//获取输入设备的静音状态 + if(inputStatus) { + QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemInputVolumeIsMute"); + message << "mute"; + QDBusConnection::systemBus().send(message); + } + else { + QDBusMessage message =QDBusMessage::createSignal("/","org.ukui.media","systemInputVolumeIsMute"); + message << "no"; + QDBusConnection::systemBus().send(message); + } + themeChangeIcons(); + }); + + connect(m_pVolumeControl,&UkmediaVolumeControl::updateVolume,this,[=](int value){ + + bool outputStatus = m_pVolumeControl->getSinkMute(); + qDebug() << "UpdateSinkVolume" << value << paVolumeToValue(value) << outputStatus; + QString percent; + percent = QString::number(paVolumeToValue(value)); + + //设置调节输入音量的提示音 + const gchar *id = NULL; + const gchar *desc = NULL; + gint retval; + + QList existsPath = listExistsPath(); + QString filenameStr; + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "volume-changed") { + break; + } + } + } + const QByteArray text = filenameStr.toLocal8Bit(); + id = text.data(); + desc = "Volume Changed"; + const gchar *eventId =id; + bool alertStatus = g_settings_get_boolean(m_pSoundSettings, EVENT_SOUNDS_KEY); + if (alertStatus) { + m_pTimer->start(100); + } + appWidget->systemVolumeDisplayLabel->setText(percent+"%"); + systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); + appWidget->systemVolumeSlider->blockSignals(true); + systemWidget->m_pSystemVolumeSlider->blockSignals(true); + systemWidget->m_pSystemVolumeSlider->setValue(paVolumeToValue(value)); + appWidget->systemVolumeSlider->setValue(paVolumeToValue(value)); + systemWidget->m_pSystemVolumeSlider->blockSignals(false); + appWidget->systemVolumeSlider->blockSignals(false); + setVolumeSettingMute(outputStatus); + setVolumeSettingValue(paVolumeToValue(value)); + initOutputListWidgetItem(); + themeChangeIcons(); + }); + + connect(m_pVolumeControl,&UkmediaVolumeControl::updateSourceVolume,this,[=](int value){ + bool inputStatus = m_pVolumeControl->getSourceMute(); + qDebug() << "UpdateSourceVolume:" << value << paVolumeToValue(value) << inputStatus; + initInputListWidgetItem(); + themeChangeIcons(); + }); + + connect(m_pVolumeControl,SIGNAL(addSinkInputSignal(const gchar *,const gchar*,int,int)),this,SLOT(addAppToAppwidget(const gchar*,const gchar *,int,int))); + connect(m_pVolumeControl,SIGNAL(sinkInputVolumeChangedSignal(const gchar *,const gchar*,int)),this,SLOT(sinkInputVolumeChangedSlot(const gchar*,const gchar *,int))); + connect(m_pVolumeControl,SIGNAL(removeSinkInputSignal(const gchar *)),this,SLOT(removeSubAppWidget(const gchar*))); + connect(m_pVolumeControl,SIGNAL(deviceChangedSignal()),this,SLOT(updateListWidgetItemSlot())); + QDBusConnection::sessionBus().connect( QString(), "/", "org.kylin.music", "sinkInputVolumeChanged", this, SLOT(updateAppVolume(QString,int,bool))); + QDBusConnection::sessionBus().connect( QString(), "/", "org.kylin.video", "sinkInputVolumeChanged", this, SLOT(updateAppVolume(QString,int,bool))); + + connect(systemWidget->m_pOutputListWidget,&QListWidget::itemClicked,this,[=](){ + if(outputListWidgetRow != systemWidget->m_pOutputListWidget->currentRow()){ + outputListWidgetCurrentRowChangedSlot(systemWidget->m_pOutputListWidget->currentRow()); + outputListWidgetRow = systemWidget->m_pOutputListWidget->currentRow(); + } + }); + + connect(systemWidget->m_pInputListWidget,SIGNAL(currentRowChanged(int )),this,SLOT(inputListWidgetCurrentRowChangedSlot(int))); + + + connect(systemWidget->m_pSystemVolumeSlider,&UkmediaVolumeSlider::silderPressSignal,this,[=](){ + mousePress = true; + mouseReleaseState = false; + }); + connect(systemWidget->m_pSystemVolumeSlider,&UkmediaVolumeSlider::silderReleaseSignal,this,[=](){ + mouseReleaseState = true; + }); + connect(appWidget->systemVolumeSlider,&UkmediaVolumeSlider::silderPressSignal,this,[=](){ + mousePress = true; + mouseReleaseState = false; + }); + connect(appWidget->systemVolumeSlider,&UkmediaVolumeSlider::silderReleaseSignal,this,[=](){ + mouseReleaseState = true; + }); + + m_pTimer = new QTimer(this); + connect(m_pTimer, SIGNAL(timeout()), this, SLOT(handleTimeout())); + m_pTimer2 = new QTimer(this); + connect(m_pTimer2, &QTimer::timeout, this, [=](){ + if(mouseReleaseState){ + gint retval; + const gchar *desc = "Volume Changed"; + QString filenameStr; + QList existsPath = this->listExistsPath(); + for (char * path : existsPath) { + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "volume-changed") { + break; + } + } + } + const QByteArray text = filenameStr.toLocal8Bit(); + const gchar *id = text.data(); + const gchar *eventId =id; + if(desc){ + bool status = g_settings_get_boolean(m_pSoundSettings, EVENT_SOUNDS_KEY); + if (status) + retval = ca_context_play (this->caContext, 0, + CA_PROP_EVENT_ID, eventId, + CA_PROP_EVENT_DESCRIPTION, desc, NULL); + qDebug() << "ca_context_play" << status << eventId << retval; + } + m_pTimer->stop(); + mousePress = false; + mouseReleaseState = false; + } + else{ + m_pTimer2->start(100); + } + }); + + /* + * 完整模式下,应用音量界面,当滑动条值改变时更改系统音量 + */ + connect(appWidget->systemVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT( advancedSystemSliderChangedSlot(int))); + + connect(systemWidget->m_pSystemVolumeSlider,SIGNAL(valueChanged(int)),this,SLOT(systemVolumeSliderChangedSlot(int))); + + connect(systemWidget->m_pSystemVolumeBtn,SIGNAL(clicked()),this,SLOT(systemVolumeButtonClickedSlot())); + connect(appWidget->systemVolumeBtn,SIGNAL(clicked()),this,SLOT(appWidgetMuteButtonCLickedSlot())); + + /* + * 鼠标中间滚轮键设置音量静音 + */ + connect(this,SIGNAL(mouse_middle_clicked_signal()),this,SLOT(mouseMeddleClickedTraySlot())); + /* + * 当无任何控制音量的界面显示时,鼠标滚轮向上滚动音量托盘图标增加音量 + * 向下滚动减少音量值 + */ + connect(soundSystemTrayIcon,SIGNAL(wheelRollEventSignal(bool)),this,SLOT(trayWheelRollEventSlot(bool))); + + connect(soundSystemTrayIcon,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),\ + this,SLOT(activatedSystemTrayIconSlot(QSystemTrayIcon::ActivationReason))); + connect(m_pSoundPreferenceAction,SIGNAL(triggered()),this,SLOT(jumpControlPanelSlot())); + connect(m_pVolumeControl,SIGNAL(updatePortSignal()),this,SLOT(updateDevicePort())); + + connect(m_pVolumeControl,SIGNAL(checkDeviceSelectionSianal(const pa_card_info *)),this,SLOT(checkAudioDeviceSelectionNeeded(const pa_card_info *))); + + connect(m_pVolumeControl,&UkmediaVolumeControl::removeSinkSignal,[=](){ + qDebug() << "removre sink signal"; + systemWidget->m_pOutputListWidget->blockSignals(true); + }); + connect(appWidget->volumeSettingButton,SIGNAL(clicked()),this,SLOT(jumpControlPanelSlot())); + connect(systemWidget->volumeSettingButton,SIGNAL(clicked()),this,SLOT(jumpControlPanelSlot())); +} + +void UkmediaMainWidget::initGsettings() +{ + m_pInitSystemVolumeSetting = new QGSettings(UKUI_AUDIO_SCHEMA); + //获取声音gsettings值 + m_pSoundSettings = g_settings_new (KEY_SOUNDS_SCHEMA); + + //检测系统主题 + if (QGSettings::isSchemaInstalled(UKUI_THEME_SETTING)){ + m_pThemeSetting = new QGSettings(UKUI_THEME_SETTING); + m_pFontSetting = new QGSettings(UKUI_THEME_SETTING); + QString fontType; + if (m_pThemeSetting->keys().contains("styleName")) { + mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); + } + if (m_pFontSetting->keys().contains("systemFont")) { + fontType = m_pFontSetting->get("systemFont").toString(); + } + if (m_pFontSetting->keys().contains("systemFontSize")) { + int font = m_pFontSetting->get("system-font-size").toInt(); + QFont fontSize(fontType,font); +// appWidget->systemVolumeLabel->setFont(fontSize); + } + connect(m_pFontSetting,SIGNAL(changed(const QString &)),this,SLOT(fontSizeChangedSlot(const QString &))); + connect(m_pThemeSetting, SIGNAL(changed(const QString &)),this,SLOT(ukuiThemeChangedSlot(const QString &))); + } + + //获取透明度 + if(QGSettings::isSchemaInstalled(TRANSPARENCY_GSETTINGS)) { + m_pTransGsettings = new QGSettings(TRANSPARENCY_GSETTINGS); + if(m_pTransGsettings->keys().contains(QString("transparency"))) { + m_pTransparency=m_pTransGsettings->get("transparency").toDouble() + 0.15; + m_pTransparency = (m_pTransparency > 1) ? 1 : m_pTransparency; + connect(m_pTransGsettings, SIGNAL(changed(const QString &)), this, SLOT(onTransChanged())); + } + } + + //给侧边栏提供音量之设置 + if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { + m_pVolumeSetting = new QGSettings(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID); + + connect(m_pVolumeSetting,SIGNAL(changed(const QString &)),this,SLOT(volumeSettingChangedSlot())); + } + + //如果为第一次运行需要关闭dp对应的配置文件 + if (QGSettings::isSchemaInstalled(UKUI_AUDIO_SCHEMA)){ + m_pInitSystemVolumeSetting = new QGSettings(UKUI_AUDIO_SCHEMA); + if (m_pInitSystemVolumeSetting->keys().contains("firstRun")) { + bool isFirstRun = m_pInitSystemVolumeSetting->get(FIRST_RUN).toBool(); + if (isFirstRun) { + m_pInitSystemVolumeSetting->set(FIRST_RUN,false); + } + } + } + +} + +/* + * 更新设备时更新字体(对listwidget的特殊处理) + */ +void UkmediaMainWidget::updateOutputListWidgetFont() { + QString fontType; + if (m_pFontSetting->keys().contains("systemFont")) { + fontType = m_pFontSetting->get("systemFont").toString(); + } + if (m_pFontSetting->keys().contains("systemFontSize")) { + int font = m_pFontSetting->get("system-font-size").toInt(); + QFont fontSize(fontType,font); + for (int row=0;rowm_pOutputListWidget->count();row++) { + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + wid->portLabel->setFont(fontSize); + } + } +} + +void UkmediaMainWidget::initAlertSound() +{ + eventList = new QStringList; + eventIdNameList = new QStringList; + eventList->append("window-close"); + eventList->append("system-setting"); + eventList->append("volume-changed"); + eventList->append("alert-sound"); + eventIdNameList->append("gudou"); + eventIdNameList->append("gudou"); + eventIdNameList->append("gudou"); + eventIdNameList->append("gudou"); + for (int i=0;icount();i++) { +// getValue(); + addValue(eventList->at(i),eventIdNameList->at(i)); + } +} + + +QList UkmediaMainWidget::listExistsPath() +{ + char ** childs; + int len; + + DConfClient * client = dconf_client_new(); + childs = dconf_client_list (client, KEYBINDINGS_CUSTOM_DIR, &len); + g_object_unref (client); + + QList vals; + + for (int i = 0; childs[i] != NULL; i++){ + if (dconf_is_rel_dir (childs[i], NULL)){ + char * val = g_strdup (childs[i]); + + vals.append(val); + } + } + g_strfreev (childs); + return vals; +} + +QString UkmediaMainWidget::findFreePath(){ + int i = 0; + char * dir; + bool found; + QList existsdirs; + + existsdirs = listExistsPath(); + + for (; i < MAX_CUSTOM_SHORTCUTS; i++){ + found = true; + dir = QString("custom%1/").arg(i).toLatin1().data(); + for (int j = 0; j < existsdirs.count(); j++) + if (!g_strcmp0(dir, existsdirs.at(j))){ + found = false; + break; + } + if (found) + break; + } + + if (i == MAX_CUSTOM_SHORTCUTS){ + qDebug() << "Keyboard Shortcuts" << "Too many custom shortcuts"; + return ""; + } + + return QString("%1%2").arg(KEYBINDINGS_CUSTOM_DIR).arg(QString(dir)); +} + +void UkmediaMainWidget::addValue(QString name,QString filename) +{ + //在创建setting表时,先判断是否存在该设置,存在时不创建 + QList existsPath = listExistsPath(); + + for (char * path : existsPath) { + + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + QString filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + + g_warning("full path: %s", allpath); + qDebug() << filenameStr << FILENAME_KEY <set(FILENAME_KEY, filename); + settings->set(NAME_KEY, name); + } +} + +/* + * 当检测到4段式3.5mm耳机插入时(声卡包含headsetmic端口) + */ +void UkmediaMainWidget::setHeadsetPort(QString str) +{ + qDebug() << "setHeadsetPort " << str << m_pVolumeControl->sinkIndex; + /* + *output: headphone + *input: intel mic + */ + if (strcmp(str.toLatin1().data(),"headphone") == 0) { + m_pVolumeControl->setSinkPort(m_pVolumeControl->defaultSinkName,m_pHeadphonesName); + m_pVolumeControl->setSourcePort(m_pVolumeControl->defaultSourceName,m_pInternalmicName); + + /* + *当需要设置的输入端口不在同一个sink上时,需要设置默认的输入设备 + */ + + + } /*output: headphone input: headset mic*/ + else if (strcmp(str.toLatin1().data(),"headset") == 0) { + m_pVolumeControl->setSinkPort(m_pVolumeControl->defaultSinkName,m_pHeadphonesName); + m_pVolumeControl->setSourcePort(m_pVolumeControl->defaultSourceName,m_pHeadsetmicName); + /* + *当需要设置的输入端口不在同一个sink上时,需要设置默认的输入设备 + */ + + + }/*output: speaker input: headphone mic*/ + else if (strcmp(str.toLatin1().data(),"headphone mic") == 0) { + m_pVolumeControl->setSinkPort(m_pVolumeControl->defaultSinkName,m_pInternalspkName); + m_pVolumeControl->setSourcePort(m_pVolumeControl->defaultSourceName,m_pHeadphonemicName); + /* + *当需要设置的输入端口不在同一个sink上时,需要设置默认的输入设备 + */ + + } +} + +/* + * 音量改变提示:策略是停止滑动时,播放提示声 + */ +void UkmediaMainWidget::handleTimeout() +{ + if(mousePress){ + if(mouseReleaseState){ + gint retval; + const gchar *desc = "Volume Changed"; + QString filenameStr; + QList existsPath = this->listExistsPath(); + for (char * path : existsPath) { + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "volume-changed") { + break; + } + } + } + const QByteArray text = filenameStr.toLocal8Bit(); + const gchar *id = text.data(); + const gchar *eventId =id; + if(desc){ + bool status = g_settings_get_boolean(m_pSoundSettings, EVENT_SOUNDS_KEY); + if (status) + retval = ca_context_play (this->caContext, 0, + CA_PROP_EVENT_ID, eventId, + CA_PROP_EVENT_DESCRIPTION, desc, NULL); + } + m_pTimer->stop(); + mousePress = false; + mouseReleaseState = false; + } + else { + m_pTimer2->start(50); + } + m_pTimer->stop(); + } + else + { + gint retval; + const gchar *desc = "Volume Changed"; + QString filenameStr; + QList existsPath = this->listExistsPath(); + for (char * path : existsPath) { + char * prepath = QString(KEYBINDINGS_CUSTOM_DIR).toLatin1().data(); + char * allpath = strcat(prepath, path); + const QByteArray ba(KEYBINDINGS_CUSTOM_SCHEMA); + const QByteArray bba(allpath); + if(QGSettings::isSchemaInstalled(ba)) + { + QGSettings * settings = new QGSettings(ba, bba); + filenameStr = settings->get(FILENAME_KEY).toString(); + QString nameStr = settings->get(NAME_KEY).toString(); + if (nameStr == "volume-changed") { + break; + } + } + } + const QByteArray text = filenameStr.toLocal8Bit(); + const gchar *id = text.data(); + const gchar *eventId =id; + if(desc){ + bool status = g_settings_get_boolean(m_pSoundSettings, EVENT_SOUNDS_KEY); + if (status && isPlay) { + retval = ca_context_play (this->caContext, 0, + CA_PROP_EVENT_ID, eventId, + CA_PROP_EVENT_DESCRIPTION, desc, NULL); + } + else { + isPlay = true; + } + } + m_pTimer->stop(); + } +} + +void UkmediaMainWidget::setVolumeSettingValue(int value) +{ + if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { + if (m_pVolumeSetting->keys().contains("volumesize")) { + m_pVolumeSetting->blockSignals(true); + if(value == 0) + m_pVolumeControl->setSinkMute(true); + m_pVolumeSetting->set(UKUI_VOLUME_KEY,value); + m_pVolumeSetting->blockSignals(false); + } + } +} + +void UkmediaMainWidget::setVolumeSettingMute(bool state) +{ + if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { + if (m_pVolumeSetting->keys().contains("soundstate")) { + m_pVolumeSetting->blockSignals(true); + m_pVolumeSetting->set(UKUI_VOLUME_STATE,state); + m_pVolumeSetting->blockSignals(false); + } + } +} + +void UkmediaMainWidget::themeChangeIcons() +{ + int nInputValue = paVolumeToValue(m_pVolumeControl->getSourceVolume()); + int nOutputValue = paVolumeToValue(m_pVolumeControl->getSinkVolume()); + bool inputStatus = m_pVolumeControl->getSourceMute(); + bool outputStatus = m_pVolumeControl->getSinkMute(); + + inputVolumeDarkThemeImage(nInputValue,inputStatus); + outputVolumeDarkThemeImage(nOutputValue,outputStatus); + + systemWidget->m_pSystemVolumeBtn->repaint(); + appWidget->systemVolumeBtn->repaint(); + soundSystemTrayIcon->setToolTip(tr("Current volume:")+QString::number(nOutputValue)+"%"); +} + +/* + * 隐藏窗口 + */ +void UkmediaMainWidget::hideWindow() +{ + this->hide(); +} + +/* + * 字体改变需更新字体大小 + */ +void UkmediaMainWidget::fontSizeChangedSlot(const QString &themeStr) +{ + QString fontType; + if (m_pFontSetting->keys().contains("systemFont")) { + fontType = m_pFontSetting->get("systemFont").toString(); + } + if (m_pFontSetting->keys().contains("systemFontSize")) { + int font = m_pFontSetting->get("system-font-size").toInt(); + QFont fontSize(fontType,font); + //listWidget目前使用了qss,需要做特殊处理 + for (int row=0;rowm_pOutputListWidget->count();row++) { + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + wid->portLabel->setFont(fontSize); + } + } + Q_EMIT font_change(); +} + +void UkmediaMainWidget::volumeSettingChangedSlot() +{ + + if (m_pVolumeSetting->keys().contains("volumesize")) { + int valueSetting = m_pVolumeSetting->get(UKUI_VOLUME_KEY).toInt(); + if (valueSetting == 0) { + m_pVolumeControl->setSinkMute(true); + } + + systemWidget->m_pSystemVolumeSlider->setValue(valueSetting); + } + + if (QGSettings::isSchemaInstalled(UKUI_VOLUME_BRIGHTNESS_GSETTING_ID)) { + if (m_pVolumeSetting->keys().contains("soundstate")) { + bool status = m_pVolumeSetting->get(UKUI_VOLUME_STATE).toBool(); + + } + } +} + +/* + * 系统主题改变 + */ +void UkmediaMainWidget::ukuiThemeChangedSlot(const QString &themeStr) +{ + if (m_pThemeSetting->keys().contains("styleName")) { + mThemeName = m_pThemeSetting->get(UKUI_THEME_NAME).toString(); + } + themeChangeIcons(); +// QPalette palette = dividerFrame->palette(); + QColor color = QColor(255,255,255); + color.setAlphaF(0.08); +// palette.setColor(QPalette::WindowText, color); +// dividerFrame->setPalette(palette); + Q_EMIT theme_change(); +} + +/* + * 滑动条控制输出音量 + */ +void UkmediaMainWidget::systemVolumeSliderChangedSlot(int value) +{ + QString percent; + percent = QString::number(value); + //音量值改变时添加提示音 + int volume = valueToPaVolume(value); + m_pVolumeControl->getDefaultSinkIndex(); + m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); + + appWidget->systemVolumeSlider->blockSignals(true); + appWidget->systemVolumeDisplayLabel->setText(percent+"%"); + systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); + appWidget->systemVolumeSlider->setValue(value); + appWidget->systemVolumeSlider->blockSignals(false); + + firstEnterSystem = false; +} + +/* + * 完整模式下,应用音量选项中系统音量控制输出音量值 + */ +void UkmediaMainWidget::advancedSystemSliderChangedSlot(int value) +{ + QString percent; + percent = QString::number(value); + int volume = valueToPaVolume(value); + m_pVolumeControl->getDefaultSinkIndex(); + m_pVolumeControl->setSinkVolume(m_pVolumeControl->sinkIndex,volume); + systemWidget->m_pSystemVolumeSlider->blockSignals(true); + systemWidget->m_pSystemVolumeSliderLabel->setText(percent+"%"); + appWidget->systemVolumeDisplayLabel->setText(percent+"%"); + systemWidget->m_pSystemVolumeSlider->setValue(value); + systemWidget->m_pSystemVolumeSlider->blockSignals(false); +} + +void UkmediaMainWidget::systemVolumeButtonClickedSlot() +{ + m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); + + QTimer * time = new QTimer; + time->start(100); + connect(time,&QTimer::timeout,[=](){ + + themeChangeIcons(); + time->disconnect(); + delete time; + }); + +} + +/* + * 完整模式中应用音量的静音控制 + */ +void UkmediaMainWidget::appWidgetMuteButtonCLickedSlot() +{ + m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); + + QTimer * time = new QTimer; + time->start(100); + connect(time,&QTimer::timeout,[=](){ + + themeChangeIcons(); + time->disconnect(); + delete time; + }); +} + +/* + * 声音托盘的触发事件,包括鼠标左键点击,双击,滚轮,右击 + */ +void UkmediaMainWidget::activatedSystemTrayIconSlot(QSystemTrayIcon::ActivationReason reason) +{ + const KWindowInfo info(this->winId(), NET::WMState); + if (!info.hasState(NET::SkipTaskbar) || !info.hasState(NET::SkipPager)) { + KWindowSystem::setState(this->winId(), NET::SkipTaskbar | NET::SkipPager); + } + + switch(reason) { + //鼠标中间键点击图标 + case QSystemTrayIcon::MiddleClick: { + if (this->isHidden()) { + Q_EMIT mouse_middle_clicked_signal(); + } + else { + hideWindow(); + } + break; + } + //鼠标左键点击图标 + case QSystemTrayIcon::Trigger: { + if(this->isVisible()){ + hideWindow(); + break; + } + advancedWidgetShow(); + break; + } + //鼠标左键双击图标 + case QSystemTrayIcon::DoubleClick: { + hideWindow(); + break; + } + case QSystemTrayIcon::Context:{ + if(this ->isHidden()) { + menu->show(); + } + else{ + this->hideWindow(); + } + break; + } + default: + break; + } +} + +/* + * 鼠标滚轮点击托盘图标,设置输出音量的静音状态 + */ +void UkmediaMainWidget::mouseMeddleClickedTraySlot() +{ + m_pVolumeControl->setSinkMute(!m_pVolumeControl->sinkMuted); + + QTimer * time = new QTimer; + time->start(100); + connect(time,&QTimer::timeout,[=](){ + + themeChangeIcons(); + time->disconnect(); + delete time; + }); +} + +/* + * 鼠标滚轮在声音托盘上滚动设置输出音量值 + */ +void UkmediaMainWidget::trayWheelRollEventSlot(bool step) +{ + int volume = systemWidget->m_pSystemVolumeSlider->value(); + if (step) { + systemWidget->m_pSystemVolumeSlider->setValue(volume+5); + } + else { + systemWidget->m_pSystemVolumeSlider->setValue(volume-5); + } +} + +/* + * 点击菜单中声音设置跳转到控制面板的声音控制 + */ +void UkmediaMainWidget::jumpControlPanelSlot() +{ + m_process = new QProcess(0); + m_process->start("ukui-control-center module Audio"); + m_process->waitForStarted(); + this->hide(); + return; +} + +void UkmediaMainWidget::drawImagColorFromTheme(UkuiButtonDrawSvg *button, QString iconStr) +{ + button->themeIcon.image = QIcon::fromTheme(iconStr).pixmap(24,24).toImage(); + button->themeIcon.color = QColor(0,0,0,216); + + if (mThemeName == UKUI_THEME_WHITE) { + button->themeIcon.color = QColor(255,255,255,216); + } + else if (mThemeName == UKUI_THEME_BLACK) { + button->themeIcon.color = QColor(255,255,255,216); + } +} + +/* + 深色主题时输出音量图标 +*/ +void UkmediaMainWidget::outputVolumeDarkThemeImage(int value,bool status) +{ + QString iconStr = outputVolumeToIconStr(status,value); + + systemWidget->m_pSystemVolumeBtn->setButtonIcon(QIcon::fromTheme(iconStr)); + appWidget->systemVolumeBtn->setButtonIcon(QIcon::fromTheme(iconStr)); + bool isActive = m_pVolumeControl->getSinkMute(); + if(iconStr == "audio-volume-muted-symbolic" && isActive) { + systemWidget->m_pSystemVolumeBtn->setActive(false); + appWidget->systemVolumeBtn->setActive(false); + } + else { + systemWidget->m_pSystemVolumeBtn->setActive(true); + appWidget->systemVolumeBtn->setActive(true); + } + soundSystemTrayIcon->setIcon(QIcon::fromTheme(iconStr)); + +} + +/* + 输入音量图标 +*/ +void UkmediaMainWidget::inputVolumeDarkThemeImage(int value,bool status) +{ + QString inputIconStr; + if (status) { + inputIconStr = iconNameInputs[0]; + } + else if (value <= 0) { + inputIconStr = iconNameInputs[0]; + } + else if (value > 0 && value <= 33) { + inputIconStr = iconNameInputs[1]; + } + else if (value >33 && value <= 66) { + inputIconStr = iconNameInputs[2]; + } + else { + inputIconStr = iconNameInputs[3]; + } + + if (mThemeName == "ukui-white" || mThemeName == "ukui-light") { +// devWidget->inputMuteButton->themeIcon.color = QColor(0,0,0,216); +// devWidget->inputMuteButton->themeIcon.image = QIcon::fromTheme(inputIconStr).pixmap(24,24).toImage(); + } + else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-black" || mThemeName == "ukui-default") { +// devWidget->inputMuteButton->themeIcon.color = QColor(255,255,255,216); +// devWidget->inputMuteButton->themeIcon.image = QIcon::fromTheme(inputIconStr).pixmap(24,24).toImage(); + } +} + +/* + * 绘制高亮颜色图标 + */ +QPixmap UkmediaMainWidget::drawLightColoredPixmap(const QPixmap &source) +{ + QColor gray(255,255,255); + QColor standard (0,0,0); + QImage img = source.toImage(); + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { + color.setRed(255); + color.setGreen(255); + color.setBlue(255); + img.setPixelColor(x, y, color); + } + else { + color.setRed(255); + color.setGreen(255); + color.setBlue(255); + img.setPixelColor(x, y, color); + } + } + } + } + return QPixmap::fromImage(img); +} + +/* + * 绘制深色颜色图标 + */ +QPixmap UkmediaMainWidget::drawDarkColoredPixmap(const QPixmap &source) +{ + QColor gray(255,255,255); + QImage img = source.toImage(); + for (int x = 0; x < img.width(); x++) { + for (int y = 0; y < img.height(); y++) { + auto color = img.pixelColor(x, y); + if (color.alpha() > 0) { + if (qAbs(color.red()-gray.red())<20 && qAbs(color.green()-gray.green())<20 && qAbs(color.blue()-gray.blue())<20) { + color.setRed(0); + color.setGreen(0); + color.setBlue(0); + img.setPixelColor(x, y, color); + } + else { + color.setRed(0); + color.setGreen(0); + color.setBlue(0); + img.setPixelColor(x, y, color); + } + } + } + } + return QPixmap::fromImage(img); +} + +/* + * 完整模式界面的显示 + */ +void UkmediaMainWidget::advancedWidgetShow() +{ + #define MARGIN 4 + QDBusInterface iface("org.ukui.panel", + "/panel/position", + "org.ukui.panel", + QDBusConnection::sessionBus()); + QDBusReply reply=iface.call("GetPrimaryScreenGeometry"); + QVariantList position_list=reply.value(); + + /* + * 通过这个dbus接口获取到的6个参数分别为 :可用屏幕大小的x坐标、y坐标、宽度、高度,任务栏位置 + */ + + switch(reply.value().at(4).toInt()){ + case 1: + this->setGeometry(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-MARGIN, + position_list.at(1).toInt()+MARGIN, + this->width(),this->height()); + break; + case 2: + this->setGeometry(position_list.at(0).toInt()+MARGIN, + position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, + this->width(),this->height()); + break; + case 3: + this->setGeometry(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-MARGIN, + position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, + this->width(),this->height()); + break; + default: + this->setGeometry(position_list.at(0).toInt()+position_list.at(2).toInt()-this->width()-MARGIN, + position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height()-MARGIN, + this->width(),this->height()); + break; + } + this->showNormal(); + this->raise(); + this->activateWindow(); +} + +QString UkmediaMainWidget::appNameToIconName(const gchar *appName,const gchar *appIconName) +{ + QString iconName = "/usr/share/applications/"; + qDebug()<< "appNameToIconName" << appName << appIconName; + /*! + * \brief + * \details + * 由于获取到的麒麟影音软件获取的app icon不正确 + * 可能是软件没有发出正确的信号告知正确的icon, + * 因此添加判断当匹配应用名为Kylinvideo时设置 + * 正确的icon名来保证找到正确的desktop,从而设置 + * 应用音量正确的应用名和图标 + */ + if (strcmp(appName,"KylinVideo") == 0) { + appIconName = "kylin-video"; + } + + if (strcmp(appName,"wine-preloader") == 0) + { + QString weChatStr = findFile(iconName,"微信"); + if (weChatStr == "") + weChatStr = "kylin-kwre-wechat.desktop"; + iconName.append(weChatStr);//wine版 + } + else{ + iconName.append(appIconName); + iconName.append(".desktop"); + } + + + return iconName; +} + +void UkmediaMainWidget::addAppToAppwidget(const gchar *appName,const gchar *appIconName,int index,int channel) +{ + //设置应用的图标 + QString iconName = appNameToIconName(appName,appIconName); + QString description = appName; + QString pAppName = getAppName(iconName); + QString pAppIcon = getAppIcon(iconName); + qDebug() << "add application to widget" << appName<< appIconName << pAppIcon << iconName; + initSubApplicationWidget(pAppIcon); + + appWidget->app_volume_list->append(appIconName); + // qDebug() << "add application to widget" << appName<< appIconName << iconName << "volume:" << appWidget->appSlider->value() << "index:" <appSlider->setObjectName(appSliderStr); + appWidget->appMuteBtn->setObjectName(appIconName); + appWidget->appVolumeLabel->setObjectName(appVolumeLabelStr); + + //主题更改 +// connect(w,&DeviceSwitchWidget::theme_change,[=](){ +// QPushButton *btn = w->appWidget->findChild(appMuteBtnlStr);//由于btn会被释放掉,导致btn不存在,所以加上这一行 +// if ( btn!= nullptr ) { +// if ( w->mThemeName == "ukui-white" || w->mThemeName == "ukui-light") { +// btn->setIcon(QIcon(w->drawDarkColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize))))); +// } +// else if (w->mThemeName == UKUI_THEME_BLACK || w->mThemeName == "ukui-black" || w->mThemeName == "ukui-default") { +// btn->setIcon(QIcon(w->drawLightColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize))))); +// } +// } +// }); +// connect(w,&DeviceSwitchWidget::font_change,[=](){ +// QString fontType; +// if (w->m_pFontSetting->keys().contains("systemFont")) { +// fontType = w->m_pFontSetting->get("systemFont").toString(); +// } +// if (w->m_pFontSetting->keys().contains("systemFontSize")) { +// int font = w->m_pFontSetting->get("system-font-size").toInt(); +//// QFont fontSize(fontType,font); + +//// w->appWidget->appLabel->setFont(fontSize); +// } +// }); + + //获取应用静音状态及音量 + int volume = paVolumeToValue(m_pVolumeControl->getSinkInputVolume(appName)); + + appWidget->appIconBtn->setCheckable(false); + appWidget->appIconBtn->setChecked(false); + appWidget->appSlider->blockSignals(true); + appWidget->appSlider->setValue(paVolumeToValue(m_pVolumeControl->getSinkInputVolume(appName))); + appWidget->appVolumeLabel->setText(QString::number(volume)+"%"); + qDebug() << "ctf get-sink-input-volume:" << appWidget->appSlider->value() << appSliderStr; + appWidget->appSlider->blockSignals(false); + /*滑动条控制应用音量*/ + connect(appWidget->appSlider,&QSlider::valueChanged,[=](int value){ + QString appName = appSliderStr.split("Slider").at(0); + bool isMute = false; + m_pVolumeControl->setSinkInputVolume(index,valueToPaVolume(value),channel); + + QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "sinkVolumeChanged"); + message<findChild (appVolumeLabelStr); + if (label == nullptr) + return; + label->setText(QString::number(value)+"%"); + + QSlider *slider = appWidget->findChild(appSliderStr); + if (slider == nullptr) + return; + QPushButton *btn = appWidget->findChild(appMuteBtnlStr); + if (btn == nullptr) + return; + QString audioIconStr = outputVolumeToIconStr(isMute,value); + QSize iconSize(24,24); + if ( mThemeName == "ukui-white" || mThemeName == "ukui-light") { + btn->setIcon(QIcon(drawDarkColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize))))); + } + else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-black" || mThemeName == "ukui-default") { + btn->setIcon(QIcon(drawLightColoredPixmap((QIcon::fromTheme(audioIconStr).pixmap(iconSize))))); + } + Q_EMIT app_name_signal(appSliderStr); + }); + + connect(appWidget->appMuteBtn,&QPushButton::clicked,[=](){ + + bool isMute = false; + int volume = -1; + + isMute = m_pVolumeControl->getSinkInputMuted(description); + qDebug() << "appMuteBtn clicked" << "muted" << isMute << description <setSinkInputMuted(index,!isMute); + if (isAppMuteBtnPress) { + isAppMuteBtnPress = false; + } + } + else { + + QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "sinkVolumeChanged"); + message<displayAppVolumeWidget->findChild(appIconName); + QSlider *s = appWidget->displayAppVolumeWidget->findChild(appIconName); + qDebug() << "sinkInputVolumeChangedSlot==" << appName << appIconName << index << m_pVolumeControl->getSinkInputVolume(appName) << appSliderStr <objectName() ; + if (s == nullptr || appIconName == nullptr) + return; + s->blockSignals(true); + label->setText(QString::number(paVolumeToValue(m_pVolumeControl->getSinkInputVolume(appName)))+"%"); + s->setValue(paVolumeToValue(m_pVolumeControl->getSinkInputVolume(appName))); + s->blockSignals(false); +} + + +/* + * 获取应用名称,从desktop全路径名下解析出应用名称 + */ +QString UkmediaMainWidget::getAppName(QString desktopfp) +{ + GError** error=nullptr; + GKeyFileFlags flags=G_KEY_FILE_NONE; + GKeyFile* keyfile=g_key_file_new (); + + QByteArray fpbyte=desktopfp.toLocal8Bit(); + char* filepath=fpbyte.data(); + g_key_file_load_from_file(keyfile,filepath,flags,error); + + char* name=g_key_file_get_locale_string(keyfile,"Desktop Entry","Name", nullptr, nullptr); + QString namestr=QString::fromLocal8Bit(name); + + g_key_file_free(keyfile); + return namestr; +} + +/* + * 获取应用图标,从desktop全路径名下解析出应用图标 + */ +QString UkmediaMainWidget::getAppIcon(QString desktopfp) +{ + GError** error=nullptr; + GKeyFileFlags flags=G_KEY_FILE_NONE; + GKeyFile* keyfile=g_key_file_new (); + + QByteArray fpbyte=desktopfp.toLocal8Bit(); + char* filepath=fpbyte.data(); + g_key_file_load_from_file(keyfile,filepath,flags,error); + + char* name=g_key_file_get_locale_string(keyfile,"Desktop Entry","Icon", nullptr, nullptr); + QString namestr=QString::fromLocal8Bit(name); + + g_key_file_free(keyfile); + return namestr; +} + +void UkmediaMainWidget::initSubApplicationWidget(QString pAppIcon) +{ + //widget显示应用音量 + QWidget *subAppwidget = new QWidget(appWidget->displayAppVolumeWidget); + appWidget->appVolumeLabel = new QLabel(subAppwidget); + appWidget->appVolumeLabel->setParent(subAppwidget); + appWidget->appIconBtn = new QPushButton(subAppwidget); + appWidget->appMuteBtn = new QPushButton(subAppwidget); + appWidget->appMuteBtn->setVisible(false); + appWidget->appSlider = new UkmediaVolumeSlider(subAppwidget); + appWidget->appSlider->setOrientation(Qt::Horizontal); + appWidget->appIconBtn->setFixedSize(36,36); + appWidget->appIconBtn->setFlat(true); + appWidget->appIconBtn->setFocusPolicy(Qt::NoFocus); + QSize icon_size(32,32); + appWidget->appIconBtn->setIconSize(icon_size); + appWidget->appIconBtn->setIcon(QIcon::fromTheme(pAppIcon)); + appWidget->appIconBtn->setAttribute(Qt::WA_TranslucentBackground); + + QPalette palete = appWidget->appIconBtn->palette(); + palete.setColor(QPalette::Highlight,Qt::transparent); + palete.setBrush(QPalette::Button,QBrush(QColor(1,1,1,0))); + appWidget->appIconBtn->setPalette(palete); + + QPalette paleteAppIcon = appWidget->appIconBtn->palette(); + paleteAppIcon.setColor(QPalette::Highlight,Qt::transparent); + paleteAppIcon.setBrush(QPalette::Button,QBrush(QColor(0,0,0,0))); + appWidget->appIconBtn->setPalette(paleteAppIcon); + + appWidget->appSlider->setMaximum(100); + appWidget->appSlider->setFixedSize(273,48); + appWidget->appIconBtn->adjustSize(); + appWidget->appIconBtn->setProperty("useIconHighlightEffect",true); + appWidget->appIconBtn->setProperty("iconHighlightEffectMode",true); + appWidget->appIconBtn->setStyleSheet("QPushButton{background:transparent;border:0px;" + "padding-left:0px;}" + "QPushButton:hover {" + "background-color: #00000000;" + "color: white;}"); + + + //音量滑动条 + QHBoxLayout *appSliderLayout = new QHBoxLayout(); + + subAppwidget->setFixedSize(412,48); + appWidget->appVolumeLabel->setFixedSize(55,48); + appWidget->appVolumeLabel->setAlignment(Qt::AlignCenter); + appSliderLayout->addWidget(appWidget->appIconBtn); + appSliderLayout->addSpacing(8); + appSliderLayout->addWidget(appWidget->appSlider); +// appSliderLayout->addItem(new QSpacerItem(16,20,QSizePolicy::Maximum)); + appSliderLayout->addWidget(appWidget->appVolumeLabel); + appSliderLayout->setSpacing(0); + subAppwidget->setLayout(appSliderLayout); + appSliderLayout->setContentsMargins(16,0,24,0); + appWidget->m_pVlayout->addWidget(subAppwidget); +// //设置布局的垂直间距以及设置vlayout四周的间距 + appWidget->displayAppVolumeWidget->resize(404,m_pVolumeControl->sinkInputList.count()*50); + appWidget->m_pVlayout->setSpacing(2); + appWidget->m_pVlayout->setContentsMargins(0,0,0,0); + appWidget->m_pVlayout->update(); + +} + +/* + * 当播放或录制应用退出时删除在应用音量界面上该应用的显示 + */ +void UkmediaMainWidget::removeSubAppWidget(const gchar *m_pAppName) +{ + g_debug ("Removing application stream %s", m_pAppName); + /* We could call bar_set_stream_control here, but that would pointlessly + * invalidate the channel bar, so just remove it ourselves */ + int index = -1; + for (int i=0;isinkInputList.count();i++) { + if (m_pVolumeControl->sinkInputList.at(i) == m_pAppName) { + index = i; + m_pVolumeControl->sinkInputList.removeAt(i); + break; + } + } + if (index == -1) + return; + QLayoutItem *item; + if ((item = appWidget->m_pVlayout->takeAt(index)) != 0) { + QWidget *wid = item->widget(); + appWidget->m_pVlayout->removeWidget(wid); + wid->setParent(nullptr); + delete wid; + delete item; + } + qDebug() << "removeSubAppWidget" << m_pAppName << m_pVolumeControl->sinkInputList.count() << m_pVolumeControl->sinkInputMap.count(); + //设置布局的间距以及设置vlayout四周的间距 + appWidget->displayAppVolumeWidget->resize(404,m_pVolumeControl->sinkInputList.count()*50); + appWidget->m_pVlayout->setSpacing(2); + appWidget->m_pVlayout->setContentsMargins(0,0,0,0); + appWidget->m_pVlayout->update(); + +} + +/* + In PulseAudio without ucm, ports will show up with the following names: + Headphones - analog-output-headphones + Headset mic - analog-input-headset-mic (was: analog-input-microphone-headset) + Jack in mic-in mode - analog-input-headphone-mic (was: analog-input-microphone) + + However, since regular mics also show up as analog-input-microphone, + we need to check for certain controls on alsa mixer level too, to know + if we deal with a separate mic jack, or a multi-function jack with a + mic-in mode (also called "headphone mic"). + We check for the following names: + + Headphone Mic Jack - indicates headphone and mic-in mode share the same jack, + i e, not two separate jacks. Hardware cannot distinguish between a + headphone and a mic. + Headset Mic Phantom Jack - indicates headset jack where hardware can not + distinguish between headphones and headsets + Headset Mic Jack - indicates headset jack where hardware can distinguish + between headphones and headsets. There is no use popping up a dialog in + this case, unless we already need to do this for the mic-in mode. + + From the PA_PROCOTOL_VERSION=34, The device_port structure adds 2 members + availability_group and type, with the help of these 2 members, we could + consolidate the port checking and port setting for non-ucm and with-ucm + cases. +*/ + +#define HEADSET_PORT_SET(dst, src) \ + do { \ + if (!(dst) || (dst)->priority < (src)->priority) \ + dst = src; \ + } while (0) + +#define GET_PORT_NAME(x) (x ? g_strdup (x->name) : NULL) + +headsetPorts * +UkmediaMainWidget::getHeadsetPorts (const pa_card_info *c) +{ + headsetPorts *h; + guint i; + + h = g_new0 (headsetPorts, 1); + + for (i = 0; i < c->n_ports; i++) { + pa_card_port_info *p = c->ports[i]; + // if (control->priv->server_protocol_version < 34) { + if (g_str_equal (p->name, "analog-output-headphones") || g_str_equal (p->name, "[Out] Headphones1")) + h->headphones = p; + else if (g_str_equal (p->name, "analog-input-headset-mic") || g_str_equal (p->name, "[In] Headset")) + h->headsetmic = p; + else if (g_str_equal (p->name, "analog-input-headphone-mic") || g_str_equal (p->name, "[In] Headphones2")) + h->headphonemic = p; + else if (g_str_equal (p->name, "analog-input-internal-mic") || g_str_equal (p->name, "[In] Mic")) + h->internalmic = p; + else if (g_str_equal (p->name, "analog-output-speaker") || g_str_equal (p->name, "[Out] Speaker")) + h->internalspk = p; + // } else { +#if (PA_PROTOCOL_VERSION >= 34) + /* in the first loop, set only headphones */ + /* the microphone ports are assigned in the second loop */ + if (p->type == PA_DEVICE_PORT_TYPE_HEADPHONES) { + if (p->availability_group) + HEADSET_PORT_SET (h->headphones, p); + } else if (p->type == PA_DEVICE_PORT_TYPE_SPEAKER) { + HEADSET_PORT_SET (h->internalspk, p); + } else if (p->type == PA_DEVICE_PORT_TYPE_MIC) { + if (!p->availability_group) + HEADSET_PORT_SET (h->internalmic, p); + } +#else + // g_warning_once ("libgnome-volume-control running against PulseAudio %u, " + // "but compiled against older %d, report a bug to your distribution", + // control->priv->server_protocol_version, + // PA_PROTOCOL_VERSION); +#endif + // } + } + + return h; +} + +gboolean +UkmediaMainWidget::verifyAlsaCard (int cardindex, + gboolean *headsetmic, + gboolean *headphonemic) +{ + char *ctlstr; + snd_hctl_t *hctl; + snd_ctl_elem_id_t *id; + int err; + + *headsetmic = FALSE; + *headphonemic = FALSE; + + ctlstr = g_strdup_printf ("hw:%i", cardindex); + if ((err = snd_hctl_open (&hctl, ctlstr, 0)) < 0) { + g_warning ("snd_hctl_open failed: %s", snd_strerror(err)); + g_free (ctlstr); + return FALSE; + } + g_free (ctlstr); + + if ((err = snd_hctl_load (hctl)) < 0) { +// if (hasNo && !hasOther) + g_warning ("snd_hctl_load failed: %s", snd_strerror(err)); + snd_hctl_close (hctl); + return FALSE; + } + + snd_ctl_elem_id_alloca (&id); + + snd_ctl_elem_id_clear (id); + snd_ctl_elem_id_set_interface (id, SND_CTL_ELEM_IFACE_CARD); + snd_ctl_elem_id_set_name (id, "Headphone Mic Jack"); + if (snd_hctl_find_elem (hctl, id)) + *headphonemic = TRUE; + + snd_ctl_elem_id_clear (id); + snd_ctl_elem_id_set_interface (id, SND_CTL_ELEM_IFACE_CARD); + snd_ctl_elem_id_set_name (id, "Headset Mic Phantom Jack"); + if (snd_hctl_find_elem (hctl, id)) + *headsetmic = TRUE; + + if (*headphonemic) { + snd_ctl_elem_id_clear (id); + snd_ctl_elem_id_set_interface (id, SND_CTL_ELEM_IFACE_CARD); + snd_ctl_elem_id_set_name (id, "Headset Mic Jack"); + if (snd_hctl_find_elem (hctl, id)) + *headsetmic = TRUE; + } + + snd_hctl_close (hctl); + return *headsetmic || *headphonemic; +} + +void UkmediaMainWidget::checkAudioDeviceSelectionNeeded (const pa_card_info *info) +{ + headsetPorts *h; + gboolean start_dialog, stop_dialog; + qDebug() << "check_audio_device_selection_needed" <name; + + start_dialog = FALSE; + stop_dialog = FALSE; + h = getHeadsetPorts (info); + + if (!h->headphones || (!h->headsetmic && !h->headphonemic)) { + qDebug() << "no headset jack" ; + isPlay = false; + /* Not a headset jack */ + goto out; + } + else { + qDebug() << "headset jack" << h->headphonemic << h->headphones; + } + if (headsetCard != (int) info->index) { + int cardindex; + gboolean hsmic = TRUE; + gboolean hpmic = TRUE; + const char *s; + + s = pa_proplist_gets (info->proplist, "alsa.card"); + if (!s) + goto out; + + cardindex = strtol (s, NULL, 10); + if (cardindex == 0 && strcmp(s, "0") != 0) + goto out; + if (!verifyAlsaCard(cardindex, &hsmic, &hpmic)) + goto out; + + headsetCard = info->index; + hasHeadsetmic = hsmic && h->headsetmic; + hasHeadphonemic = hpmic && h->headphonemic; + } else { + start_dialog = (h->headphones->available != PA_PORT_AVAILABLE_NO) && !headsetPluggedIn; + stop_dialog = (h->headphones->available == PA_PORT_AVAILABLE_NO) && headsetPluggedIn; + } + + headsetPluggedIn = h->headphones->available != PA_PORT_AVAILABLE_NO; + m_pHeadphonesName = GET_PORT_NAME(h->headphones); + m_pHeadsetmicName = GET_PORT_NAME(h->headsetmic); + m_pHeadphonemicName = GET_PORT_NAME(h->headphonemic); + m_pInternalspkName = GET_PORT_NAME(h->internalspk); + m_pInternalmicName = GET_PORT_NAME(h->internalmic); + + if (firstLoad) + firstLoad = false; + else { + if (headsetPluggedIn) { + headsetWidget->showWindow(); + } + else { + if (headsetWidget->isShow) { + headsetWidget->hide(); + headsetWidget->isShow = false; + } + } + } + qDebug() << "check_audio_device_selection_needed" <defaultSinkName; + if(sleep) + { + system("pacmd suspend 1"); +// pa_context_suspend_sink_by_name(m_pVolumeControl->getContext(),m_pVolumeControl->defaultSinkName,1,nullptr,nullptr); + uninhibit(); + } + else + { + system("pacmd suspend 0"); +// pa_context_suspend_sink_by_name(m_pVolumeControl->getContext(),m_pVolumeControl->defaultSinkName,0,nullptr,nullptr); + inhibit(); + } +} + +/* + 输出设备提示弹窗 +*/ +void UkmediaMainWidget::deviceChangedShowSlot(QString dev_name) +{ + #define MARGIN 4 + QDBusInterface iface("org.ukui.panel", + "/panel/position", + "org.ukui.panel", + QDBusConnection::sessionBus()); + QDBusReply reply=iface.call("GetPrimaryScreenGeometry"); + QVariantList position_list=reply.value(); + /* + * 通过这个dbus接口获取到的6个参数分别为 :可用屏幕大小的x坐标、y坐标、宽度、高度,任务栏位置 + */ +// 因为暂时获取不到任务栏坐标,所以先定死坐标BUG #91957 +// switch(reply.value().at(4).toInt()){ +// case 1: +// //当任务栏在上方时 +// osdWidget->setGeometry(soundSystemTrayIcon->geometry().x() + (soundSystemTrayIcon->geometry().width()/2)- (osdWidget->geometry().width()/2), +// position_list.at(1).toInt()+MARGIN, +// osdWidget->width(),osdWidget->height()); +// break; +// case 2: +// //当任务栏在左侧时 +// osdWidget->setGeometry(position_list.at(0).toInt()+MARGIN, +// soundSystemTrayIcon->geometry().y() + (soundSystemTrayIcon->geometry().height()/2) - (osdWidget->geometry().height()/2), +// osdWidget->width(),osdWidget->height()); +// break; +// case 3: +// //当任务栏在右侧时 +// osdWidget->setGeometry(position_list.at(0).toInt()+position_list.at(2).toInt()-osdWidget->width()-MARGIN, +// soundSystemTrayIcon->geometry().y() + (soundSystemTrayIcon->geometry().height()/2) - (osdWidget->geometry().height()/2), +// osdWidget->width(),osdWidget->height()); +// break; +// default: +// //当任务栏在下方时 +// osdWidget->setGeometry(soundSystemTrayIcon->geometry().x() + (soundSystemTrayIcon->geometry().width()/2)- (osdWidget->geometry().width()/2), +// position_list.at(1).toInt()+reply.value().at(3).toInt()-osdWidget->height()-MARGIN, +// osdWidget->width(),osdWidget->height()); +// break; +// } + + osdWidget->setGeometry(position_list.at(0).toInt()+position_list.at(2).toInt()-osdWidget->width()-200, + position_list.at(1).toInt()+reply.value().at(3).toInt()-osdWidget->height()-MARGIN, + osdWidget->width(),osdWidget->height()); + + QPixmap dev_Icon; + + if ( mThemeName == "ukui-white" || mThemeName == "ukui-light") { + dev_Icon = drawDarkColoredPixmap((QIcon::fromTheme(dev_name)).pixmap(48,48)); + } + else if (mThemeName == UKUI_THEME_BLACK || mThemeName == "ukui-black" || mThemeName == "ukui-default") { + dev_Icon = drawLightColoredPixmap((QIcon::fromTheme(dev_name)).pixmap(48,48)); + } + + //获取透明度 +// if (QGSettings::isSchemaInstalled(UKUI_THEME_SETTING)){ +// if (m_pTransparencySetting->keys().contains("transparency")) { +// transparency = m_pTransparencySetting->get("transparency").toDouble(); +// } +// } + + if (!osdWidget->isHidden()) { + osdWidget->hide(); + + if (timer != nullptr) { + timer->disconnect(); + timer = nullptr; + delete timer; + } + } + + osdWidget->UkmediaOsdSetIcon(dev_Icon,mThemeName); + + osdWidget->show(); + +// osdWidget->setWindowOpacity(transparency); + timer = new MyTimer(osdWidget); //this 为parent类, 表示当前窗口 + connect(timer, SIGNAL(timeOut()), this, SLOT(osdDisplayWidgetHide())); + +} + +//osd超时隐藏 +void UkmediaMainWidget::osdDisplayWidgetHide() +{ + this->osdWidget->hide(); +} + +/* + * 更新设备端口 + */ +void UkmediaMainWidget::updateDevicePort() +{ + QMap>::iterator it; + QMap::iterator at; + QMap temp; + currentInputPortLabelMap.clear(); + currentOutputPortLabelMap.clear(); + if (firstEntry == true) { + for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) + { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + qDebug() << "updateDevicePort" << firstEntry << it.key() << at.value() <cardMap); + addOutputListWidgetItem(at.key(),at.value(),cardName); + ++at; + } + ++it; + } + for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) + { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + qDebug() << "updateDevicePort" << firstEntry << it.key() << at.value(); + QString cardName = findCardName(it.key(),m_pVolumeControl->cardMap); + addInputListWidgetItem(at.value(),cardName); + ++at; + } + ++it; + } + + } + else { + + //记录上一次output label + for (int i=0;im_pOutputListWidget->count();i++) { + QMap::iterator at; + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(i); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + int index; + for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { + if (wid->deviceLabel->text() == at.value()) { + index = at.key(); + break; + } + ++at; + } + currentOutputPortLabelMap.insertMulti(index,wid->portLabel->fullText); +// qDebug() << index << "current output item ************" << wid->deviceLabel->text() <portLabel->text() ;//<< w->m_pOutputPortLabelList->at(i); + } + + for (int i=0;im_pInputListWidget->count();i++) { + + QListWidgetItem *item = systemWidget->m_pInputListWidget->item(i); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); + int index; + int count; + QMap::iterator at; + for (at=m_pVolumeControl->cardMap.begin();at!=m_pVolumeControl->cardMap.end();) { + if (wid->deviceLabel->text() == at.value()) { + index = at.key(); + break; + } + ++at; + ++count; + } + currentInputPortLabelMap.insertMulti(index,wid->portLabel->fullText); + } + systemWidget->m_pInputListWidget->blockSignals(true); + deleteNotAvailableOutputPort(); + addAvailableOutputPort(); + deleteNotAvailableInputPort(); + addAvailableInputPort(); + systemWidget->m_pInputListWidget->blockSignals(false); + } + if (systemWidget->m_pOutputListWidget->count() > 0 /*|| m_pInputWidget->m_pInputListWidget->count()*/) { + + firstEntry = false; + } +} + +void UkmediaMainWidget::updateListWidgetItemSlot() +{ + qDebug() << "updateListWidgetItemSlot---------"; + + initOutputListWidgetItem(); + initInputListWidgetItem(); + themeChangeIcons(); +} + +/* + * output list widget选项改变,设置对应的输出设备 + */ +void UkmediaMainWidget::outputListWidgetCurrentRowChangedSlot(int row) +{ + //当所有可用的输出设备全部移除,台式机才会出现该情况 + if (row == -1) + return; + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); + if (item == nullptr) { + qDebug() <<"output current item is null"; + } + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + QListWidgetItem *inputCurrrentItem = systemWidget->m_pInputListWidget->currentItem(); + UkuiListWidgetItem *inputWid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(inputCurrrentItem); + bool isContainBlue = inputDeviceContainBluetooth(); + + wid->deviceButton->buttonState = PUSH_BUTTON_CLICK; + wid->deviceButton->setActive(true); + setDeviceButtonState(row); + + //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink + if (isContainBlue && (strstr(m_pVolumeControl->defaultSourceName,"headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_sink"))) { + QString cardName = blueCardName(); + setCardProfile(cardName,"a2dp_sink"); + } + QStringList comboboxPortNameList = wid->portLabel->text().split("("); + QStringList inputComboboxPortNameList; + if(inputWid) + inputComboboxPortNameList = inputWid->portLabel->text().split("("); + + + QMap>::iterator outputProfileMap; + QMap>::iterator inputProfileMap; + QMap tempMap; + QMap::iterator at; + QString endOutputProfile = ""; + QString endInputProfile = ""; + + int currentCardIndex = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); + int count,i; + + for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { + if(currentCardIndex == outputProfileMap.key()){ + tempMap = outputProfileMap.value(); + for(at=tempMap.begin(),i=0;at!= tempMap.end();++i){ + if (at.key() == comboboxPortNameList.at(0)) { + count = i; + endOutputProfile = at.value(); + } + ++at; + } + } + ++outputProfileMap; + } + + if (inputCurrrentItem != nullptr) { + QMap ::iterator it; + QMap temp; + int index = findCardIndex(inputWid->deviceLabel->text(),m_pVolumeControl->cardMap); + for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin(),count=0;inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();count++) { + if (inputProfileMap.key() == index) { + temp = inputProfileMap.value(); + for(it=temp.begin();it!=temp.end();){ + if(it.key() == inputComboboxPortNameList.at(0)){ + endInputProfile = it.value(); + } + ++it; + } + } + ++inputProfileMap; + } + } + qDebug() << "outputListWidgetCurrentRowChangedSlot" << row << wid->deviceLabel->text() << endOutputProfile <deviceLabel->text() == inputWid->deviceLabel->text()) || \ + wid->deviceLabel->text() == "alsa_card.platform-sound_DA_combine_v5" && inputWid->deviceLabel->text() == "3a.algo") { + + QString setProfile = endOutputProfile; + if (!endOutputProfile.contains("input:analog-stereo") || !endOutputProfile.contains("HiFi")) { + setProfile += "+"; + setProfile +=endInputProfile; + } + + setCardProfile(wid->deviceLabel->text(),setProfile); + setDefaultOutputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); + } + //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 + else { + int index = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); + QMap >::iterator it; + QString profileName; + for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { + if (it.key() == index) { + if (strstr(endOutputProfile.toLatin1().data(),"headset_head_unit")) + endOutputProfile = "a2dp_sink"; + profileName = findHighPriorityProfile(index,endOutputProfile); + } + ++it; + } + + QString setProfile = profileName; + setCardProfile(wid->deviceLabel->text(),setProfile); + setDefaultOutputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); + } + qDebug() << "active output port:" << wid->portLabel->fullText << wid->deviceLabel->text(); +} + +/* + * input list widget选项改变,设置对应的输入设备 + */ +void UkmediaMainWidget::inputListWidgetCurrentRowChangedSlot(int row) +{ + //当所有可用的输入设备全部移除,台式机才会出现该情况 + if (row == -1) + return; + QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); + QListWidgetItem *outputCurrrentItem = systemWidget->m_pOutputListWidget->currentItem(); + UkuiListWidgetItem *outputWid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(outputCurrrentItem); + + bool isContainBlue = inputDeviceContainBluetooth(); + qDebug() << "inputListWidgetCurrentRowChangedSlot" << row << isContainBlue << m_pVolumeControl->defaultSourceName; + //当输出设备从蓝牙切换到其他设备时,需将蓝牙声卡的配置文件切换为a2dp-sink + if (isContainBlue && (strstr(m_pVolumeControl->defaultSinkName,"headset_head_unit") || strstr(m_pVolumeControl->defaultSourceName,"bt_sco_source"))) { + QString cardName = blueCardName(); + setCardProfile(cardName,"a2dp_sink"); + } + + if(wid->deviceLabel->text().contains("bluez_card")) { + isCheckBluetoothInput = true; + } + else { + isCheckBluetoothInput = false; + } + + QMap>::iterator inputProfileMap; + QMap>::iterator outputProfileMap; + QMap temp; + QMap::iterator at; + QString endOutputProfile = ""; + QString endInputProfile = ""; + int index = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); + + QStringList inputcomboboxPortNameList = wid->portLabel->text().split("(");//新增设计combobox需要显示 端口名+(description) + QStringList comboboxPortNameList = outputWid->portLabel->text().split("(");//新增设计combobox需要显示 端口名+(description) + + for (inputProfileMap=m_pVolumeControl->inputPortProfileNameMap.begin();inputProfileMap!= m_pVolumeControl->inputPortProfileNameMap.end();) { + if (inputProfileMap.key() == index) { + temp = inputProfileMap.value(); + for(at = temp.begin();at != temp.end();){ + if(at.value() == inputcomboboxPortNameList.at(0)){ + endInputProfile = at.value(); + } + ++at; + } + + } + ++inputProfileMap; + } + if (outputCurrrentItem != nullptr) { + QMap ::iterator it; + QMap temp; + int index = findCardIndex(outputWid->deviceLabel->text(),m_pVolumeControl->cardMap); + for (outputProfileMap=m_pVolumeControl->profileNameMap.begin();outputProfileMap!= m_pVolumeControl->profileNameMap.end();) { + if (outputProfileMap.key() == index) { + temp = outputProfileMap.value(); + for(it=temp.begin();it!=temp.end();){ + if(it.key() == comboboxPortNameList.at(0)){ + endOutputProfile = it.value(); + } + ++it; + } + } + ++outputProfileMap; + } + } + + //如果选择的输入输出设备为同一个声卡,则追加指定输入输出端口属于的配置文件 + if (outputCurrrentItem != nullptr && wid->deviceLabel->text() == outputWid->deviceLabel->text()) { + QString setProfile; + //有些声卡的配置文件默认只有输入/输出设备或者配置文件包含了输出输入设备,因此只需要取其中一个配置文件即可 + if (endOutputProfile == "a2dp-sink" || endInputProfile == "headset_head_unit" || endOutputProfile == "HiFi" ) { + setProfile += endInputProfile; + } + else { + setProfile += endOutputProfile; + setProfile += "+"; + setProfile +=endInputProfile; + } + setCardProfile(wid->deviceLabel->text(),setProfile); + setDefaultInputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); + } + //如果选择的输入输出设备不是同一块声卡,需要设置一个优先级高的配置文件 + else { + int index = findCardIndex(wid->deviceLabel->text(),m_pVolumeControl->cardMap); + QMap >::iterator it; + QString profileName; + for(it=m_pVolumeControl->cardProfileMap.begin();it!=m_pVolumeControl->cardProfileMap.end();) { + + if (it.key() == index) { + QStringList list= it.value(); + profileName = findHighPriorityProfile(index,endInputProfile); + if (list.contains(endOutputProfile)) { + + } + } + ++it; + } + QString setProfile = profileName; + setCardProfile(wid->deviceLabel->text(),setProfile); + setDefaultInputPortDevice(wid->deviceLabel->text(),wid->portLabel->fullText); + } + qDebug() << "active input port:" << wid->portLabel->fullText << isCheckBluetoothInput; +} + + +void UkmediaMainWidget::updateAppVolume(QString str, int value, bool state) +{ + qDebug() << "update app volume" << isFirstRecive << str << value <findChild(str); + if (btn == nullptr) { + found = false; + } + else { + qDebug() << "founded app mute button ------------" << str << state; + isAppMuteBtnPress = true; + sinkInputMute = state; + btn->setChecked(true); + btn->click(); + } + QSlider *slider = appWidget->findChild(str); + if (slider == nullptr) { + found = false; + } + if (found) { + slider->setValue(value); + } + else + value = -1; + qDebug() << "found app slider, set value ----" << value; + + QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "sinkVolumeChanged"); + message<m_pOutputListWidget->count(); + QListWidgetItem * item = new QListWidgetItem(systemWidget->m_pOutputListWidget); + item->setSizeHint(QSize(200,48)); //QSize(120, 40) spacing: 12px; + systemWidget->m_pOutputListWidget->blockSignals(true); + systemWidget->m_pOutputListWidget->setItemWidget(item, itemW); + systemWidget->m_pOutputListWidget->blockSignals(false); + itemW->setLabelText(portLabel,cardName); + itemW->setButtonIcon(portName); + systemWidget->m_pOutputListWidget->blockSignals(true); + systemWidget->m_pOutputListWidget->insertItem(i,item); + updateOutputListWidgetFont(); + systemWidget->m_pOutputListWidget->blockSignals(false); +} + +void UkmediaMainWidget::setDeviceButtonState(int row) +{ + for (int i=0;im_pOutputListWidget->count();i++) { + if (i == row) + continue; + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(i); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + wid->deviceButton->buttonState = PUSH_BUTTON_NORMAL; + wid->deviceButton->setActive(false); + } +} + +/* + * 添加input port到input list widget + */ +void UkmediaMainWidget::addInputListWidgetItem(QString portName, QString cardName) +{ + UkuiListWidgetItem *itemW = new UkuiListWidgetItem(this); + int i = systemWidget->m_pInputListWidget->count(); + QListWidgetItem * item = new QListWidgetItem(systemWidget->m_pInputListWidget); + item->setSizeHint(QSize(200,48)); //QSize(120, 40) spacing: 12px; + systemWidget->m_pInputListWidget->blockSignals(true); + systemWidget->m_pInputListWidget->setItemWidget(item, itemW); + systemWidget->m_pInputListWidget->blockSignals(false); + itemW->setLabelText(portName,cardName); + itemW->setButtonIcon(portName); + systemWidget->m_pInputListWidget->blockSignals(true); + systemWidget->m_pInputListWidget->insertItem(i,item); + systemWidget->m_pInputListWidget->blockSignals(false); +} + +int UkmediaMainWidget::indexOfOutputPortInOutputListWidget(QString portName) +{ + for (int row=0;rowm_pOutputListWidget->count();row++) { + + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + if (wid->portLabel->fullText == portName) { + return row; + } + } + return -1; +} + +int UkmediaMainWidget::indexOfInputPortInInputListWidget(QString portName) +{ + for (int row=0;rowm_pInputListWidget->count();row++) { + + QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); + if (wid->portLabel->fullText == portName) { + return row; + } + } + return -1; +} + +/* + * 当前的输出端口是否应该在output list widget上删除 + */ +bool UkmediaMainWidget::outputPortIsNeedDelete(int index, QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; +// qDebug() << "outputPortIsNeedDelete" << index << name; + for(it = m_pVolumeControl->outputPortMap.begin();it!=m_pVolumeControl->outputPortMap.end();) + { + if (it.key() == index) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (name == at.value()) { + return false; + } + ++at; + } + } + ++it; + } + return true; +} + +/* + * 当前的输出端口是否应该添加到output list widget上 + */ +bool UkmediaMainWidget::outputPortIsNeedAdd(int index, QString name) +{ + QMap::iterator it; + for(it=currentOutputPortLabelMap.begin();it!=currentOutputPortLabelMap.end();) { + if ( index == it.key() && name == it.value()) { + return false; + } + ++it; + } + return true; +} + +/* + * 当前的输出端口是否应该在input list widget上删除 + */ +bool UkmediaMainWidget::inputPortIsNeedDelete(int index, QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for(it = m_pVolumeControl->inputPortMap.begin();it!=m_pVolumeControl->inputPortMap.end();) + { + if (it.key() == index) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (name == at.value()) { + return false; + } + ++at; + } + } + ++it; + } + return true; +} + +/* + * 当前的输出端口是否应该添加到input list widget上 + */ +bool UkmediaMainWidget::inputPortIsNeedAdd(int index, QString name) +{ + QMap::iterator it; + for(it=currentInputPortLabelMap.begin();it!=currentInputPortLabelMap.end();) { + if ( index == it.key() && name == it.value()) { + return false; + } + ++it; + } + return true; +} + + +/* + * 移除output list widget上不可用的输出端口 + */ +void UkmediaMainWidget::deleteNotAvailableOutputPort() +{ + qDebug() << "deleteNotAvailableOutputPort"; + //删除不可用的输出端口 + QMap::iterator it; + for(it=currentOutputPortLabelMap.begin();it!=currentOutputPortLabelMap.end();) { + //没找到,需要删除 + if (outputPortIsNeedDelete(it.key(),it.value())) { + qDebug() << "outputPortIsNeedDelete" << it.key() << it.value(); + int index = indexOfOutputPortInOutputListWidget(it.value()); + if (index == -1) + return; + systemWidget->m_pOutputListWidget->blockSignals(true); + QListWidgetItem *item = systemWidget->m_pOutputListWidget->takeItem(index); + systemWidget->m_pOutputListWidget->removeItemWidget(item); + systemWidget->m_pOutputListWidget->blockSignals(false); + it = currentOutputPortLabelMap.erase(it); + continue; + } + ++it; + } +// m_pVolumeControl->removeProfileMap(); + +} + + +/* + * 添加可用的输出端口到output list widget + */ +void UkmediaMainWidget::addAvailableOutputPort() +{ + QMap>::iterator at; + QMap::iterator it; + QMap tempMap; + int i = systemWidget->m_pOutputListWidget->count(); + //增加端口 + for(at=m_pVolumeControl->outputPortMap.begin();at!=m_pVolumeControl->outputPortMap.end();) + { + tempMap = at.value(); +// qDebug() << "addAvailableOutputPort" << at.key() <m_pOutputListWidget); + item->setSizeHint(QSize(200,48)); //QSize(120, 40) spacing: 12px; + systemWidget->m_pOutputListWidget->blockSignals(true); + systemWidget->m_pOutputListWidget->setItemWidget(item, itemW); + systemWidget->m_pOutputListWidget->blockSignals(false); + + itemW->setLabelText(it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); + itemW->setButtonIcon(it.key()); + itemW->deviceButton->setActive(false); + currentOutputPortLabelMap.insertMulti(at.key(),it.value()); + systemWidget->m_pOutputListWidget->blockSignals(true); + systemWidget->m_pOutputListWidget->insertItem(i,item); + updateOutputListWidgetFont(); + systemWidget->m_pOutputListWidget->blockSignals(false); + } + ++it; + } + ++at; + } +} + +/* + * 在input list widget删除不可用的端口 + */ +void UkmediaMainWidget::deleteNotAvailableInputPort() +{ + //删除不可用的输入端口 + QMap::iterator it; + for(it=currentInputPortLabelMap.begin();it!=currentInputPortLabelMap.end();) { + //没找到,需要删除 + if (inputPortIsNeedDelete(it.key(),it.value())) { + int index = indexOfInputPortInInputListWidget(it.value()); + if (index == -1) + return; + systemWidget->m_pInputListWidget->blockSignals(true); + QListWidgetItem *item = systemWidget->m_pInputListWidget->takeItem(index); + systemWidget->m_pInputListWidget->removeItemWidget(item); + systemWidget->m_pInputListWidget->blockSignals(false); + it = currentInputPortLabelMap.erase(it); + continue; + } + ++it; + } +// m_pVolumeControl->removeInputProfile(); +} + +/* + * 添加可用的输入端口到input list widget + */ +void UkmediaMainWidget::addAvailableInputPort() +{ + QMap>::iterator at; + QMap::iterator it; + QMap tempMap; + int i = systemWidget->m_pInputListWidget->count(); + //增加端口 + for(at=m_pVolumeControl->inputPortMap.begin();at!=m_pVolumeControl->inputPortMap.end();) + { + tempMap = at.value(); + for (it=tempMap.begin();it!=tempMap.end();) { + //需添加到list widget + if (inputPortIsNeedAdd(at.key(),it.value())) { + UkuiListWidgetItem *itemW = new UkuiListWidgetItem(this); + QListWidgetItem * item = new QListWidgetItem(systemWidget->m_pInputListWidget); + item->setSizeHint(QSize(200,48)); //QSize(120, 40) spacing: 12px; + systemWidget->m_pInputListWidget->blockSignals(true); + systemWidget->m_pInputListWidget->setItemWidget(item, itemW); + systemWidget->m_pInputListWidget->blockSignals(false); + + itemW->setLabelText(it.value(),findCardName(at.key(),m_pVolumeControl->cardMap)); + currentInputPortLabelMap.insertMulti(at.key(),it.value()); + systemWidget->m_pInputListWidget->blockSignals(true); + systemWidget->m_pInputListWidget->insertItem(i,item); + systemWidget->m_pInputListWidget->blockSignals(false); + } + ++it; + } + ++at; + } +} + + +//查找指定声卡名的索引 +int UkmediaMainWidget::findCardIndex(QString cardName, QMap cardMap) +{ + QMap::iterator it; + + for(it=cardMap.begin();it!=cardMap.end();) { + if (it.value() == cardName) { + return it.key(); + } + ++it; + } + return -1; +} + +/* + * 根据声卡索引查找声卡名 + */ +QString UkmediaMainWidget::findCardName(int index,QMap cardMap) +{ + QMap::iterator it; + + for(it=cardMap.begin();it!=cardMap.end();) { + if (it.key() == index) { + return it.value(); + } + ++it; + } + return ""; +} + +QString UkmediaMainWidget::findHighPriorityProfile(int index,QString profile) +{ + QMap>::iterator it; + int priority = 0; + QString profileName = ""; + QMap profileNameMap; + QMap::iterator tempMap; + QString cardStr = findCardName(index,m_pVolumeControl->cardMap); + + QString profileStr = findCardActiveProfile(index) ; + + QStringList list = profileStr.split("+"); + QString includeProfile = ""; + + if (list.count() >1) { + if (profile.contains("output")) { + includeProfile = list.at(1); + } + else if (profile.contains("input")){ + includeProfile = list.at(0); + } + qDebug() << "profile str" <cardProfilePriorityMap.begin();it!=m_pVolumeControl->cardProfilePriorityMap.end();) { + if (it.key() == index) { + profileNameMap = it.value(); + for (tempMap=profileNameMap.begin();tempMap!=profileNameMap.end();) { +// qDebug() << "findHighPriorityProfile" << includeProfile < priority) { + priority = tempMap.value(); + profileName = tempMap.key(); + } + ++tempMap; + } + } + ++it; + } + qDebug() << "profile str----------" <>::iterator it; + QMap portNameMap; + QMap::iterator tempMap; + QString sinkStr = ""; + for (it=m_pVolumeControl->sinkPortMap.begin();it!=m_pVolumeControl->sinkPortMap.end();) { + if(it.key() == index) { + portNameMap = it.value(); + for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { + if (tempMap.value() == portName) { + sinkStr = tempMap.key(); +// qDebug() <<"find port sink" << tempMap.value() << portName << tempMap.key() <>::iterator it; + QMap portNameMap; + QMap::iterator tempMap; + QString sourceStr = ""; + for (it=m_pVolumeControl->sourcePortMap.begin();it!=m_pVolumeControl->sourcePortMap.end();) { + if(it.key() == index) { + portNameMap = it.value(); + for (tempMap=portNameMap.begin();tempMap!=portNameMap.end();) { + qDebug() << "findportsource ===" <>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portName = ""; + for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + if (tempMap.value() == portLabel) { + portName = tempMap.key(); + break; + } + ++tempMap; + } + } + ++it; + } + return portName; +} + +/* + 查找名称为PortName 的portLabel +*/ +QString UkmediaMainWidget::findOutputPortLabel(int index,QString portName) +{ + QMap>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portLabel = ""; + for (it = m_pVolumeControl->outputPortMap.begin();it != m_pVolumeControl->outputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { +// qDebug() <<"findOutputPortLabel" <>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portName = ""; + for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + if (tempMap.value() == portLabel) { + portName = tempMap.key(); + break; + } + ++tempMap; + } + } + ++it; + } + return portName; +} + +/* + 查找名称为PortName 的portLabel +*/ +QString UkmediaMainWidget::findInputPortLabel(int index,QString portName) +{ + QMap>::iterator it; + QMapportMap; + QMap::iterator tempMap; + QString portLabel = ""; + for (it = m_pVolumeControl->inputPortMap.begin();it != m_pVolumeControl->inputPortMap.end();) { + if (it.key() == index) { + portMap = it.value(); + for (tempMap = portMap.begin();tempMap!=portMap.end();) { + if (tempMap.key() == portName) { + portLabel = tempMap.value(); + break; + } + ++tempMap; + } + } + ++it; + } + return portLabel; +} + +/* + * 设置声卡的配置文件 + */ +void UkmediaMainWidget::setCardProfile(QString name, QString profile) +{ + int index = findCardIndex(name,m_pVolumeControl->cardMap); + m_pVolumeControl->setCardProfile(index,profile.toLatin1().data()); +} + +/* + * 设置默认的输出设备端口 + */ +void UkmediaMainWidget::setDefaultOutputPortDevice(QString devName, QString portName) +{ + int cardIndex = findCardIndex(devName,m_pVolumeControl->cardMap); + QString portStr = findOutputPortName(cardIndex,portName); + QTimer *timer = new QTimer; + timer->start(100); + connect(timer,&QTimer::timeout,[=](){ + QString sinkStr = findPortSink(cardIndex,portStr); + if(!m_pVolumeControl->customSoundFile->isExist(stringRemoveUnrecignizedChar(portStr)) && !strcmp(sinkStr.toLatin1().data(),"") == 0 ) + { + QTimer::singleShot(50, this, SLOT(initVolumeSlider())); + } + /*默认的stream 和设置的stream相同 需要更新端口*/ + if (strcmp(sinkStr.toLatin1().data(),m_pVolumeControl->defaultSinkName) == 0) { + m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); + } + else { + m_pVolumeControl->setDefaultSink(sinkStr.toLatin1().data()); + m_pVolumeControl->setSinkPort(sinkStr.toLatin1().data(),portStr.toLatin1().data()); + } + qDebug() << "setDefaultOutputPortDevice" << "cardIndex:" << cardIndex << "portStr:" << portStr << "sinkStr:" << sinkStr; + /* + bug:94489 修复选择默认设备时不弹osd弹窗问题 + */ + if (portStr.contains("speaker",Qt::CaseInsensitive)) + { + Q_EMIT m_pVolumeControl->device_changed_signal("audio-volume-high"); + } + else + { + Q_EMIT m_pVolumeControl->device_changed_signal("ukui-headset"); + } + + delete timer; + }); +} + +/* + * 设置默认的输入设备端口 + */ +void UkmediaMainWidget::setDefaultInputPortDevice(QString devName, QString portName) +{ + int cardIndex = findCardIndex(devName,m_pVolumeControl->cardMap); + QString portStr = findInputPortName(cardIndex,portName); + QString sourceStr = findPortSource(cardIndex,portStr); + + /*默认的stream 和设置的stream相同 需要更新端口*/ + if (strcmp(sourceStr.toLatin1().data(),m_pVolumeControl->defaultSourceName) == 0) { + m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); + } + else { + m_pVolumeControl->setDefaultSource(sourceStr.toLatin1().data()); + m_pVolumeControl->setSourcePort(sourceStr.toLatin1().data(),portStr.toLatin1().data()); + } + qDebug() << "set default input" << portName <::iterator it; + for (it=m_pVolumeControl->cardActiveProfileMap.begin();it!=m_pVolumeControl->cardActiveProfileMap.end();) { + if (it.key() == index) { + activeProfileName = it.value(); + break; + } + ++it; + } + return activeProfileName; +} + +void UkmediaMainWidget::findOutputListWidgetItem(QString cardName,QString portLabel) +{ + for (int row=0;rowm_pOutputListWidget->count();row++) { + + QListWidgetItem *item = systemWidget->m_pOutputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pOutputListWidget->itemWidget(item); + qDebug() << "findOutputListWidgetItem" << "cardName:" << cardName << wid->deviceLabel->text() << "portName:" << portLabel << wid->portLabel->fullText; + if (wid->deviceLabel->text() == cardName && portLabel == wid->portLabel->fullText) { + systemWidget->m_pOutputListWidget->blockSignals(true); + systemWidget->m_pOutputListWidget->setCurrentRow(row); + wid->deviceButton->buttonState = PUSH_BUTTON_CLICK; + wid->deviceButton->setActive(true); + setDeviceButtonState(row); + systemWidget->m_pOutputListWidget->blockSignals(false); + wid->deviceButton->repaint(); + break; + } + } + if(!m_pVolumeControl->customSoundFile->isExist(m_pVolumeControl->sinkPortName) && m_pVolumeControl->sinkPortName != "" ) + { + QTimer::singleShot(50, this, SLOT(initVolumeSlider())); + } +} + +void UkmediaMainWidget::findInputListWidgetItem(QString cardName,QString portLabel) +{ + for (int row=0;rowm_pInputListWidget->count();row++) { + QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); + qDebug() << "findInputListWidgetItem" << "card name:" << cardName << "deviceLabel:" << wid->deviceLabel->text() << "portname" << portLabel << "portLabel:" << wid->portLabel->fullText ; + if (wid->deviceLabel->text() == cardName && wid->portLabel->fullText == portLabel) { + systemWidget->m_pInputListWidget->blockSignals(true); + systemWidget->m_pInputListWidget->setCurrentRow(row); + systemWidget->m_pInputListWidget->blockSignals(false); + if (wid->deviceLabel->text().contains("bluez_card")) + isCheckBluetoothInput = true; + qDebug() << "set input list widget" << row; + break; + } + } + if(!m_pVolumeControl->customSoundFile->isExist(m_pVolumeControl->sourcePortName) && m_pVolumeControl->sourcePortName != "" ) + { + QTimer::singleShot(50, this, SLOT(initVolumeSlider())); + } +} + +/* + * 输入设备中是否包含蓝牙设备 + */ +bool UkmediaMainWidget::inputDeviceContainBluetooth() +{ + for (int row=0;rowm_pInputListWidget->count();row++) { + + QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); + if (wid->deviceLabel->text().contains("bluez")) { + return true; + } + } + return false; +} + +/* + * 移除xml文件中不能识别的字符 + */ +QString UkmediaMainWidget::stringRemoveUnrecignizedChar(QString str) +{ + str.remove(" "); + str.remove("/"); + str.remove("("); + str.remove(")"); + str.remove("["); + str.remove("]"); + return str; +} + + +QString UkmediaMainWidget::blueCardName() +{ + for (int row=0;rowm_pInputListWidget->count();row++) { + + QListWidgetItem *item = systemWidget->m_pInputListWidget->item(row); + UkuiListWidgetItem *wid = (UkuiListWidgetItem *)systemWidget->m_pInputListWidget->itemWidget(item); + if (wid->deviceLabel->text().contains("bluez")) { + return wid->deviceLabel->text(); + } + } + return ""; +} + +/** + * @brief MainWindow::keyPressEvent 按esc键关闭主界面 + * @param event + */ +void UkmediaMainWidget::keyPressEvent(QKeyEvent *event) +{ + if (event->key() == Qt::Key_Escape) { + hideWindow(); + } + return QWidget::keyPressEvent(event); +} + +/* + *在path路径下找包含str字段的文件名(暂时用来寻找wine微信) + */ +QString UkmediaMainWidget::findFile(const QString path,QString str) +{ + QDir dir(path); + QString filename = ""; + if(!dir.exists()) + { + return ""; + } + + //获取filePath下所有文件夹和文件 + dir.setFilter(QDir::Dirs | QDir::Files | QDir::NoDotAndDotDot);//文件夹|文件|不包含./和../ + + //排序文件夹优先 + dir.setSorting(QDir::DirsFirst); + + QStringList filer; + QStringList list= dir.entryList(filer, QDir::Files | QDir::NoDotAndDotDot); + + if(list.size() == 0) + { + return ""; + } + + for(int i = 0; i < list.size(); i++) + { + QFileInfo fileInfo = list.at(i); + if(fileInfo.isDir())//判断是否为文件夹 + { + findFile(fileInfo.filePath(),str);//递归开始 + } + else + { + if(fileInfo.fileName().contains(str) && !fileInfo.fileName().contains("企业微信") && !fileInfo.fileName().contains("卸载微信"))//设定后缀 + { + filename = fileInfo.fileName(); + qDebug() << "在/usr/share/applications/找到文件" << filename; + break; + } + } + } + return filename; +} + +void UkmediaMainWidget::inhibit() +{ + if (m_inhibitFileDescriptor.isValid()) { + return; + } + + QDBusMessage message = QDBusMessage::createMethodCall("org.freedesktop.login1", + "/org/freedesktop/login1", + "org.freedesktop.login1.Manager", + QStringLiteral("Inhibit")); + message.setArguments(QVariantList({QStringLiteral("sleep"), + "Screen Locker", + "Ensuring that the screen gets locked before going to sleep", + QStringLiteral("delay")})); + QDBusPendingReply reply = QDBusConnection::systemBus().call(message); + if (!reply.isValid()) { + return; + } + reply.value().swap(m_inhibitFileDescriptor); +} + +void UkmediaMainWidget::uninhibit() +{ + if (!m_inhibitFileDescriptor.isValid()) { + return; + } + m_inhibitFileDescriptor = QDBusUnixFileDescriptor(); +} + +UkmediaMainWidget::~UkmediaMainWidget() +{ + +} diff --git a/ukui-volume-control-applet-qt/ukmedia_main_widget.h b/ukui-volume-control-applet-qt/ukmedia_main_widget.h new file mode 100644 index 0000000..cc7bd60 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_main_widget.h @@ -0,0 +1,358 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include "ukmedia_application_volume_widget.h" +#include "ukmedia_osd_display_widget.h" +#include "ukmedia_custom_sound.h" +#include "ukui_media_set_headset_widget.h" +#include "ukmedia_volume_control.h" +#include "ukui_list_widget_item.h" +#include "ukmedia_system_volume_widget.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +extern "C" { +#include +#include +#include +#include +} +#include +#include + +#define HAVE_EXT_DEVICE_RESTORE_API PA_CHECK_VERSION(0,99,0) + +#define UKUI_THEME_SETTING "org.ukui.style" +#define UKUI_TRANSPARENCY_SETTING "org.ukui.control-center.personalise" +#define UKUI_THEME_NAME "style-name" //主题名称 +#define UKUI_THEME_WHITE "ukui-default" //默认主题 +#define UKUI_THEME_BLACK "ukui-dark" //深色主题 +#define PORT_NUM 5 + +//为平板模式提供设置音量值 +#define UKUI_VOLUME_BRIGHTNESS_GSETTING_ID "org.ukui.quick-operation.panel" +#define UKUI_VOLUME_KEY "volumesize" //音量大小 +#define UKUI_VOLUME_STATE "soundstate" //音量状态 + + +#define KEY_SOUNDS_SCHEMA "org.ukui.sound" +#define TIMER_TIMEOUT (2*1000) + +#define PA_VOLUME_NORMAL 65536.0 +#define UKMEDIA_VOLUME_NORMAL 100.0 +#define DBUS_NAME "org.ukui.SettingsDaemon" +#define DBUS_PATH "/org/ukui/SettingsDaemon/wayland" +#define DBUS_INTERFACE "org.ukui.SettingsDaemon.wayland" + +//第一次运行时初始化音量 +#define UKUI_AUDIO_SCHEMA "org.ukui.audio" //定制音量 +#define FIRST_RUN "first-run" //是否第一次运行 +#define HEADPHONE_OUTPUT_VOLUME "headphone-output-volume" +#define PLUGIN_INIT_VOLUME "plugin-init-volume" +#define INTEL_MIC "intel-mic" +#define REAR_MIC "rear-mic" +#define HEADSET_MIC "headset-mic" +#define LINEIN "linein" +#define SPEAKER "speaker" +#define HDMI "hdmi" +#define HEADPHONES_1 "headphones-1" +#define HEADPHONES_2 "headphones-2" + +#define HEADPHONE_VOLUME 17 +#define HDMI_VOLUME 100 +#define OUTPUT_VOLUME 67 +#define MIC_VOLUME 100 + +const QByteArray TRANSPARENCY_GSETTINGS = "org.ukui.control-center.personalise"; + +static const gchar *iconNameOutputs[] = { + "audio-volume-muted-symbolic", + "audio-volume-low-symbolic", + "audio-volume-medium-symbolic", + "audio-volume-high-symbolic", + NULL +}; + +static const gchar *iconNameInputs[] = { + "microphone-sensitivity-muted-symbolic", + "microphone-sensitivity-low-symbolic", + "microphone-sensitivity-medium-symbolic", + "microphone-sensitivity-high-symbolic", + NULL +}; + +typedef struct { + const pa_card_port_info *headphones; + const pa_card_port_info *headsetmic; + const pa_card_port_info *headphonemic; + const pa_card_port_info *internalmic; + const pa_card_port_info *internalspk; +} headsetPorts; + +class UkmediaMainWidget : public QMainWindow +{ + Q_OBJECT + Q_CLASSINFO("D-Bus Interface", "org.ukui.media")//ukui-media的dbus接口 +public: + explicit UkmediaMainWidget(QMainWindow *parent = nullptr); + ~UkmediaMainWidget(); + + void UkmediaDbusRegister(); //注册Dbus信号 + void initSystemTrayIcon(); //初始化系统托盘 + void initWidget(); //初始化弹出框 + void initVolumeLed();//初始化静音灯 + void initGsettings(); //初始化gsetting + void updateOutputListWidgetFont(); + void initAlertSound(); + void initSystemVolume(); //初始化系统音量 + void myLine(QFrame *volumeLine,QFrame *volumeSettingLine);//添加分隔线 + void dealSlot(); //处理槽函数 + void systemTrayMenuInit(); //初始化右键菜单 + + void initOutputListWidgetItem();//初始化默认选择的输出设备 + void initInputListWidgetItem();//初始化默认选择的输输入设备 + + QList listExistsPath(); //动态gseting列出存在的路径 + QString findFreePath(); //动态gsetting找到下一个为空的路径 + void addValue(QString name,QString filename); //动态gsetting添加键值 + QPixmap drawLightColoredPixmap(const QPixmap &source); //绘制高亮颜色图标 + QPixmap drawDarkColoredPixmap(const QPixmap &source); //绘制深色颜色图标 + void themeChangeIcons(); //主题更改时更新图标颜色 + + void advancedWidgetShow(); //显示advance widget + void hideWindow(); //隐藏窗口 + void inputVolumeDarkThemeImage(int value,bool status); //绘制input button颜色 + void outputVolumeDarkThemeImage(int value,bool status); //绘制output button颜色 + void drawImagColorFromTheme(UkuiButtonDrawSvg *button, QString iconStr); //绘制iamge颜色 + void setVolumeSettingValue(int value); //设置volume gsetting的值 + void setVolumeSettingMute(bool state); //设置volume gsetting的静音 + + int valueToPaVolume(int value); //滑动条值转换成音量 + int paVolumeToValue(int value); //音量值转换成滑动条值 + QString outputVolumeToIconStr(bool status,int volume); + + QString getAppName(QString desktopfp); //从desktop中获取应用名称 + QString getAppIcon(QString desktopfp); //从desktop中获取应用图标 + QString appNameToIconName(const gchar *appName,const gchar *appIconName); + + void initSubApplicationWidget(QString str); //子应用窗口布局 + + static gboolean verifyAlsaCard (int cardindex,gboolean *headsetmic,gboolean *headphonemic); + static headsetPorts *getHeadsetPorts (const pa_card_info *c); + void freePrivPortNames(); + + void setDeviceButtonState(int row); + void addOutputListWidgetItem(QString portName, QString portLabel,QString cardName); //添加output listWidget item + void addInputListWidgetItem(QString portName, QString cardName); //添加input listwidget item + + int findCardIndex(QString cardName, QMap cardMap);//查找声卡指定的索引 + QString findCardName(int index,QMap cardMap); + QString findHighPriorityProfile(int index,QString profile); + QString findPortSink(int index,QString portName); + QString findPortSource(int index,QString portName); + + bool outputPortIsNeedDelete(int index,QString name);//port是否需要在outputListWidget删除 + bool outputPortIsNeedAdd(int index,QString name);//port是否需要在outputListWidget删除 + bool inputPortIsNeedDelete(int index,QString name);//port是否需要在inputListWidget删除 + bool inputPortIsNeedAdd(int index,QString name);//port是否需要在inputListWidget删除 + + int indexOfOutputPortInOutputListWidget(QString portName); + int indexOfInputPortInInputListWidget(QString portName); + + void deleteNotAvailableOutputPort(); //删除不可用的输出端口 + void addAvailableOutputPort(); //添加可用输出端口 + void deleteNotAvailableInputPort(); //删除不可用的输入端口 + void addAvailableInputPort(); //添加可用输入端口 + + QString findOutputPortName(int index,QString portLabel); //找到outputPortLabel对应的portName + QString findInputPortName(int index,QString portLabel); //找到inputPortLabel对应的portName + QString findOutputPortLabel(int index,QString portName); //查找名为portName对应的portLabel + QString findInputPortLabel(int index,QString portName); //查找名为portName对应的portLabel + void setCardProfile(QString name,QString profile); //设置声卡的配置文件 + void setDefaultOutputPortDevice(QString devName,QString portName); //设置默认的输出端口 + void setDefaultInputPortDevice(QString devName,QString portName); //设置默认的输入端口 + QString findCardActiveProfile(int index); //查找声卡的active profile + QString stringRemoveUnrecignizedChar(QString str);//移除xml文件中不能识别的字符 + + void findOutputListWidgetItem(QString cardName,QString portLabel); + void findInputListWidgetItem(QString cardName,QString portLabel); + QString blueCardName(); //记录蓝牙声卡名称 + bool inputDeviceContainBluetooth(); + QString findFile(const QString path,QString str); + + void inhibit(); + void uninhibit(); + + +protected: + bool eventFilter(QObject *obj, QEvent *event); + void paintEvent(QPaintEvent *event); + void keyPressEvent(QKeyEvent *event); + +Q_SIGNALS: + void mouse_middle_clicked_signal(); + void mouse_wheel_signal(bool step); + void app_name_signal(QString app_name); + void theme_change(); + void font_change(); + + void device_changed_signal(QString dev_name);//设备更换信号 + +private Q_SLOTS: + void activatedSystemTrayIconSlot(QSystemTrayIcon::ActivationReason reason); //托盘图标 + void jumpControlPanelSlot(); //跳转到控制面板 + + void setHeadsetPort(QString str); //根据弹出框选择的切换不同的端口 + void handleTimeout(); //超时播放提示音 + void advancedSystemSliderChangedSlot(int value); //advancedSystemSlider值改变 + void systemVolumeSliderChangedSlot(int value); + void systemVolumeButtonClickedSlot(); + + void mouseMeddleClickedTraySlot(); //鼠标中间贱点击托盘图标 + void trayWheelRollEventSlot(bool step); //鼠标滚轮在托盘图标上滚动 + + void appWidgetMuteButtonCLickedSlot();//应用音量静音按钮点击 + + void ukuiThemeChangedSlot(const QString &themeStr); //主题改变 + void fontSizeChangedSlot(const QString &themeStr); //字体大小改变 + void volumeSettingChangedSlot(); //volume gseting值改变 + void initVolumeSlider(); //初始化滑动条 + int initDefaultVolume(int sinkVolume);//初始化默认音量 + + + void addAppToAppwidget(const gchar *name,const gchar *iconName,int index,int channel); //添加应用 + void removeSubAppWidget(const gchar *m_pAppName); //移除子应用窗口 + void sinkInputVolumeChangedSlot(const gchar *name,const gchar *iconName,int index); + + //添加拔插headset提示 + void checkAudioDeviceSelectionNeeded (const pa_card_info *info); + void updateDevicePort(); + void updateListWidgetItemSlot(); //更新输出设备列表 + void outputListWidgetCurrentRowChangedSlot(int row); //output list widget选项改变 + void inputListWidgetCurrentRowChangedSlot(int row); //output list widget选项改变 + void updateAppVolume(QString str, int value, bool state); + + + void deviceChangedShowSlot(QString dev_name);//osd提示弹窗 + void osdDisplayWidgetHide(); //osd超时隐藏 + + void onTransChanged(); + void paintWithTrans(); + + void onPrepareForSleep(bool sleep); + +private: + QLabel *systemWidgetLabel; + QLabel *appWidgetLabel; + QHBoxLayout * m_tabBarLayout = nullptr; + + UkmediaVolumeControl *m_pVolumeControl; + UkmediaSystemVolumeWidget *systemWidget; + QTabWidget *m_pTabWidget; + ApplicationVolumeWidget *appWidget; //应用界面窗口 + UkmediaOsdDisplayWidget *osdWidget; + UkuiMediaSetHeadsetWidget *headsetWidget; //当声卡中有headsetmic 端口时插入4段式耳机的弹窗 + + UkmediaOsdDisplayWidget *headset; //需求:输出设备插拔提示弹出 + + QFrame *volumeLine; + QFrame *volumeSettingLine; + + MyTimer *timer; //定时器 + QMenu *menu; //右键菜单 + GSettings *m_pSoundSettings; + QGSettings *m_pThemeSetting; //主题gsettting + QGSettings *m_pTransparencySetting; //透明度gestting + QGSettings *m_pVolumeSetting; // + QGSettings *m_pFontSetting; //字体gsetting + QGSettings *m_pInitSystemVolumeSetting; //初始化系统音量 + + QGSettings * m_pTransGsettings; //透明度配置文件 + double m_pTransparency=0.0; //透明度 + + UkmediaTrayIcon *soundSystemTrayIcon; //系统托盘 + QAction *m_pSoundPreferenceAction; //声音首选项菜单项 + + QStringList *eventList; //提示声音类型列表 + QStringList *eventIdNameList; //提示声音名称列表 + + QMap currentOutputPortLabelMap; + QMap currentInputPortLabelMap; + int headsetCard; //headset 声卡 + gboolean hasHeadsetmic; //是否包含headset mic端口 + gboolean hasHeadphonemic; //是否包含headphone mic端口 + gboolean headsetPluggedIn; //headpset 是否插入 + char *m_pHeadphonesName; //headphone名称 + char *m_pHeadsetmicName; // + char *m_pHeadphonemicName; + char *m_pInternalspkName; + char *m_pInternalmicName; + + QTimer *m_pTimer; + QTimer *m_pTimer2; + bool mouseReleaseState = false; //鼠标释放状态 + bool mousePress = false; //鼠标按下状态 + bool shortcutMute = false; + bool firstEntry = true; + bool inputFirstEntry = true; + bool isFirstMuteLed = true; + + QProcess *m_process; + QString mThemeName = UKUI_THEME_WHITE; + bool firstEnterSystem = true; + ca_context *caContext; + bool firstLoad = true; + + bool isPlay = true; //用于避免运行托盘时第一次响起的提示音 + bool sinkInputMute = false; + bool isFirstRecive = true; + bool isAppMuteBtnPress = false; + int updateAppVolumeCount = 0; + int outputListWidgetRow = -1; + + QDBusUnixFileDescriptor m_inhibitFileDescriptor; +}; + +#endif // UKMEDIAMAINWIDGET_H diff --git a/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.cpp b/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.cpp new file mode 100644 index 0000000..2c601db --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.cpp @@ -0,0 +1,118 @@ +/* + * Copyright 2020. kylinos.cn. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +UkmediaMonitorWindowThread::UkmediaMonitorWindowThread() +{ + bStopThread = false; + bCreateWindow = false; + bFirstEnterSystem = true; +} + +void UkmediaMonitorWindowThread::get_window_nameAndid() +{ + Display *display; + Window rootwin; + display = XOpenDisplay( NULL ); + rootwin = DefaultRootWindow( display ); + Atom atom = XInternAtom(display, "WM_DELETE_WINDOW", false); + XSelectInput( display, rootwin, SubstructureNotifyMask | ExposureMask);/*事件可以参考x.h*/ + XEvent event; +// while ( 1 ) +// { +// printf("get event\n"); + fflush(stdout); + while (true) { + XNextEvent(display, &event ); +// printf("event type is %d\n",event.type); + fflush(stdout); + if (event.type == Expose /*ReparentNotify*/ /*&& bCreateWindow == false*/) { + + printf("ReparentNotify\n\n"); + fflush(stdout); + if (bFirstEnterSystem == false) { + Window x11window; + Display *x11display; + char **srname = (char **)malloc(sizeof(char *)); + XReparentEvent *reparentevent = (XReparentEvent *)&event; + + //printf( "new window: %ld \n", (unsigned long)(reparentevent->window)); + //printf( "new parent: %ld \n", (unsigned long)(reparentevent->parent)); + fflush(stdout); + windowId.append((unsigned long)reparentevent->window); + /*获取到新建窗口的window ID*/ + x11window = (unsigned long)(reparentevent->window); + x11display =(reparentevent->display); + XFetchName(x11display, x11window, srname); + x11display = XOpenDisplay( NULL );/*!!!注意这里以后如果你想对获取到的window ID进行操作必须重新链接*/ + + fflush(stdout); + free(*srname); + bCreateWindow = true; + XCloseDisplay(x11display); + } + bFirstEnterSystem = false; + + } + else if (event.type == /*DestroyNotify*//*ClientMessage*/ UnmapNotify /*&&*/ /*bCreateWindow*/) { + bCreateWindow = false; + // 执行用户定义的关闭窗口操作 + fflush(stdout); + Window x11window; + Display *x11display; + char **srname = (char **)malloc(sizeof(char *)); + XUnmapEvent *reparentevent = (XUnmapEvent *)&event; + //printf( "close window: %ld \n", (unsigned long)(reparentevent->window)); + fflush(stdout); + if (windowId.contains((unsigned long)reparentevent->window)) { + int index = windowId.indexOf((unsigned long)reparentevent->window); + //printf( "remove ---------------------------- index : %d \n\n",index); + fflush(stdout); + windowId.removeAt(index); + } + /*获取到新建窗口的window ID*/ + x11window = (unsigned long)(reparentevent->window); + x11display =(reparentevent->display); + XFetchName(x11display, x11window, srname); + x11display = XOpenDisplay( NULL );/*!!!注意这里以后如果你想对获取到的window ID进行操作必须重新链接*/ + + fflush(stdout); + free(*srname); + XCloseDisplay(x11display); + } + } + XCloseDisplay(display); +} + +//线程执行函数 +void UkmediaMonitorWindowThread::run() +{ +// qDebug()<<"thread run!"; + bStopThread = false; + while(!bStopThread) + { +// printf("thread run! \n\n"); + fflush(stdout); + //to do what you want + get_window_nameAndid(); + //延时等待一会 + QEventLoop eventloop; + QTimer::singleShot(1000, &eventloop, SLOT(quit())); + eventloop.exec(); + } +} diff --git a/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.h b/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.h new file mode 100644 index 0000000..f2cdb4f --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_monitor_window_thread.h @@ -0,0 +1,50 @@ +/* + * Copyright 2020. kylinos.cn. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +class UkmediaMonitorWindowThread : public QThread +{ +public: + UkmediaMonitorWindowThread(); + void get_window_nameAndid(); + //结束线程标志位 + bool bStopThread; + bool bCreateWindow; + bool bFirstEnterSystem; + QVector windowId; + void run(); +}; + +#endif // UKMEDIAMONITORWINDOWTHREAD_H diff --git a/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.cpp new file mode 100644 index 0000000..e1d0edd --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.cpp @@ -0,0 +1,167 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include + +extern double transparency; +UkmediaOsdDisplayWidget::UkmediaOsdDisplayWidget(QWidget *parent) : QWidget (parent) +{ + osdWidget = new QWidget(this); + iconButton = new QPushButton(this); + ret = 0; + iconButton->setFocusPolicy(Qt::NoFocus); + UkmediaOsdDisplayWidgetInit(); +// this->setMouseTracking(false); +// setWindowFlags(Qt::FramelessWindowHint|Qt::WindowStaysOnTopHint|Qt::X11BypassWindowManagerHint); +// this->setWindowFlags(Qt::FramelessWindowHint|Qt::ToolTip); + this->setWindowFlags(Qt::WindowStaysOnTopHint|Qt::Popup|Qt::ToolTip); +} + +/*! + * \brief + * \details + * 通过dbus获取任务栏位置 + */ +int UkmediaOsdDisplayWidget::getPanelPosition(QString str) +{ + QDBusInterface interface( "com.ukui.panel.desktop", + "/", + "com.ukui.panel.desktop", + QDBusConnection::sessionBus() ); + QDBusReply reply = interface.call("GetPanelPosition", str); + if (reply < 0) + return 0; + return reply; +} + +/*! + * \brief + * \details + * 通过dbus获取任务栏高度 + */ +int UkmediaOsdDisplayWidget::getPanelHeight(QString str) +{ + QDBusInterface interface( "com.ukui.panel.desktop", + "/", + "com.ukui.panel.desktop", + QDBusConnection::sessionBus() ); + QDBusReply reply = interface.call("GetPanelSize", str); + if (reply <= 0) + return 46; + return reply; +} + +void UkmediaOsdDisplayWidget::UkmediaOsdDisplayWidgetInit() +{ + QVBoxLayout *hLayout = new QVBoxLayout(); + hLayout->addWidget(iconButton); + osdWidget->setLayout(hLayout); + + int margin = 12; + osdWidget->layout()->setContentsMargins(margin,margin,margin,margin); + + this->setFixedSize(72,72); + this->iconButton->setFixedSize(48,48); + + QSize iconSize(48,48); + this->iconButton->setIconSize(iconSize); + + this->setAttribute(Qt::WA_TranslucentBackground); + QPalette palete = iconButton->palette(); + palete.setColor(QPalette::Highlight,Qt::transparent); + palete.setBrush(QPalette::Button,QBrush(QColor(245,245,245,0.75))); + iconButton->setPalette(palete); + +// this->setStyleSheet("QWidget{background:rgba(245,245,245,0.75); border-radius:12px;}"); +// this->osdWidget->setStyleSheet("QWidget{background:rgba(245,245,245,0.75); border-radius:12px;}"); +// this->iconButton->setStyleSheet("QPushButton::hover{background:rgba(245,245,245,0.75);" +// "border-radius:4px;}" +// "QPushButton::pressed{background:rgba((245,245,245,0.75);" +// "border-radius:4px;padding-left:0px;}"); +} + +void UkmediaOsdDisplayWidget::UkmediaOsdSetIcon(QPixmap dev_Icon,QString themeType) +{ + QSize iconSize(48,48); + + if ( themeType == "ukui-white" || themeType == "ukui-light") { + this->iconButton->setStyleSheet("QPushButton{background:rgba(245,245,245,1);" + "border-radius:12px;padding-left:0px;}"); + this->setStyleSheet("QWidget{background:rgba(245,245,245,1); border-radius:12px;}"); + this->osdWidget->setStyleSheet("QWidget{background:rgba(245,245,245,1); border-radius:12px;}"); + this->iconButton->setStyleSheet("QPushButton::hover{background:rgba(245,245,245,1);" + "border-radius:4px;}" + "QPushButton::pressed{background:rgba((245,245,245,1);" + "border-radius:4px;padding-left:0px;}"); + } + else if (themeType == "ukui-dark" || themeType == "ukui-black" || themeType == "ukui-default") { + this->iconButton->setStyleSheet("QPushButton{background:rgba(23,24,26,1);" + "border-radius:12px;padding-left:0px;}"); + this->setStyleSheet("QWidget{background:rgba(23,24,26,1); border-radius:12px;}"); + this->osdWidget->setStyleSheet("QWidget{background:rgba(23,24,26,1); border-radius:12px;}"); + this->iconButton->setStyleSheet("QPushButton::hover{background:rgba(23,24,26,1);" + "border-radius:4px;}" + "QPushButton::pressed{background:rgba((23,24,26,1);" + "border-radius:4px;padding-left:0px;}"); + } + + + this->iconButton->setIconSize(iconSize); + this->iconButton->setProperty("useIconHighlightEffect",true); + this->iconButton->setProperty("iconHighlightEffectMode",true); +//this->iconButton->setIcon(QIcon(drawDarkColoredPixmap((QIcon::fromTheme(muteButtonStr).pixmap(iconSize))))); + this->setAttribute(Qt::WA_TranslucentBackground); + this->iconButton->setIcon(dev_Icon); +} + +void UkmediaOsdDisplayWidget::paintEvent(QPaintEvent *event) +{ + QStyleOption opt; + int rounded; + opt.init(this); + QPainter p(this); + double transparence = transparency * 255; + QColor color = palette().color(QPalette::Base); + color.setAlpha(transparence); + QBrush brush = QBrush(color); + p.setBrush(brush); + p.setPen(Qt::NoPen); + QPainterPath path; + opt.rect.adjust(0,0,0,0); + rounded = 12; + path.addRoundedRect(opt.rect,rounded,rounded); + p.setRenderHint(QPainter::Antialiasing); // 反锯齿; + p.drawRoundedRect(opt.rect,rounded,rounded); + this->setAttribute(Qt::WA_TranslucentBackground); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +// QWidget::paintEvent(event); + +} + + +UkmediaOsdDisplayWidget::~UkmediaOsdDisplayWidget() +{ + +} diff --git a/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.h b/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.h new file mode 100644 index 0000000..bece6f5 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_osd_display_widget.h @@ -0,0 +1,50 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include "customstyle.h" +#include "ukmedia_custom_class.h" +class UkmediaOsdDisplayWidget : public QWidget +{ +public: + UkmediaOsdDisplayWidget(QWidget *parent = nullptr); + ~UkmediaOsdDisplayWidget(); + int getPanelPosition(QString str); + int getPanelHeight(QString str); + + void UkmediaOsdDisplayWidgetInit(); + void UkmediaOsdSetIcon(QPixmap dev_Icon,QString themeType); + friend class DeviceSwitchWidget; +private: + QWidget *osdWidget; + double size; + QPushButton *iconButton; + int ret; +protected: + void paintEvent(QPaintEvent *event); +}; + +#endif // UKMEDIAOSDDISPLAYWIDGET_H diff --git a/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.cpp b/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.cpp new file mode 100644 index 0000000..d96f16b --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.cpp @@ -0,0 +1,167 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "ukmedia_custom_class.h" + +MediaSliderTipLabel::MediaSliderTipLabel(){ + setAttribute(Qt::WA_TranslucentBackground); +} + +MediaSliderTipLabel::~MediaSliderTipLabel(){ +} + +void MediaSliderTipLabel::paintEvent(QPaintEvent *e) +{ + QStyleOptionFrame opt; + initStyleOption(&opt); + QStylePainter p(this); +// p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); + p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x33))); + p.setPen(Qt::NoPen); + p.drawRoundedRect(this->rect(), 1, 1); + QPainterPath path; + path.addRoundedRect(opt.rect,6,6); + p.setRenderHint(QPainter::Antialiasing); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); + this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); + QLabel::paintEvent(e); +} + +SliderTipLabelHelper::SliderTipLabelHelper(QObject *parent) :QObject(parent) +{ + m_pTiplabel = new MediaSliderTipLabel(); + m_pTiplabel->setWindowFlags(Qt::ToolTip); + m_pTiplabel->setFixedSize(52,30); + m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); +} + +void SliderTipLabelHelper::registerWidget(QWidget *w) +{ + w->removeEventFilter(this); + w->installEventFilter(this); +} + +void SliderTipLabelHelper::unregisterWidget(QWidget *w) +{ + w->removeEventFilter(this); +} + +bool SliderTipLabelHelper::eventFilter(QObject *obj, QEvent *e) +{ + auto slider = qobject_cast(obj); + if (obj == slider) { + switch (e->type()) { + case QEvent::MouseMove: { + QMouseEvent *event = static_cast(e); + mouseMoveEvent(obj, event); + return false; + } + case QEvent::MouseButtonRelease: { + QMouseEvent *event = static_cast(e); + mouseReleaseEvent(obj, event); + return false; + } + case QEvent::MouseButtonPress:{ + QMouseEvent *event = static_cast(e); + mousePressedEvent(obj,event); + } + + default: + return false; + } + } + return QObject::eventFilter(obj,e); +} + + +void SliderTipLabelHelper::mouseMoveEvent(QObject *obj, QMouseEvent *e) +{ + Q_UNUSED(e); + QRect rect; + QStyleOptionSlider m_option; + auto slider = qobject_cast(obj); +// auto slider = qobject_cast(obj); + slider->initStyleOption(&m_option); + rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); + QPoint gPos = slider->mapToGlobal(rect.topLeft()); + QString percent; + percent = QString::number(slider->value()); + percent.append("%"); + m_pTiplabel->setText(percent); + m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); + m_pTiplabel->show(); +} + +void SliderTipLabelHelper::mouseReleaseEvent(QObject *obj, QMouseEvent *e) +{ + Q_UNUSED(obj); + Q_UNUSED(e); + m_pTiplabel->hide(); +} + +void SliderTipLabelHelper::mousePressedEvent(QObject *obj, QMouseEvent *e) +{ + Q_UNUSED(e); + QStyleOptionSlider m_option; + auto slider = qobject_cast(obj); + QRect rect; + //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) + double pos = e->pos().x() / (double)slider->width(); + slider->setValue(pos *(slider->maximum() - slider->minimum()) + slider->minimum()); + //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 + QEvent evEvent(static_cast(QEvent::User + 1)); + QCoreApplication::sendEvent(obj, &evEvent); + int value = pos *(slider->maximum() - slider->minimum()) + slider->minimum(); + + slider->initStyleOption(&m_option); + rect = slider->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,slider); + QPoint gPos = slider->mapToGlobal(rect.topLeft()); + QString percent; + + percent = QString::number(slider->value());//(m_option.sliderValue); + percent.append("%"); + + m_pTiplabel->setText(percent); + m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); + m_pTiplabel->show(); +} + +// AppEventFilter +AppEventFilter::AppEventFilter() +{ +} + +bool AppEventFilter::eventFilter(QObject *obj, QEvent *e) +{ + Q_UNUSED(obj); + Q_UNUSED(e); + return false; +} + diff --git a/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.h b/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.h new file mode 100644 index 0000000..7b73409 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_slider_tip_label_helper.h @@ -0,0 +1,64 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include "ukmedia_custom_class.h" + +class MediaSliderTipLabel:public QLabel +{ + public: + MediaSliderTipLabel(); + ~MediaSliderTipLabel(); +protected: + void paintEvent(QPaintEvent*); +}; + +class SliderTipLabelHelper : public QObject +{ + Q_OBJECT + friend class AppEventFilter; +public: + SliderTipLabelHelper(QObject *parent = nullptr); + ~SliderTipLabelHelper() {} + void registerWidget(QWidget *w); + void unregisterWidget(QWidget *w); + bool eventFilter(QObject *obj, QEvent *e); + + void mouseMoveEvent(QObject *obj, QMouseEvent *e); + void mouseReleaseEvent(QObject *obj, QMouseEvent *e); + void mousePressedEvent(QObject *obj,QMouseEvent *e); +private: + MediaSliderTipLabel *m_pTiplabel; +}; + +class AppEventFilter +{ + friend class SliderTipLabelHelper; +private: + explicit AppEventFilter(); + ~AppEventFilter() {} + + bool eventFilter(QObject *obj, QEvent *e); + + SliderTipLabelHelper *m_wm = nullptr; +}; + +#endif // SLIDERTIPLABELHELPER_H diff --git a/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.cpp b/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.cpp new file mode 100644 index 0000000..77e03ee --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.cpp @@ -0,0 +1,138 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include + +UkmediaSystemVolumeWidget::UkmediaSystemVolumeWidget(QWidget *parent) : QWidget(parent) +{ + m_pOutputListWidget = new QListWidget(this); + m_pInputListWidget = new QListWidget(this); + m_pSysSliderWidget = new QWidget(this); + + m_pOutputListWidget->setFixedSize(404,245);//系统音量输出下面的一个大窗口用来存放各种输出设备widget + m_pOutputListWidget->setFrameShape(QFrame::Shape::NoFrame); + QWidget *outputWidget = new QWidget(this); + outputWidget->setFixedSize(404,245); + QHBoxLayout *outputWidgetLayout = new QHBoxLayout; + outputWidgetLayout->addWidget(m_pOutputListWidget); + outputWidgetLayout->setSpacing(0); + outputWidgetLayout->setContentsMargins(0,0,8,0); + outputWidget->setLayout(outputWidgetLayout); + + + + m_pInputListWidget->hide(); + m_pSysSliderWidget->setFixedSize(412,48); + m_pSystemVolumeBtn = new UkuiMediaMuteButton(m_pSysSliderWidget); + m_pSystemVolumeBtn->setFixedSize(36,36); + m_pSystemVolumeBtn->setActive(true); + m_pSystemVolumeSlider = new UkmediaVolumeSlider(m_pSysSliderWidget); + m_pSystemVolumeSlider->setOrientation(Qt::Horizontal); + m_pSystemVolumeSlider->setFixedSize(273,48); + m_pSystemVolumeSlider->setRange(0,100); + + m_pSystemVolumeSliderLabel = new QLabel(m_pSysSliderWidget); + m_pSystemVolumeSliderLabel->setText("0%"); + m_pSystemVolumeSliderLabel->setFixedSize(55,48); + + //音量label布局 + m_pSystemVolumeLabel = new QLabel(this); + m_pSystemVolumeLabel->setText(tr("Volume")); + m_pSystemVolumeLabel->setFixedSize(404,20);//防止字体显示不全 + QWidget *systemVolumeLabelWidget = new QWidget(this); + systemVolumeLabelWidget->setFixedSize(404,20); + QHBoxLayout *systemVolumeLabelLayout = new QHBoxLayout; + systemVolumeLabelLayout->addWidget(m_pSystemVolumeLabel); + systemVolumeLabelWidget->setLayout(systemVolumeLabelLayout); + systemVolumeLabelLayout->setContentsMargins(16,0,0,0); + + //输出label布局 + m_pOutputLabel = new QLabel(this); + m_pOutputLabel->setText(tr("Output")); + m_pOutputLabel->setFixedSize(404,20); + QWidget *outputLabelWidget = new QWidget(this); + outputLabelWidget->setFixedSize(404,20); + QHBoxLayout *outputLabelLayout = new QHBoxLayout; + outputLabelLayout->addWidget(m_pOutputLabel); + outputLabelWidget->setLayout(outputLabelLayout); + outputLabelLayout->setContentsMargins(16,0,0,0); + + QPalette palette = m_pSystemVolumeLabel->palette(); + QColor color = palette.color(QPalette::PlaceholderText); + palette.setColor(QPalette::WindowText,color); + m_pSystemVolumeLabel->setPalette(palette); + m_pOutputLabel->setPalette(palette); + + volumeSettingButton = new UkuiSettingButton(volumeSettingFrame); + volumeSettingButton->setText(tr("Sound Settings")); + volumeSettingButton->setCursor(Qt::PointingHandCursor); + volumeSettingButton->setScaledContents(true); + + volumeSettingFrame = new QFrame(this); + volumeSettingFrame->setFixedHeight(52); + QHBoxLayout *volumeSettingLayout = new QHBoxLayout; + volumeSettingLayout->addWidget(volumeSettingButton); + volumeSettingLayout->addStretch(); + volumeSettingFrame->setLayout(volumeSettingLayout); + volumeSettingLayout->setContentsMargins(16,0,24,8); + + //系统音量滑动条布局 + QHBoxLayout *sysVolumeLay = new QHBoxLayout(); + sysVolumeLay->addWidget(m_pSystemVolumeBtn); + sysVolumeLay->addSpacing(8); + sysVolumeLay->addWidget(m_pSystemVolumeSlider); + sysVolumeLay->addWidget(m_pSystemVolumeSliderLabel); + sysVolumeLay->setSpacing(0); + m_pSystemVolumeSliderLabel->setAlignment(Qt::AlignCenter); + m_pSysSliderWidget->setLayout(sysVolumeLay); + sysVolumeLay->setContentsMargins(16,0,24,0); + + QVBoxLayout *mainLayout = new QVBoxLayout; + mainLayout->addWidget(systemVolumeLabelWidget); + mainLayout->addSpacing(8); + mainLayout->addWidget(m_pSysSliderWidget); + mainLayout->addSpacing(17); + mainLayout->addWidget(outputLabelWidget); + mainLayout->addSpacing(8); + mainLayout->addWidget(outputWidget); + mainLayout->addSpacing(8); + mainLayout->addWidget(volumeSettingFrame); + mainLayout->setSpacing(0); + this->setLayout(mainLayout); + mainLayout->setContentsMargins(8,16,0,0); + this->setFixedSize(420,436); + m_pOutputListWidget->setStyleSheet( + "QListWidget{" + "background-color:rgba(0,0,0,0);" + "padding-left:0;" + "padding-right:0;" + "padding-top:0;" + "padding-bottom:0;}" + "QListWidget::item{" + "background-color:rgba(0,0,0,0);" + "border-radius:6px;}" + ); + +// listwidget选中item项默认为蓝色,暂时没找到方法设置透明 +// QPalette pal = m_pOutputListWidget->palette(); +// pal.setBrush(QPalette::Base, QColor(0,0,0,0)); //背景透明 +// m_pOutputListWidget->setPalette(pal); +} + diff --git a/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.h b/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.h new file mode 100644 index 0000000..3101f83 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_system_volume_widget.h @@ -0,0 +1,51 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include "ukmedia_custom_class.h" + +class UkmediaSystemVolumeWidget : public QWidget +{ + Q_OBJECT +public: + explicit UkmediaSystemVolumeWidget(QWidget *parent = nullptr); + friend class UkmediaMainWidget; +Q_SIGNALS: + +private: + QListWidget *m_pInputListWidget; + QListWidget *m_pOutputListWidget; + QLabel *m_pOutputLabel; + QWidget *m_pSysSliderWidget; + QLabel *m_pSystemVolumeLabel; + UkmediaVolumeSlider *m_pSystemVolumeSlider; + QLabel *m_pSystemVolumeSliderLabel; + + QFrame *volumeSettingFrame; + UkuiSettingButton *volumeSettingButton; + + UkuiMediaMuteButton *m_pSystemVolumeBtn;//系统音量界面的音量按钮(点击可以静音) +}; + +#endif // UKMEDIASYSTEMVOLUMEWIDGET_H diff --git a/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp b/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp new file mode 100644 index 0000000..f13daae --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_volume_control.cpp @@ -0,0 +1,2111 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#endif +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//pa_sink_info *m_pDefaultSink; +/* Used for profile sorting */ +struct profile_prio_compare { + bool operator() (pa_card_profile_info2 const * const lhs, pa_card_profile_info2 const * const rhs) const { + + if (lhs->priority == rhs->priority) + return strcmp(lhs->name, rhs->name) > 0; + + return lhs->priority > rhs->priority; + } +}; + +struct sink_port_prio_compare { + bool operator() (const pa_sink_port_info& lhs, const pa_sink_port_info& rhs) const { + + if (lhs.priority == rhs.priority) + return strcmp(lhs.name, rhs.name) > 0; + + return lhs.priority > rhs.priority; + } +}; + +struct source_port_prio_compare { + bool operator() (const pa_source_port_info& lhs, const pa_source_port_info& rhs) const { + + if (lhs.priority == rhs.priority) + return strcmp(lhs.name, rhs.name) > 0; + + return lhs.priority > rhs.priority; + } +}; + +UkmediaVolumeControl::UkmediaVolumeControl(): + + showSinkInputType(SINK_INPUT_CLIENT), + showSinkType(SINK_ALL), + showSourceOutputType(SOURCE_OUTPUT_CLIENT), + showSourceType(SOURCE_NO_MONITOR), + + canRenameDevices(false), + m_connected(false), + m_config_filename(nullptr) { + profileNameMap.clear(); + //创建声音初始化记录文件 + customSoundFile = new CustomSound(); + customSoundFile->createAudioFile(); + connectToPulse(this); + + if (reconnectTimeout >= 0) { + + } + + if (reconnectTimeout < 0) + showError(QObject::tr("Fatal Error: Unable to connect to PulseAudio").toUtf8().constData()); +} + +/* + * 设置输出设备静音 + */ +void UkmediaVolumeControl::setSinkMute(bool status) +{ + pa_operation* o; + + if (!(o = pa_context_set_sink_mute_by_index(getContext(), sinkIndex, status, nullptr, nullptr))) { + showError(tr("pa_context_set_sink_volume_by_index() failed").toUtf8().constData()); + } +} + +/* + * 设置输出设备音量 + */ +void UkmediaVolumeControl::setSinkVolume(int index,int value) +{ + pa_cvolume v = m_pDefaultSink->volume; + v.channels = channel; + for (int i=0;ivolume; + v.channels = inputChannel; + for (int i=0;i::iterator it; + for (it=sinkInputMuteMap.begin();it!=sinkInputMuteMap.end();) { + qDebug() << "getSinkInputMuted" << it.key() << description << it.value(); + if (it.key() == description) { + muteStatus = it.value(); + break; + } + ++it; + } + + return muteStatus==1?true:false; +} + +/* + * 滑动条更改设置sink input 音量值 + */ +void UkmediaVolumeControl::setSinkInputVolume(int index, int value,int channel) +{ + pa_cvolume v = m_pDefaultSink->volume; + + v.channels = channel; + for (int i=0;ivolume; + v.channels = sourceOutputChannel; + for (int i=0;isecond); + clientNames.erase(i); + } +} + +static void updatePorts(UkmediaVolumeControl *d, std::map &ports) { + std::map::iterator it; + PortInfo p; + for (auto & port : d->dPorts) { + QByteArray desc; + it = ports.find(port.first); + + if (it == ports.end()) + continue; + + p = it->second; + desc = p.description; + + if (p.available == PA_PORT_AVAILABLE_YES) + desc += UkmediaVolumeControl::tr(" (plugged in)").toUtf8().constData(); + else if (p.available == PA_PORT_AVAILABLE_NO) { + if (p.name == "analog-output-speaker" || + p.name == "analog-input-microphone-internal") + desc += UkmediaVolumeControl::tr(" (unavailable)").toUtf8().constData(); + else + desc += UkmediaVolumeControl::tr(" (unplugged)").toUtf8().constData(); + } + port.second = desc; + } + qDebug() << "updatePorts" << p.name << p.description; + + Q_EMIT d->updatePortSignal(); + + it = ports.find(d->activePort); + + if (it != ports.end()) { + p = it->second; +// d->setLatencyOffset(p.latency_offset); + } +} + +static void setIconByName(QLabel* label, const char* name) { + QIcon icon = QIcon::fromTheme(name); + int size = label->style()->pixelMetric(QStyle::PM_ToolBarIconSize); + QPixmap pix = icon.pixmap(size, size); + label->setPixmap(pix); +} + +int UkmediaVolumeControl::boolToInt(bool b) +{ + if (b == true) + return 1; + else + return 0; +} + +void UkmediaVolumeControl::updateCard(UkmediaVolumeControl *c, const pa_card_info &info) { + const char *description; + QMap tempInput; + QMap tempOutput; + QList profileName; + QMapportMap; + QMap outputPortNameLabelMap; + QMapinputPortNameLabelMap; + QMap profilePriorityMap; + std::set profile_priorities; + + description = pa_proplist_gets(info.proplist, PA_PROP_DEVICE_DESCRIPTION);//获取device.description字符串 + + hasSinks = c->hasSources = false; + profile_priorities.clear(); + for (pa_card_profile_info2 ** p_profile = info.profiles2; *p_profile != nullptr; ++p_profile) { +// c->hasSinks = c->hasSinks || ((*p_profile)->n_sinks > 0); +// c->hasSources = c->hasSources || ((*p_profile)->n_sources > 0); + profile_priorities.insert(*p_profile); + profileName.append((*p_profile)->name); + profilePriorityMap.insertMulti((*p_profile)->name,(*p_profile)->priority); + } + QList> cardProfilePriorityMapList; + if(cardProfilePriorityMap.isEmpty()) + cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); + + cardProfilePriorityMapList = cardProfilePriorityMap.values(); + if(!cardProfilePriorityMapList.contains(profilePriorityMap)) + cardProfilePriorityMap.insertMulti(info.index,profilePriorityMap); + + c->ports.clear(); + for (uint32_t i = 0; i < info.n_ports; ++i) { + PortInfo p; + p.name = info.ports[i]->name; + p.description = info.ports[i]->description; + p.priority = info.ports[i]->priority; + p.available = info.ports[i]->available; + p.direction = info.ports[i]->direction; + p.latency_offset = info.ports[i]->latency_offset; + if (info.ports[i]->profiles2)//bug#92426 该蓝牙音响存在输入端口无输入配置文件会导致段错误 + for (pa_card_profile_info2 ** p_profile = info.ports[i]->profiles2; *p_profile != nullptr; ++p_profile) { + p.profiles.push_back((*p_profile)->name); + } + if (p.direction == 1 && p.available != PA_PORT_AVAILABLE_NO) { +// portMap.insertMulti(p.name,p.description.data()); + + //新增UI设计,combobox显示portname+description + QString outputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) + QString outputPortName_and_description = outputPortName + "(" + description + ")"; + + tempOutput.insertMulti(p.name,outputPortName_and_description); + + QList portProfileName; + for (auto p_profile : p.profiles) { + portProfileName.append(p_profile.data()); + outputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); + qDebug() << "ctf profilename map insert -----------" << p.description.data() << p_profile.data(); + } + profileNameMap.insert(info.index,outputPortNameLabelMap); + cardProfileMap.insert(info.index,portProfileName); + } + else if (p.direction == 2 && p.available != PA_PORT_AVAILABLE_NO){ + + qDebug() << " add source port name "<< info.index << p.name << p.description.data(); + QString inputPortName = p.description.data();//端口名(如:扬声器,模拟耳机..) + QString inputPortName_and_description = inputPortName + "(" + description + ")"; + + tempInput.insertMulti(p.name,inputPortName_and_description); + + for (auto p_profile : p.profiles) { + inputPortNameLabelMap.insertMulti(p.description.data(),p_profile.data()); + } + inputPortProfileNameMap.insert(info.index,inputPortNameLabelMap); + } + c->ports[p.name] = p; + } + inputPortMap.insert(info.index,tempInput); + outputPortMap.insert(info.index,tempOutput); + cardActiveProfileMap.insert(info.index,info.active_profile->name); + c->profiles.clear(); + for (auto p_profile : profile_priorities) { + bool hasNo = false, hasOther = false; + std::map::iterator portIt; + QByteArray desc = p_profile->description; + + for (portIt = c->ports.begin(); portIt != c->ports.end(); portIt++) { + PortInfo port = portIt->second; + + if (std::find(port.profiles.begin(), port.profiles.end(), p_profile->name) == port.profiles.end()) + continue; + + if (port.available == PA_PORT_AVAILABLE_NO) + hasNo = true; + else { + hasOther = true; + break; + } + } + if (hasNo && !hasOther) + desc += tr(" (unplugged)").toUtf8().constData(); + + if (!p_profile->available) + desc += tr(" (unavailable)").toUtf8().constData(); + + c->profiles.push_back(std::pair(p_profile->name, desc)); + if (p_profile->n_sinks == 0 && p_profile->n_sources == 0) + c->noInOutProfile = p_profile->name; + } + c->activeProfile = info.active_profile ? info.active_profile->name : ""; + + //bug 102001 针对hw990 9a0 panguv panguw,由于连上部分音箱后,创建蓝牙声卡时a2d_sink对应transport状态还是不可用的状态,因此进行延迟300ms的异常处理 + QString sessionType = getenv("XDG_SESSION_TYPE"); + if (sessionType.compare("wayland", Qt::CaseSensitive)) { + if (strstr(info.name,"bluez_card") && strcmp(info.active_profile->name,"off") == 0) { + qDebug() << "bluez card profile is off,need to set profile..."; + QTimer::singleShot(300,this,[=](){ + setCardProfile(info.index,"a2dp_sink"); + }); + } + } + + + /* Because the port info for sinks and sources is discontinued we need + * to update the port info for them here. */ + updatePorts(c,c->ports); + + Q_EMIT checkDeviceSelectionSianal(&info); +} + +/* + * Update output device when the default output device or port is updated + */ +bool UkmediaVolumeControl::updateSink(UkmediaVolumeControl *w,const pa_sink_info &info) { + bool is_new = false; + m_defaultSinkVolume = info.volume; + QMaptemp; + int volume; + if (info.volume.channels >= 2) + volume = MAX(info.volume.values[0],info.volume.values[1]); + else + volume = info.volume.values[0]; + if (info.active_port) + sinkActivePortMap.insert(info.name,info.active_port->name); + + //默认的输出音量 + if (strcmp(defaultSinkName.data(),info.name) == 0) { + channel = info.volume.channels; + channelMap = info.channel_map; + sinkIndex = info.index; + if (info.active_port) { + if((strcmp(info.active_port->name,sinkPortName.toLatin1().data()) != 0)){ + //拔出耳机转为扬声器时,音乐暂停信号 + if ((strstr(sinkPortName.toLatin1().data(),"headphone") || strstr(sinkPortName.toLatin1().data(),"Headphone")) \ + && strstr(info.active_port->name,"speaker") || strstr(info.active_port->name,"Speaker")) { + QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sinkPortChanged"); + message << "portChanged"; + QDBusConnection::sessionBus().send(message); + qDebug() << "sinkPortChanged" << sinkPortName; + } +// if(sinkPortName == "") +// { +// QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sinkPortChanged"); +// message << "portChanged"; +// QDBusConnection::sessionBus().send(message); +// qDebug() << "sinkPortChanged IN sinkindexCb with NO SINK" << w->sinkPortName; +// qDebug() << "sinkPortChanged" << sinkPortName; +// } + + sinkPortName = info.active_port->name; + //updateSinkFirstEnterFlag用来规避第一次出现osd弹窗提示的情况 + if(updateSinkFirstEnterFlag==false && !sinkPortName.contains("histen-algo",Qt::CaseInsensitive)){ + if (sinkPortName.contains("speaker",Qt::CaseInsensitive)) + Q_EMIT device_changed_signal("audio-volume-high"); + else + Q_EMIT device_changed_signal("ukui-headset"); + } + updateSinkFirstEnterFlag = false; + } + } + else { + if (sinkPortName != "") { + + sinkPortName = ""; + QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sinkPortChanged");//"sourcePortChanged"); + message << "portChanged"; + QDBusConnection::sessionBus().send(message); + qDebug() << "sinkPortChanged" << sinkPortName; + } + } + defaultOutputCard = info.card; + QString temp = ""; + balance = pa_cvolume_get_balance(&info.volume,&info.channel_map); +/* + bug:96232、95568、95523 解决 hw-panguw 机型,找不到对于sinkPortName导致音量无法同步、静音按钮只能按一次等问题 +*/ + if (sinkPortName.contains("histen-algo",Qt::CaseInsensitive)) { + sinkPortName = findSinkActivePortName(PANGUW_SINK); + temp = "histen-algo"; + } + + if(sinkMuted != info.mute) { + sinkMuted = info.mute; + Q_EMIT updateMute(sinkMuted); + } + if (sinkVolume != volume) { + if(temp != "") + sinkPortName = temp; + sinkVolume = volume; + sinkMuted = info.mute; + Q_EMIT updateVolume(sinkVolume); + } + } + qDebug() << "UpdateSink--->" << "sinkIndex:" << sinkIndex << "sinkPortName:" << sinkPortName << "sinkVolume:" << sinkVolume << "channel:" << channel; + + if (info.ports) { + for (pa_sink_port_info ** sinkPort = info.ports; *sinkPort != nullptr; ++sinkPort) { + temp.insertMulti(info.name,(*sinkPort)->name); + } + QList > sinkPortMapList; + if(sinkPortMap.isEmpty()) + sinkPortMap.insertMulti(info.card,temp); + sinkPortMapList = sinkPortMap.values(); + + if(!sinkPortMapList.contains(temp)) + sinkPortMap.insertMulti(info.card,temp); + + const char *icon; + std::set port_priorities; + + icon = pa_proplist_gets(info.proplist, PA_PROP_DEVICE_ICON_NAME); + + port_priorities.clear(); + for (uint32_t i=0; iports.clear(); + } + return is_new; +} + +QString UkmediaVolumeControl::stringRemoveUnrecignizedChar(QString str) { + str.remove(" "); + str.remove("/"); + str.remove("("); + str.remove(")"); + str.remove("["); + str.remove("]"); + return str; +} + + +/* + * stream suspend callback + */ +static void suspended_callback(pa_stream *s, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (pa_stream_is_suspended(s)) { +// w->updateVolumeMeter(pa_stream_get_device_index(s), PA_INVALID_INDEX, -1); + } +} + +static void read_callback(pa_stream *s, size_t length, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + const void *data; + double v; + + if (pa_stream_peek(s, &data, &length) < 0) { + w->showError(UkmediaVolumeControl::tr("Failed to read data from stream").toUtf8().constData()); + return; + } + + if (!data) { + /* nullptr data means either a hole or empty buffer. + * Only drop the stream when there is a hole (length > 0) */ + if (length) + pa_stream_drop(s); + return; + } + + assert(length > 0); + assert(length % sizeof(float) == 0); + + v = ((const float*) data)[length / sizeof(float) -1]; + + pa_stream_drop(s); + + if (v < 0) + v = 0; + if (v > 1) + v = 1; +} + +pa_stream* UkmediaVolumeControl::createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx = -1, bool suspend = false) { + pa_stream *s; + char t[16]; + pa_buffer_attr attr; + pa_sample_spec ss; + pa_stream_flags_t flags; + + ss.channels = 1; + ss.format = PA_SAMPLE_FLOAT32; + ss.rate = 25; + + memset(&attr, 0, sizeof(attr)); + attr.fragsize = sizeof(float); + attr.maxlength = (uint32_t) -1; + + snprintf(t, sizeof(t), "%u", source_idx); + m_pPaContext = getContext(); + if (!(s = pa_stream_new(getContext(), tr("Peak detect").toUtf8().constData(), &ss, nullptr))) { + showError(tr("Failed to create monitoring stream").toUtf8().constData()); + return nullptr; + } + + if (stream_idx != (uint32_t) -1) + pa_stream_set_monitor_stream(s, stream_idx); + + pa_stream_set_read_callback(s, read_callback, this); + pa_stream_set_suspended_callback(s, suspended_callback, this); + + flags = (pa_stream_flags_t) (PA_STREAM_DONT_MOVE | PA_STREAM_PEAK_DETECT | PA_STREAM_ADJUST_LATENCY | + (suspend ? PA_STREAM_DONT_INHIBIT_AUTO_SUSPEND : PA_STREAM_NOFLAGS) /*| + (!showVolumeMetersCheckButton->isChecked() ? PA_STREAM_START_CORKED : PA_STREAM_NOFLAGS)*/); + + if (pa_stream_connect_record(s, t, &attr, flags) < 0) { + showError(tr("Failed to connect monitoring stream").toUtf8().constData()); + pa_stream_unref(s); + return nullptr; + } + return s; +} + +void UkmediaVolumeControl::updateSource(const pa_source_info &info) { + int volume; + if (info.volume.channels >= 2) + volume = MAX(info.volume.values[0],info.volume.values[1]); + else + volume = info.volume.values[0]; + + //默认的输出音量 + if (strcmp(defaultSourceName.data(),info.name) == 0) { + inputChannel = info.volume.channels; + sourceIndex = info.index; + if (info.active_port) { + if (strcmp(info.active_port->name,sourcePortName.toLatin1().data()) != 0) { + sourcePortName = info.active_port->name; + QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sourcePortChanged"); + message << "portChanged"; + QDBusConnection::sessionBus().send(message); + qDebug() << "sourcePortChanged" << sourcePortName; + } + } + else { + if (sourcePortName != "") { + sourcePortName = ""; + QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sourcePortChanged"); + message << "portChanged"; + QDBusConnection::sessionBus().send(message); + qDebug() << "sourcePortChanged" << sourcePortName; + } + } + + defaultInputCard = info.card; + + if (sourceMuted != info.mute) { + sourceMuted = info.mute; + Q_EMIT updateSourceMute(sourceMuted); + } + + if (sourceVolume != volume) { + sourceMuted = info.mute; + sourceVolume = volume; + Q_EMIT updateSourceVolume(sourceVolume); + } + } + + QMaptemp; + if(info.ports) { + for (pa_source_port_info ** sourcePort = info.ports; *sourcePort != nullptr; ++sourcePort) { + temp.insertMulti(info.name,(*sourcePort)->name); + } + QList > sourcePortMapList; + if(sourcePortMap.isEmpty()) + sourcePortMap.insertMulti(info.card,temp); + sourcePortMapList = sourcePortMap.values(); + + if(!sourcePortMapList.contains(temp)) + sourcePortMap.insertMulti(info.card,temp); + + qDebug() << "UpdateSource--->" << "sourceIndex:" << sourceIndex << "sourcePortName:" << sourcePortName << "sourceVolume:" << sourceVolume << "inputChannel:" << inputChannel; + } +} + + +void UkmediaVolumeControl::setIconFromProplist(QLabel *icon, pa_proplist *l, const char *def) { + const char *t; + + if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ICON_NAME))) + goto finish; + + if ((t = pa_proplist_gets(l, PA_PROP_WINDOW_ICON_NAME))) + goto finish; + + if ((t = pa_proplist_gets(l, PA_PROP_APPLICATION_ICON_NAME))) + goto finish; + + if ((t = pa_proplist_gets(l, PA_PROP_MEDIA_ROLE))) { + + if (strcmp(t, "video") == 0 || + strcmp(t, "phone") == 0) + goto finish; + + if (strcmp(t, "music") == 0) { + t = "audio"; + goto finish; + } + + if (strcmp(t, "game") == 0) { + t = "applications-games"; + goto finish; + } + + if (strcmp(t, "event") == 0) { + t = "dialog-information"; + goto finish; + } + } + + t = def; + +finish: + + setIconByName(icon, t); +} + + +void UkmediaVolumeControl::updateSinkInput(const pa_sink_input_info &info) { + sinkInputChannel = info.volume.channels; + const char *t; + if ((t = pa_proplist_gets(info.proplist, "module-stream-restore.id"))) { + if (t && strcmp(t, "sink-input-by-media-role:event") == 0) { + g_debug("%s", tr("Ignoring sink-input due to it being designated as an event and thus handled by the Event widget").toUtf8().constData()); + return; + } + } + const gchar *description = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_NAME); + QString appId = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID); + QString appIconName = pa_proplist_gets(info.proplist,PA_PROP_APPLICATION_ICON_NAME);\ + const gchar *appBinary = pa_proplist_gets(info.proplist,PA_PROP_APPLICATION_PROCESS_BINARY); + if (appId == "") { + if (appIconName != "") { + appId = appIconName; + } + if (appBinary && strstr(appBinary,"kylin-video")) + { + appId = "kylin-video"; + appIconName = "kylin-video"; + description = "kylin-video"; + } + if (description && appBinary && strcmp(description,"Chromium") == 0 && appIconName == "chromium-browser" && strcmp(appBinary,"qqmusic") == 0) { + appId = "qqmusic"; + } + else if (description && strcmp(description,"kylin-recorder") == 0 ) { + appId = "kylin-recorder"; + } + else if (description && strcmp(description,"ALSA plug-in [ukui-sidebar]") == 0) { + appId = ""; + } + else if (description && strcmp(description,"Clock") == 0) { + appId = "ukui-clock"; + } + else if (description && strcmp(description,"Firefox") == 0) { + appId = "firefox-esr"; + } + else if (description && strcmp(description,"qaxbrowser") == 0) { + appId = "qaxbrowser-safe"; + } + //bug:92126,微信存在多种版本 + else if (description && strcmp(description,"wechat") == 0) { + appId = "electronic-wechat"; + appIconName = "electronic-wechat"; + description = "electronic-wechat"; + } + else if (description && strcmp(description,"WeChat.exe") == 0) { + appId = "wine-preloader"; + appIconName = "wine-preloader"; + description = "wine-preloader"; + } + else if (description && strcmp(description,"微信") == 0 ) { + appId = "wechat"; + appIconName = "wechat"; + description = "wechat"; + } + else if (appBinary && strstr(appBinary,"weixin")) { + appId = "weixin"; + appIconName = "weixin"; + description = "weixin"; + } + //fixed bug:100614、100610 无线投屏时应用音量界面里应用音量没有图标显示 + else if (description && (strcmp(description,"castplayer") == 0 || strcmp(description,"miraclecast") == 0 )) { + appId = "kylin-video"; + appIconName = "castplayer"; + description = "castplayer"; + } + + } + qDebug() << " updateSinkInput:" << "icon:"<< appIconName << "id" << appId <<"dess"<< description <<"bind"<< appBinary << info.volume.values[0] << (info.volume.values[0]/65536.0*100.0)+0.5; + //没制定应用名称的不加入到应用音量中 + if (description && !strstr(description,"QtPulseAudio") && !strstr(description,"ALSA")) { + // if (!info.corked) { + QMaptemp; + temp.insert(info.index,info.volume.values[0]); + sinkInputMuteMap.insert(description,info.mute); + sinkInputMap.insert(description,temp); + if (!sinkInputList.contains(description)) { + sinkInputList.append(description); + Q_EMIT addSinkInputSignal(description,appId.toLatin1().data(),info.index,info.volume.channels); + Q_EMIT sinkInputVolumeChangedSignal(description,appId.toLatin1().data(),info.index); + } + + Q_EMIT sinkInputVolumeChangedSignal(description,appId.toLatin1().data(),info.index); + } +/* + else { + qDebug() << "nnnnnnnnnn"; + Q_EMIT removeSinkInputSignal(description); + sinkInputList.removeAll(description); + QMap>::iterator it; + for(it = sinkInputMap.begin();it!=sinkInputMap.end();) + { + if (it.key() == description) { + sinkInputMuteMap.remove(description); + sinkInputMap.erase(it); + break; + } + ++it; + } + } + } +*/ +} + +void UkmediaVolumeControl::updateSourceOutput(const pa_source_output_info &info) { + sourceOutputChannel = info.volume.channels; + const char *app; + bool is_new = false; + + if ((app = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID))) + if (strcmp(app, "org.PulseAudio.pavucontrol") == 0 + || strcmp(app, "org.gnome.VolumeControl") == 0 + || strcmp(app, "org.kde.kmixd") == 0) + return; + + const gchar *description = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_NAME); + const gchar *appId = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ID); + const gchar *appIconName = pa_proplist_gets(info.proplist, PA_PROP_APPLICATION_ICON_NAME); + + qDebug() << "updateSourceOutput" << "description:" << description << "id:" << appId << "appIconame:" <temp; + temp.insert(info.index,info.volume.values[0]); + sinkInputMuteMap.insert(description,info.mute); + sinkInputMap.insert(description,temp); + if (!sinkInputList.contains(description)) { + sinkInputList.append(description); + Q_EMIT addSinkInputSignal(description,appId,info.index,info.volume.channels); + } + Q_EMIT sinkInputVolumeChangedSignal(description,appId,info.index); + } + else { + Q_EMIT removeSinkInputSignal(description); + sinkInputList.removeAll(description); + QMap>::iterator it; + for(it = sinkInputMap.begin();it!=sinkInputMap.end();) + { + if (it.key() == description) { + sinkInputMap.erase(it); + sinkInputMuteMap.remove(description); + break; + } + ++it; + } + } + } +} + +void UkmediaVolumeControl::updateClient(const pa_client_info &info) { + g_free(clientNames[info.index]); + clientNames[info.index] = g_strdup(info.name); +} + +void UkmediaVolumeControl::updateServer(const pa_server_info &info) { + defaultSourceName = info.default_source_name ? info.default_source_name : ""; + defaultSinkName = info.default_sink_name ? info.default_sink_name : ""; + qDebug() << "updateServer" << "defaultSinkName " << defaultSinkName << "defaultSourceName" << defaultSourceName; + +} + +#if HAVE_EXT_DEVICE_RESTORE_API +void UkmediaVolumeControl::updateDeviceInfo(const pa_ext_device_restore_info &info) { +// if (sinkWidgets.count(info.index)) { +// SinkWidget *w; +// pa_format_info *format; + +// w = sinkWidgets[info.index]; + +// w->updating = true; + +// /* Unselect everything */ +// for (int j = 1; j < PAVU_NUM_ENCODINGS; ++j) +// w->encodings[j].widget->setChecked(false); + + +// for (uint8_t i = 0; i < info.n_formats; ++i) { +// format = info.formats[i]; +// for (int j = 1; j < PAVU_NUM_ENCODINGS; ++j) { +// if (format->encoding == w->encodings[j].encoding) { +// w->encodings[j].widget->setChecked(true); +// break; +// } +// } +// } + +// w->updating = false; +// } +} +#endif + + +void UkmediaVolumeControl::setConnectionState(gboolean connected) { + if (m_connected != connected) { + m_connected = connected; + if (m_connected) { +// connectingLabel->hide(); +// notebook->show(); + } else { +// notebook->hide(); +// connectingLabel->show(); + } + } +} + + +void UkmediaVolumeControl::removeCard(uint32_t index) { + +} + +void UkmediaVolumeControl::removeSink(uint32_t index) { + QMap::iterator it; + Q_EMIT removeSinkSignal(); + for (it=sinkMap.begin();it!=sinkMap.end();) { + if (it.key() == index) { + qDebug() << "removeSink" << index; + sinkMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeSource(uint32_t index) { + QMap::iterator it; + for (it=sourceMap.begin();it!=sourceMap.end();) { + if (it.key() == index) { + qDebug() << "removeSource" << index; + sourceMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeSinkInput(uint32_t index) { + QString description = ""; + QMap>::iterator it; + QMap::iterator at; + QMap temp; + for(it=sinkInputMap.begin();it!=sinkInputMap.end();) + { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + if (at.key() == index) { + description = it.key(); + sinkInputMap.erase(it); + sinkInputMuteMap.remove(description); + Q_EMIT removeSinkInputSignal(description.toLatin1().data()); + return; + } + ++at; + } + ++it; + } +} + +void UkmediaVolumeControl::removeSourceOutput(uint32_t index) { + QString description = ""; + QMap>::iterator it; + QMap::iterator at; + QMap temp; + for(it=sinkInputMap.begin();it!=sinkInputMap.end();) + { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + if (at.key() == index) { + description = it.key(); + sinkInputMap.erase(it); + sinkInputMuteMap.remove(description); + Q_EMIT removeSinkInputSignal(description.toLatin1().data()); + return; + } + ++at; + } + ++it; + } +} + +void UkmediaVolumeControl::removeClient(uint32_t index) { + g_free(clientNames[index]); + clientNames.erase(index); +} + +void UkmediaVolumeControl::setConnectingMessage(const char *string) { + QByteArray markup = ""; + if (!string) + markup += tr("Establishing connection to PulseAudio. Please wait...").toUtf8().constData(); + else + markup += string; + markup += ""; +} + +void UkmediaVolumeControl::showError(const char *txt) { + char buf[256]; + + snprintf(buf, sizeof(buf), "%s: %s", txt, pa_strerror(pa_context_errno(context))); + qDebug() <n_outstanding <= 0) + return; + + if (--w->n_outstanding <= 0) { + w->setConnectionState(true); + } +} + +void UkmediaVolumeControl::cardCb(pa_context *c, const pa_card_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Card callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + w->cardMap.insert(i->index,i->name); + + w->signalCount += 1; +// if(w->signalCount >= 2){ +// w->updateCard(w,*i); +// w->signalCount = 1; +// } + w->updateCard(w,*i); +} + +#if HAVE_EXT_DEVICE_RESTORE_API +static void ext_device_restore_subscribeCb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata); +#endif + +void UkmediaVolumeControl::sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + int volume; + if(i->volume.channels >= 2) + volume = MAX(i->volume.values[0],i->volume.values[1]); + else + volume = i->volume.values[0]; + w->channel = i->volume.channels; + w->defaultOutputCard = i->card; + w->sinkIndex = i->index; + /* + 部分机器会出现sinkPort在updaeSink之前更新的情况 + */ + if(i->active_port) + { + QString portStr = i->active_port->name; + if (w->sinkPortName != i->active_port->name) + if (portStr.contains("speaker",Qt::CaseInsensitive)) + { + Q_EMIT w->device_changed_signal("audio-volume-high"); + } + else + { + Q_EMIT w->device_changed_signal("ukui-headset"); + } + w->sinkPortName = i->active_port->name; + } + else + w->sinkPortName = ""; + + if(w->sinkMuted != i->mute){ + w->sinkMuted = i->mute; + Q_EMIT w->updateMute(w->sinkMuted); + } + + if(w->sinkVolume != volume){ + w->sinkVolume = volume; + Q_EMIT w->updateVolume(w->sinkVolume); + } + + qDebug() << "sinkIndexCB" << w->sinkPortName; + + //拔出耳机转为扬声器时,音乐暂停信号 + QString currentCardName = i->name; + if(i->active_port && strcmp(i->active_port->name,"analog-output-speaker") == 0 && !currentCardName.contains("bluez",Qt::CaseInsensitive) + &&!currentCardName.contains("usb",Qt::CaseInsensitive)){ + int count = -1; + count = w->findOutputPort("analog-output-speaker"); + if(count == 0){ + if(w->firstgo == false){ + w->sendPortChangedSignal(); + qDebug() << "sinkPortChanged IN sinkindexCb" << w->sinkPortName; + } + w->firstgo = false; + } + } + if( w->sinkPortName == "") + { + if(w->firstGoWithNoSink == false){ + w->sendPortChangedSignal(); + qDebug() << "sinkPortChanged IN sinkindexCb with NO SINK" << w->sinkPortName; + } + w->firstGoWithNoSink = false; + } +} + +void UkmediaVolumeControl::sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Source callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + int volume; + if(i->volume.channels >= 2) + volume = MAX(i->volume.values[0],i->volume.values[1]); + else + volume = i->volume.values[0]; + + w->inputChannel = i->volume.channels; + w->defaultInputCard = i->card; + w->sourceIndex = i->index; + if(i->active_port) + w->sourcePortName = i->active_port->name; + else + w->sourcePortName = ""; + + if(w->sourceMuted != i->mute){ + w->sourceMuted = i->mute; + Q_EMIT w->updateSourceMute(w->sourceMuted); + } + + if(w->sourceVolume != volume){ + w->sourceVolume = volume; + Q_EMIT w->updateSourceVolume(w->sourceVolume); + } + + qDebug() << "sourceIndexCb---" << w->sourcePortName; +} + +void UkmediaVolumeControl::sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + w->m_pDefaultSink = i; + qDebug() << "SinkCb" << "Volume:" << i->volume.values[0] << "isMute:" << i->mute << i->name; + w->sinkMap.insert(i->index,i->name); + w->updateSink(w,*i); +} + +void UkmediaVolumeControl::sourceCb(pa_context *c, const pa_source_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Source callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + qDebug() << "SourceCb" << "Volume:" << i->volume.values[0] << "isMute:" << i->mute << i->name; + w->sourceIndex = i->index; + w->sourceMap.insert(i->index,i->name); + w->updateSource(*i); +} + +void UkmediaVolumeControl::sinkInputCb(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + + w->updateSinkInput(*i); +} + +void UkmediaVolumeControl::sourceOutputCb(pa_context *c, const pa_source_output_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Source output callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } + qDebug() << "sourceOutputCb" << i->name; + w->updateSourceOutput(*i); +} + +void UkmediaVolumeControl::clientCb(pa_context *c, const pa_client_info *i, int eol, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Client callback failure").toUtf8().constData()); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } +// qDebug() << "clientCb" << i->name; + w->updateClient(*i); +} + +void UkmediaVolumeControl::serverInfoCb(pa_context *, const pa_server_info *i, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (!i) { + w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); + return; + } + + pa_operation *o; + //默认的输出设备改变时需要获取默认的输出音量 + if (strcmp(w->defaultSinkName.data(),i->default_sink_name) != 0) { + //默认输出改变时才走sinkindexcb + if(!(o = pa_context_get_sink_info_by_name(w->getContext(),i->default_sink_name,sinkIndexCb,w))) { + w->showError(tr("pa_context_get_sink_info_by_name() failed").toUtf8().constData()); + } + } + if(!(o = pa_context_get_source_info_by_name(w->getContext(),i->default_source_name,sourceIndexCb,w))){ + w->showError(tr("pa_context_get_source_info_by_name() failed").toUtf8().constData()); + } + + qDebug() << "serverInfoCb" << i->default_sink_name << i->default_source_name; + + w->updateServer(*i); + + QTimer::singleShot(100, w, SLOT(timeoutSlot())); + decOutstanding(w); +} + +void UkmediaVolumeControl::serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + if (!i) { + w->showError(QObject::tr("Server info callback failure").toUtf8().constData()); + return; + } + pa_operation *o; + +// qDebug() << "serverInfoIndexCb" << i->default_sink_name << i->default_source_name; + w->updateServer(*i); + decOutstanding(w); +} + +void UkmediaVolumeControl::timeoutSlot() +{ + Q_EMIT deviceChangedSignal(); +} + +void UkmediaVolumeControl::extStreamRestoreReadCb( + pa_context *c, + const pa_ext_stream_restore_info *i, + int eol, + void *userdata) { + + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + decOutstanding(w); + g_debug(QObject::tr("Failed to initialize stream_restore extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); + return; + } + + if (eol > 0) { + decOutstanding(w); + return; + } +} + +void UkmediaVolumeControl::extStreamRestoreSubscribeCb(pa_context *c, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + pa_operation *o; + + if (!(o = pa_ext_stream_restore_read(c, extStreamRestoreReadCb, w))) { + w->showError(QObject::tr("pa_ext_stream_restore_read() failed").toUtf8().constData()); + return; + } + qDebug() << "extStreamRestoreSubscribeCb" ; + pa_operation_unref(o); +} + +#if HAVE_EXT_DEVICE_RESTORE_API +void ext_device_restore_read_cb( + pa_context *, + const pa_ext_device_restore_info *i, + int eol, + void *userdata) { + + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + w->decOutstanding(w); + g_debug(QObject::tr("Failed to initialize device restore extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(context))); + return; + } + + if (eol > 0) { + w->decOutstanding(w); + return; + } + + /* Do something with a widget when this part is written */ + w->updateDeviceInfo(*i); +} + +static void ext_device_restore_subscribeCb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + pa_operation *o; + + if (type != PA_DEVICE_TYPE_SINK) + return; + + if (!(o = pa_ext_device_restore_read_formats(c, type, idx, ext_device_restore_read_cb, w))) { + w->showError(QObject::tr("pa_ext_device_restore_read_sink_formats() failed").toUtf8().constData()); + return; + } + + pa_operation_unref(o); +} +#endif + +void UkmediaVolumeControl::extDeviceManagerReadCb( + pa_context *c, + const pa_ext_device_manager_info *, + int eol, + void *userdata) { + + UkmediaVolumeControl *w = static_cast(userdata); + + if (eol < 0) { + decOutstanding(w); + g_debug(QObject::tr("Failed to initialize device manager extension: %s").toUtf8().constData(), pa_strerror(pa_context_errno(c))); + return; + } + + w->canRenameDevices = true; + + if (eol > 0) { + decOutstanding(w); + return; + } + qDebug() << "extDeviceManagerReadCb"; + /* Do something with a widget when this part is written */ +} + +void UkmediaVolumeControl::extDeviceManagerSubscribeCb(pa_context *c, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + pa_operation *o; + + if (!(o = pa_ext_device_manager_read(c, extDeviceManagerReadCb, w))) { + w->showError(QObject::tr("pa_ext_device_manager_read() failed").toUtf8().constData()); + return; + } + qDebug() << "extDeviceManagerSubscribeCb"; + pa_operation_unref(o); +} + +void UkmediaVolumeControl::subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + switch (t & PA_SUBSCRIPTION_EVENT_FACILITY_MASK) { + case PA_SUBSCRIPTION_EVENT_SINK: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSink(index); + else { + pa_operation *o; + if (!(o = pa_context_get_sink_info_by_index(c, index, sinkCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_info_by_index() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SOURCE: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSource(index); + else { + pa_operation *o; + if (!(o = pa_context_get_source_info_by_index(c, index, sourceCb, w))) { + w->showError(QObject::tr("pa_context_get_source_info_by_index() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SINK_INPUT: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSinkInput(index); + else { + pa_operation *o; + if (!(o = pa_context_get_sink_input_info(c, index, sinkInputCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SOURCE_OUTPUT: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeSourceOutput(index); + else { + pa_operation *o; + if (!(o = pa_context_get_source_output_info(c, index, sourceOutputCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_input_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_CLIENT: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) + w->removeClient(index); + else { + pa_operation *o; + if (!(o = pa_context_get_client_info(c, index, clientCb, w))) { + w->showError(QObject::tr("pa_context_get_client_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_SERVER: { + pa_operation *o; + if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { + w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + case PA_SUBSCRIPTION_EVENT_CARD: + if ((t & PA_SUBSCRIPTION_EVENT_TYPE_MASK) == PA_SUBSCRIPTION_EVENT_REMOVE) { + qDebug() << "remove cards------"; + //移除outputPort + w->removeSinkPortMap(index); + w->removeOutputPortMap(index); + w->removeInputPortMap(index); + w->removeCardMap(index); + w->removeCardProfileMap(index); + + w->removeProfileMap(index); + w->removeInputProfile(index); + w->removeCard(index); + Q_EMIT w->updatePortSignal(); + } + else { + pa_operation *o; + if (!(o = pa_context_get_card_info_by_index(c, index, cardCb, w))) { + w->showError(QObject::tr("pa_context_get_card_info_by_index() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + } + break; + + } +} + +void UkmediaVolumeControl::contextStateCallback(pa_context *c, void *userdata) { + UkmediaVolumeControl *w = static_cast(userdata); + + g_assert(c); + + switch (pa_context_get_state(c)) { + case PA_CONTEXT_UNCONNECTED: + case PA_CONTEXT_CONNECTING: + case PA_CONTEXT_AUTHORIZING: + case PA_CONTEXT_SETTING_NAME: + + break; + + case PA_CONTEXT_READY: { + pa_operation *o; + qDebug() << "pa_context_get_state" << "PA_CONTEXT_READY" << pa_context_get_state(c); + w->reconnectTimeout = 1; + + /* Create event widget immediately so it's first in the list */ + + pa_context_set_subscribe_callback(c, subscribeCb, w); + + if (!(o = pa_context_subscribe(c, (pa_subscription_mask_t) + (PA_SUBSCRIPTION_MASK_SINK| + PA_SUBSCRIPTION_MASK_SOURCE| + PA_SUBSCRIPTION_MASK_SINK_INPUT| + PA_SUBSCRIPTION_MASK_SOURCE_OUTPUT| + PA_SUBSCRIPTION_MASK_CLIENT| + PA_SUBSCRIPTION_MASK_SERVER| + PA_SUBSCRIPTION_MASK_CARD), nullptr, nullptr))) { + w->showError(QObject::tr("pa_context_subscribe() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + + /* Keep track of the outstanding callbacks for UI tweaks */ + w->n_outstanding = 0; + + if (!(o = pa_context_get_server_info(c, serverInfoCb, w))) { + w->showError(QObject::tr("pa_context_get_server_info() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + + if (!(o = pa_context_get_client_info_list(c, clientCb, w))) { + w->showError(QObject::tr("pa_context_client_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + + if (!(o = pa_context_get_card_info_list(c, cardCb, w))) { + w->showError(QObject::tr("pa_context_get_card_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + + if (!(o = pa_context_get_sink_info_list(c, sinkCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + + if (!(o = pa_context_get_source_info_list(c, sourceCb, w))) { + w->showError(QObject::tr("pa_context_get_source_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + if (!(o = pa_context_get_sink_input_info_list(c, sinkInputCb, w))) { + w->showError(QObject::tr("pa_context_get_sink_input_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + + if (!(o = pa_context_get_source_output_info_list(c, sourceOutputCb, w))) { + w->showError(QObject::tr("pa_context_get_source_output_info_list() failed").toUtf8().constData()); + return; + } + pa_operation_unref(o); + w->n_outstanding++; + Q_EMIT w->paContextReady(); + break; + } + + case PA_CONTEXT_FAILED: + w->setConnectionState(false); + pa_context_unref(w->m_pPaContext); + w->m_pPaContext = nullptr; + + if (w->reconnectTimeout > 0) { + g_debug("%s", QObject::tr("Connection failed, attempting reconnect").toUtf8().constData()); +// g_timeout_add_seconds(reconnectTimeout, connectToPulse, w); + } + return; + + case PA_CONTEXT_TERMINATED: + default: + return; + } +} + +pa_context* UkmediaVolumeControl::getContext(void) { + return context; +} + +gboolean UkmediaVolumeControl::connectToPulse(gpointer userdata) { + pa_glib_mainloop *m = pa_glib_mainloop_new(g_main_context_default()); + api = pa_glib_mainloop_get_api(m); + pa_proplist *proplist = pa_proplist_new(); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_NAME, QObject::tr("Ukui Media Volume Control").toUtf8().constData()); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_ID, "org.PulseAudio.pavucontrol"); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_ICON_NAME, "audio-card"); + pa_proplist_sets(proplist, PA_PROP_APPLICATION_VERSION, "PACKAGE_VERSION"); + context = pa_context_new_with_proplist(api, nullptr, proplist); + g_assert(context); + + pa_proplist_free(proplist); + + pa_context_set_state_callback(getContext(), contextStateCallback, this); + if (pa_context_connect(getContext(), nullptr, PA_CONTEXT_NOFAIL, nullptr) < 0) { + if (pa_context_errno(getContext()) == PA_ERR_INVALID) { + /*w->setConnectingMessage(QObject::tr("Connection to PulseAudio failed. Automatic retry in 5s\n\n" + "In this case this is likely because PULSE_SERVER in the Environment/X11 Root Window Properties\n" + "or default-server in client.conf is misconfigured.\n" + "This situation can also arrise when PulseAudio crashed and left stale details in the X11 Root Window.\n" + "If this is the case, then PulseAudio should autospawn again, or if this is not configured you should\n" + "run start-pulseaudio-x11 manually.").toUtf8().constData());*/ + qFatal("connect pulseaudio failed") ; + } + else { +// g_timeout_add_seconds(5,connectToPulse,w); + } + } + + return false; +} + + +/* + * 根据名称获取sink input音量 + */ +int UkmediaVolumeControl::getSinkInputVolume(const gchar *name) +{ + int value = 0; + QMap>::iterator it; + QMap::iterator at; + QMap temp; + for(it = sinkInputMap.begin();it!=sinkInputMap.end();) + { + if (it.key() == name) { + temp = it.value(); + for (at=temp.begin();at!=temp.end();) { + + value = at.value(); + break; + } + } +// for (at=temp.begin();at!=temp.end();) { +// if (at.key() == index) { +// description = it.key(); +// sinkInputMap.erase(it); +// break; +// } + +// ++at; +// } + ++it; + } +// for(it = sinkInputMap.begin();it!=sinkInputMap.end();) +// { +// if(it.key() == name) +// { +// qDebug() << "getSinkInputVolume" << "name:" <::iterator it; + int value = 0; + for(it = sourceOutputMap.begin();it!=sourceOutputMap.end();) + { + if(it.key() == name) + { + qDebug() << "getSourceOutputVolume" << "name:" <(userdata); + if (eol < 0) { + if (pa_context_errno(c) == PA_ERR_NOENTITY) + return; + + w->showError(QObject::tr("Sink input callback failure").toUtf8().constData()); + return; + } + if (eol > 0) { + decOutstanding(w); + return; + } + w->sinkInputMuted = i->mute; + if (i->volume.channels >= 2) + w->sinkInputVolume = MAX(i->volume.values[0],i->volume.values[1]); + else + w->sinkInputVolume = i->volume.values[0]; + qDebug() << "sinkInputCallback" <sinkInputVolume <name; +} + +/* + * 移除指定索引的output port + */ +void UkmediaVolumeControl::removeOutputPortMap(int index) +{ + QMap>::iterator it; + for (it=outputPortMap.begin();it!=outputPortMap.end();) { + if (it.key() == index) { + qDebug() << "removeoutputport" <>::iterator it; + for (it=inputPortMap.begin();it!=inputPortMap.end();) { + if (it.key() == index) { + inputPortMap.erase(it); + break; + } + ++it; + } +} + +/* + * 移除指定索引的card + */ +void UkmediaVolumeControl::removeCardMap(int index) +{ + QMap::iterator it; + for (it=cardMap.begin();it!=cardMap.end();) { + if (it.key() == index) { + cardMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeCardProfileMap(int index) +{ + qDebug() << "removeCardProfileMap"; + QMap>::iterator it; + QMap>::iterator at; + for (it=cardProfileMap.begin();it!=cardProfileMap.end();) { + if (it.key() == index) { + cardProfileMap.erase(it); + break; + } + ++it; + } + + for (at=cardProfilePriorityMap.begin();at!=cardProfilePriorityMap.cend();) { + if (at.key() == index) { + cardProfilePriorityMap.erase(at); + break; + } + ++at; + } +} + +void UkmediaVolumeControl::removeSinkPortMap(int index) +{ + qDebug() << "removeSinkPortMap///"; + QMap>::iterator it; + for(it=sinkPortMap.begin();it!=sinkPortMap.end();){ + if(it.key() == index) { + sinkPortMap.erase(it); + break; + } + ++it; + } +} + +void UkmediaVolumeControl::removeProfileMap(int index) +{ + QMap>::iterator it; + qDebug() << "removeProfileMap" << index; + + for (it=profileNameMap.begin();it!=profileNameMap.end();) { + if(it.key() == index) + { + profileNameMap.erase(it); + break; + } + ++it; + } + +} + +bool UkmediaVolumeControl::isExitOutputPort(QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for (it=outputPortMap.begin();it!=outputPortMap.end();) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (at.value() == name) + return true; + ++at; + } + ++it; + } + return false; +} + +int UkmediaVolumeControl::findOutputPort(QString name){ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + int count = 0; + for (it=outputPortMap.begin();it!=outputPortMap.end();) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (at.key() != name) { + ++count; + } + ++at; + } + ++it; + } + return count; +} + +QString UkmediaVolumeControl::findSinkActivePortName(QString name) +{ + QString portName = ""; + QMap::iterator at; + for (at=sinkActivePortMap.begin();at!=sinkActivePortMap.end();++at) { + if (at.key() == name) { + portName = at.value(); + break; + } + } + return portName; +} + +void UkmediaVolumeControl::removeInputProfile(int index) +{ + QMap>::iterator it; + qDebug() << "removeInputProfile" << index; + + for (it=inputPortProfileNameMap.begin();it!=inputPortProfileNameMap.end();) { + if(it.key() == index){ + inputPortProfileNameMap.erase(it); + break; + } + ++it; + } +} + +bool UkmediaVolumeControl::isExitInputPort(QString name) +{ + QMap>::iterator it; + QMap::iterator at; + QMap portMap; + for (it=inputPortMap.begin();it!=inputPortMap.end();) { + portMap = it.value(); + for (at=portMap.begin();at!=portMap.end();) { + if (at.value() == name) + return true; + ++at; + } + ++it; + } + return false; +} + +void UkmediaVolumeControl::sendPortChangedSignal() +{ + QDBusMessage message = QDBusMessage::createSignal("/","org.ukui.media","sinkPortChanged"); + message<<"portChanged"; + QDBusConnection::sessionBus().send(message); +} diff --git a/ukui-volume-control-applet-qt/ukmedia_volume_control.h b/ukui-volume-control-applet-qt/ukmedia_volume_control.h new file mode 100644 index 0000000..dc0f816 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_volume_control.h @@ -0,0 +1,264 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#if HAVE_EXT_DEVICE_RESTORE_API +# include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "config.h" +#include "ukmedia_custom_sound.h" +#include + +#define PANGUW_SINK "alsa_output.platform-raoliang-sndcard.analog-stereo" + + +class PortInfo { +public: + QByteArray name; + QByteArray description; + uint32_t priority; + int available; + int direction; + int64_t latency_offset; + std::vector profiles; +}; + +class UkmediaVolumeControl : public QObject{ + Q_OBJECT +public: + UkmediaVolumeControl(); + virtual ~UkmediaVolumeControl(); + + int boolToInt(bool b); + void updateCard(UkmediaVolumeControl *c,const pa_card_info &info); + bool updateSink(UkmediaVolumeControl *c,const pa_sink_info &info); + void updateSource(const pa_source_info &info); + void updateSinkInput(const pa_sink_input_info &info); + void updateSourceOutput(const pa_source_output_info &info); + void updateClient(const pa_client_info &info); + void updateServer(const pa_server_info &info); + void updateRole(const pa_ext_stream_restore_info &info); + + void updateDeviceInfo(const pa_ext_device_restore_info &info) ; + void setSinkMute(bool status); //设置输出设备静音状态 + void setSinkVolume(int index,int value); //设置输出设备音量值 + void setSourceMute(bool status); //设置输入设备静音状态 + void setSourceVolume(int index,int value); //设置输入设备音量值 + bool getSinkMute(); //获取输出设备静音状态 + int getSinkVolume(); //获取输出设备音量值 + bool getSourceMute(); //获取输入设备静音状态 + int getSourceVolume(); //获取输入设备音量值 + bool getSinkInputMuted(QString description); + + int getDefaultSinkIndex(); + int getSinkInputVolume(const gchar *name); //根据name获取sink input的音量值 + void setSinkInputVolume(int index,int value,int channel); //设置sink input 音量值 + void setSinkInputMuted(int index,bool status); //设置sink input 静音状态 + void setSourceOutputVolume(int index, int value); + void setSourceOutputMuted(int index, bool status); + int getSourceOutputVolume(const gchar *name); //根据name获取source output的音量值 + bool setCardProfile(int index,const gchar *name); //设置声卡的配置文件 + bool setDefaultSink(const gchar *name); //设置默认的输出设备 + bool setDefaultSource(const gchar *name); //设置默认的输入设备 + bool setSinkPort(const gchar *sinkName,const gchar *name); //设置输出设备的端口 + QString stringRemoveUnrecignizedChar(QString str);//移除xml中不能识别的字符 + bool setSourcePort(const gchar *portName, const gchar *name); //设置输入设备的端口 + + + bool killSinkInput(int index); //kill 索引为index的sink input +//#if HAVE_EXT_DEVICE_RESTORE_API +//// void updateDeviceInfo(const pa_ext_device_restore_info &info); +//#endif + + void removeCard(uint32_t index); + void removeSink(uint32_t index); + void removeSource(uint32_t index); + void removeSinkInput(uint32_t index); + void removeSourceOutput(uint32_t index); + void removeClient(uint32_t index); + + void setConnectingMessage(const char *string = NULL); + + void showError(const char *txt); + static void decOutstanding(UkmediaVolumeControl *w); + static void cardCb(pa_context *, const pa_card_info *i, int eol, void *userdata); + static void sinkIndexCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); + static void sourceIndexCb(pa_context *c, const pa_source_info *i, int eol, void *userdata); + + static void sinkCb(pa_context *c, const pa_sink_info *i, int eol, void *userdata); + static void sourceCb(pa_context *, const pa_source_info *i, int eol, void *userdata); + static void sinkInputCb(pa_context *, const pa_sink_input_info *i, int eol, void *userdata); + static void sinkInputCallback(pa_context *c, const pa_sink_input_info *i, int eol, void *userdata); //不更新sink input + static void sourceOutputCb(pa_context *, const pa_source_output_info *i, int eol, void *userdata); + static void clientCb(pa_context *, const pa_client_info *i, int eol, void *userdata); + static void serverInfoCb(pa_context *, const pa_server_info *i, void *userdata); + static void serverInfoIndexCb(pa_context *, const pa_server_info *i, void *userdata); + static void extStreamRestoreReadCb(pa_context *,const pa_ext_stream_restore_info *i,int eol,void *userdata); + static void extStreamRestoreSubscribeCb(pa_context *c, void *userdata); +// void ext_device_restore_read_cb(pa_context *,const pa_ext_device_restore_info *i,int eol,void *userdata); +// static void ext_device_restore_subscribe_cb(pa_context *c, pa_device_type_t type, uint32_t idx, void *userdata); + static void extDeviceManagerReadCb(pa_context *,const pa_ext_device_manager_info *,int eol,void *userdata); + static void extDeviceManagerSubscribeCb(pa_context *c, void *userdata); + static void subscribeCb(pa_context *c, pa_subscription_event_type_t t, uint32_t index, void *userdata); + static void contextStateCallback(pa_context *c, void *userdata); + pa_context* getContext(void); + gboolean connectToPulse(gpointer userdata); + + void removeOutputPortMap(int index); //移除指定索引的output port + void removeInputPortMap(int index); //移除指定索引的input port + void removeCardMap(int index); //移除指定索引的 card + void removeCardProfileMap(int index); //移除声卡profile map + void removeSinkPortMap(int index); + void removeProfileMap(int index); + void removeInputProfile(int index); + bool isExitOutputPort(QString name); + int findOutputPort(QString name); + QString findSinkActivePortName(QString name); + bool isExitInputPort(QString name); + void sendPortChangedSignal(); + + std::vector< std::pair > profiles; + std::map ports; + + std::vector< std::pair > dPorts; + QByteArray activePort; + + QByteArray activeProfile; + QByteArray noInOutProfile; + QByteArray lastActiveProfile; + bool hasSinks; + bool hasSources; + bool firstRun = true; + pa_cvolume m_defaultSinkVolume; + + const pa_sink_info *m_pDefaultSink; + pa_context* m_pPaContext; + std::map clientNames; + SinkInputType showSinkInputType; + SinkType showSinkType; + SourceOutputType showSourceOutputType; + SourceType showSourceType; + int sinkVolume = 0; //输出音量 + int sourceVolume = 0; //输入音量 + bool sinkMuted; //输出静音状态 + bool sourceMuted; //输入静音状态 + int sinkInputVolume; //sink input 音量 + bool sinkInputMuted; //sink input 静音状态 + + int signalCount = 0; //为了防止多次发送信号的情况,当signalCount>=2时,置1 + bool updateSinkFirstEnterFlag = true; + + float balance; //平衡音量值 + int channel = 0; //通道数 + int inputChannel = 0; + int sinkInputChannel = 0; + int sourceOutputChannel = 0; + QString sourcePortName = ""; //输入设备端口名 + QString sinkPortName = ""; //输出设备端口名 + const gchar *sinkPortLabel; //输出设备端口名 + + int defaultOutputCard; + int defaultInputCard; + + pa_channel_map channelMap; + friend class UkmediaMainWidget; + + QMap sinkMap; //输出设备 + QMap sinkActivePortMap; //输出设备活跃端口 + QMap sourceMap; //输入设备 + QMap> outputPortMap; //输出端口 + QMap> inputPortMap; //输入端口 + QMap> profileNameMap; //声卡输出配置文件 + QMap>inputPortProfileNameMap; //声卡输入配置文件 + QMap> cardProfilePriorityMap; //记录声卡优先级配置文件 + QMap> cardProfileMap; + QMap cardMap; + QMap> sinkPortMap; + QMap> sourcePortMap; + QMap cardActiveProfileMap; + +Q_SIGNALS: + void paContextReady(); + void updateVolume(int value); + void updateSourceVolume(int value); + void updateMute(bool state); + void updateSourceMute(bool state); + void addSinkInputSignal(const gchar* name,const gchar *id,int index,int channel); //添加sink input 信号 + void sinkInputVolumeChangedSignal(const gchar* name,const gchar *id,int index); //sink input音量改变信号 + void removeSinkInputSignal(const gchar* name); + void addSourceOutputSignal(const gchar* name,const gchar *id,int index); + void removeSourceOutputSignal(const gchar* name); + void checkDeviceSelectionSianal(const pa_card_info *info); + void updatePortSignal(); + void deviceChangedSignal(); + void removeSinkSignal(); + void device_changed_signal(QString str); + +protected Q_SLOTS: + void timeoutSlot(); + +public: + void setConnectionState(gboolean connected); + pa_stream* createMonitorStreamForSource(uint32_t source_idx, uint32_t stream_idx, bool suspend); + + void setIconFromProplist(QLabel *icon, pa_proplist *l, const char *name); + + pa_context *context; + QByteArray defaultSinkName, defaultSourceName; + int n_outstanding = 0; + int reconnectTimeout = 0; + bool canRenameDevices; + int sinkIndex; //输出设备索引 + int sourceIndex; //输入设备索引 +// int sinkInputVolume; + pa_mainloop_api* api; + QStringList sinkInputList; + QMap> sinkInputMap; + QMap sourceOutputMap; + QMap sinkInputMuteMap; + +private: + + CustomSound *customSoundFile; + gboolean m_connected; + gchar* m_config_filename; + int firstgo = true; + int firstGoWithNoSink = true; +}; + + +#endif // UKMEDIAVOLUMECONTROL_H diff --git a/ukui-volume-control-applet-qt/ukmedia_volume_slider.cpp b/ukui-volume-control-applet-qt/ukmedia_volume_slider.cpp new file mode 100644 index 0000000..fa30655 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_volume_slider.cpp @@ -0,0 +1,423 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include + +//DisplayerMode displayMode = MINI_MODE; +//SwitchButtonState buttonState = SWITCH_BUTTON_NORMAL; +//extern double transparency; +//UkuiApplicationWidget::UkuiApplicationWidget(QWidget *parent) +//{ +//// this->setAttribute(Qt::WA_TranslucentBackground); +//// this->setStyleSheet("QWiget{background:rgba(0,0,0,0);}"); +// Q_UNUSED(parent); +//} + +//UkuiMediaSliderTipLabel::UkuiMediaSliderTipLabel(){ +// setAttribute(Qt::WA_TranslucentBackground); +//} + +//UkuiMediaSliderTipLabel::~UkuiMediaSliderTipLabel(){ +//} + +//void UkuiApplicationWidget::paintEvent(QPaintEvent *e) +//{ +// QStyleOption opt; +// opt.init(this); +// QPainter p(this); +//// double transparence = transparency * 255; +//// QColor color = palette().color(QPalette::Base); +//// color.setAlpha(transparence); +// QBrush brush = QBrush(QColor(0,0,0,0)); +// p.setBrush(brush); +//// p.setBrush(this->palette().base()); +//// p.setBrush(QBrush(QColor(19, 19, 20, 0))); +// p.setPen(Qt::NoPen); +// QPainterPath path; +// opt.rect.adjust(0,0,0,0); +// path.addRoundedRect(opt.rect,0,0); +// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; +// p.drawRoundedRect(opt.rect,0,0); +// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); + +//} + +//UkuiApplicationWidget::~UkuiApplicationWidget() +//{ + +//} + +//void UkuiMediaSliderTipLabel::paintEvent(QPaintEvent *e) +//{ +// QStyleOptionFrame opt; +// initStyleOption(&opt); +// QStylePainter p(this); +//// p.setBrush(QBrush(QColor(0x1A,0x1A,0x1A,0x4C))); +// p.setBrush(QBrush(QColor(0xFF,0xFF,0xFF,0x00))); +// p.setPen(Qt::NoPen); +// p.drawRoundedRect(this->rect(), 1, 1); +// QPainterPath path; +// path.addRoundedRect(opt.rect,6,6); +// p.setRenderHint(QPainter::Antialiasing); +// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +// p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); +// this->setProperty("blurRegion", QRegion(QRect(0, 0, 1, 1))); +// QLabel::paintEvent(e); +//} + +//UkuiMediaButton::UkuiMediaButton(QWidget *parent) +//{ +// Q_UNUSED(parent); +// this->setFixedSize(36,36); +//} + +//UkuiMediaButton::~UkuiMediaButton() +//{ + +//} + +///*! +// * \brief +// * \details +// * 绘制窗体的颜色及圆角 +// */ +////void UkuiMediaButton::paintEvent(QPaintEvent *event) +////{ +//// QStyleOptionComplex opt; +//// opt.init(this); +//// QPainter p(this); +////// double transparence = transparency * 255; +//// p.setBrush(this->palette().base()); +//// p.setPen(Qt::NoPen); +//// QPainterPath path; +//// opt.rect.adjust(0,0,0,0); +//// path.addRoundedRect(opt.rect,6,6); +//// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; +//// p.drawRoundedRect(opt.rect,6,6); +//// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +////// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +//// style()->drawComplexControl(QStyle::CC_ToolButton,&opt,&p,this); +////} + +//void UkuiMediaButton::enterEvent(QEvent *event) +//{ +// buttonState = SWITCH_BUTTON_HOVER; +//} + +//void UkuiMediaButton::leaveEvent(QEvent *event) +//{ +// buttonState = SWITCH_BUTTON_NORMAL; +//} + +//void UkuiMediaButton::mouseMoveEvent(QMouseEvent *e) +//{ +// buttonState = SWITCH_BUTTON_HOVER; +// QPushButton::mouseMoveEvent(e); +//} + +//void UkuiMediaButton::mousePressEvent(QMouseEvent *e) +//{ +// buttonState = SWITCH_BUTTON_PRESS; +// if (displayMode == MINI_MODE) { +// Q_EMIT moveMiniSwitchBtnSignale(); +// this->setFixedSize(34,34); +// QSize iconSize(14,14); +// this->setIconSize(iconSize); +// this->setIcon(QIcon("/usr/share/ukui-media/img/complete-module.svg")); +// } +// else { +// this->setFixedSize(34,34); +// QSize iconSize(14,14); +// this->setIconSize(iconSize); +// this->setIcon(QIcon("/usr/share/ukui-media/img/mini-module.svg")); +// Q_EMIT moveAdvanceSwitchBtnSignal(); +// } +// QPushButton::mousePressEvent(e); +//} + +//void UkuiMediaButton::mouseReleaseEvent(QMouseEvent *e) +//{ +// buttonState = SWITCH_BUTTON_NORMAL; +// if (displayMode == MINI_MODE) { +// Q_EMIT miniToAdvanceSignal(); +// this->setFixedSize(36,36); +// QSize iconSize(16,16); +// this->setIconSize(iconSize); +// this->setIcon(QIcon("/usr/share/ukui-media/img/complete-module.svg")); +// } +// else { +// Q_EMIT advanceToMiniSignal(); +// this->setFixedSize(36,36); +// QSize iconSize(16,16); +// this->setIconSize(iconSize); +// qDebug() << "设置图标2"; +// this->setIcon(QIcon("/usr/share/ukui-media/img/mini-module.svg")); +// } +// QPushButton::mouseReleaseEvent(e); +//} + +//UkmediaVolumeSlider::UkmediaVolumeSlider(QWidget *parent,bool needTip) +//{ +// Q_UNUSED(parent); +// if (needTip) { +// state = needTip; +// m_pTiplabel = new UkuiMediaSliderTipLabel(); +// m_pTiplabel->setWindowFlags(Qt::ToolTip); +// // qApp->installEventFilter(new AppEventFilter(this)); +// m_pTiplabel->setFixedSize(52,30); +// m_pTiplabel->setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); +// } +//} + +//void UkmediaVolumeSlider::mousePressEvent(QMouseEvent *ev) +//{ +// mousePress = true; +// Q_EMIT silderPressSignal(); +// if (state) { +// m_pTiplabel->show(); +// } +// //注意应先调用父类的鼠标点击处理事件,这样可以不影响拖动的情况 +// QSlider::mousePressEvent(ev); +// //获取鼠标的位置,这里并不能直接从ev中取值(因为如果是拖动的话,鼠标开始点击的位置没有意义了) +// double pos = ev->pos().x() / (double)width(); +// setValue(pos *(maximum() - minimum()) + minimum()); +// //向父窗口发送自定义事件event type,这样就可以在父窗口中捕获这个事件进行处理 +// QEvent evEvent(static_cast(QEvent::User + 1)); +// QCoreApplication::sendEvent(parentWidget(), &evEvent); +// QSlider::mousePressEvent(ev); +//} + +//void UkmediaVolumeSlider::mouseReleaseEvent(QMouseEvent *e) +//{ +// if(mousePress){ +// Q_EMIT silderReleaseSignal(); +// } +// mousePress = false; +// QSlider::mouseReleaseEvent(e); + +//} + +//void UkmediaVolumeSlider::initStyleOption(QStyleOptionSlider *option) +//{ +// QSlider::initStyleOption(option); +//} + +//void UkmediaVolumeSlider::leaveEvent(QEvent *e) +//{ +// if (state) { +// m_pTiplabel->hide(); +// } +//} + +//void UkmediaVolumeSlider::enterEvent(QEvent *e) +//{ +// if (state) { +// m_pTiplabel->show(); +// } +//} + +//void UkmediaVolumeSlider::paintEvent(QPaintEvent *e) +//{ +// QRect rect; +// QStyleOptionSlider m_option; +// QSlider::paintEvent(e); +// if (state) { + +// this->initStyleOption(&m_option); +// rect = this->style()->subControlRect(QStyle::CC_Slider, &m_option,QStyle::SC_SliderHandle,this); +// QPoint gPos = this->mapToGlobal(rect.topLeft()); +// QString percent; +// percent = QString::number(this->value()); +// percent.append("%"); +// m_pTiplabel->setText(percent); +// m_pTiplabel->move(gPos.x()-(m_pTiplabel->width()/2)+9,gPos.y()-m_pTiplabel->height()-1); +// } + + +//} + +//UkmediaVolumeSlider::~UkmediaVolumeSlider() +//{ +// delete m_pTiplabel; +//} + +//void UkuiButtonDrawSvg::init(QImage img, QColor color) +//{ +// themeIcon.image = img; +// themeIcon.color = color; +//} + +//void UkuiButtonDrawSvg::paintEvent(QPaintEvent *event) +//{ +// QStyleOption opt; +// opt.init(this); +// QPainter p(this); +// p.setBrush(QBrush(QColor(0x13,0x13,0x14,0x00))); +// p.setPen(Qt::NoPen); +// QPainterPath path; +// opt.rect.adjust(0,0,0,0); +// path.addRoundedRect(opt.rect,6,6); +// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; +// p.drawRoundedRect(opt.rect,6,6); +// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +//} + +//QRect UkuiButtonDrawSvg::IconGeometry() +//{ +// QRect res = QRect(QPoint(0,0),QSize(24,24)); +// res.moveCenter(QRect(0,0,width(),height()).center()); +// return res; +//} + +//void UkuiButtonDrawSvg::draw(QPaintEvent* e) +//{ +// Q_UNUSED(e); +// QPainter painter(this); +// QRect iconRect = IconGeometry(); +// if (themeIcon.image.size() != iconRect.size()) +// { +// themeIcon.image = themeIcon.image.scaled(iconRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); +// QRect r = themeIcon.image.rect(); +// r.moveCenter(iconRect.center()); +// iconRect = r; +// } + +// this->setProperty("fillIconSymbolicColor", true); +// filledSymbolicColoredPixmap(themeIcon.image,themeIcon.color); +// painter.drawImage(iconRect, themeIcon.image); +//} + +//bool UkuiButtonDrawSvg::event(QEvent *event) +//{ +// switch (event->type()) +// { +// case QEvent::Paint: +// draw(static_cast(event)); +// break; + +// case QEvent::Move: +// case QEvent::Resize: +// { +// QRect rect = IconGeometry(); +// } +// break; + +// case QEvent::MouseButtonPress: +// case QEvent::MouseButtonRelease: +// case QEvent::MouseButtonDblClick: +// event->accept(); +// break; + +// default: +// break; +// } + +// return QPushButton::event(event); +//} + + +//UkuiButtonDrawSvg::UkuiButtonDrawSvg(QWidget *parent) +//{ +// Q_UNUSED(parent); +//} +//UkuiButtonDrawSvg::~UkuiButtonDrawSvg() +//{ + +//} + +//QPixmap UkuiButtonDrawSvg::filledSymbolicColoredPixmap(QImage &img, QColor &baseColor) +//{ + +// for (int x = 0; x < img.width(); x++) { +// for (int y = 0; y < img.height(); y++) { +// auto color = img.pixelColor(x, y); +// if (color.alpha() > 0) { +// int hue = color.hue(); +// if (!qAbs(hue - symbolic_color.hue()) < 10) { +// color.setRed(baseColor.red()); +// color.setGreen(baseColor.green()); +// color.setBlue(baseColor.blue()); +// img.setPixelColor(x, y, color); +// } +// } +// } +// } + +// return QPixmap::fromImage(img); +//} + +//UkuiScrollArea::UkuiScrollArea(QWidget *parent){ +//} + +//UkuiScrollArea::~UkuiScrollArea(){ +//} + +//void UkuiScrollArea::paintEvent(QPaintEvent *event) +//{ +// QStyleOption opt; +// opt.init(this); +// QPainter p(this); +// p.setBrush(this->palette().base()); +// p.setPen(Qt::NoPen); +// QPainterPath path; +// opt.rect.adjust(0,0,0,0); +// path.addRoundedRect(opt.rect,6,6); +// p.setRenderHint(QPainter::Antialiasing); // 反锯齿; +// p.drawRoundedRect(opt.rect,6,6); +// setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); +// style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); +//// QWidget::paintEvent(event); +//} + +//UkuiQMenu::UkuiQMenu(){ +//} + +//bool UkuiQMenu::event(QEvent *e) +//{ +// qDebug() << "事件类型" << e->type() << "show"; +// if (e->type() == QEvent::ContextMenu) { +// this->show(); +// } +// else if (e->type() == QEvent::WinIdChange) { +// qDebug() << "winid changed"; +// } +// else if(e->type() == QEvent::MouseButtonRelease) { +//// this->hide(); +// qDebug() << "事件类型" << e->type(); +// } +// return QMenu::event(e); +//} + +//void UkuiQMenu::hideEvent(QHideEvent *e) +//{ +// this->activateWindow(); +// this->setAttribute(Qt::WA_NoMouseReplay); +// qDebug() << "菜单隐藏" << e->type(); +//} + +//UkuiQMenu::~UkuiQMenu(){ +//} diff --git a/ukui-volume-control-applet-qt/ukmedia_volume_slider.h b/ukui-volume-control-applet-qt/ukmedia_volume_slider.h new file mode 100644 index 0000000..ed1ad0b --- /dev/null +++ b/ukui-volume-control-applet-qt/ukmedia_volume_slider.h @@ -0,0 +1,186 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//typedef struct UkuiThemeIcon +//{ +// QImage image; +// QColor color; +//}UkuiThemeIcon; +//enum DisplayerMode{ +// MINI_MODE, +// ADVANCED_MODE +//}; +//enum SwitchButtonState{ +// SWITCH_BUTTON_NORMAL, +// SWITCH_BUTTON_HOVER, +// SWITCH_BUTTON_PRESS +//}; +//static QColor symbolic_color = Qt::gray; + +//class UkuiMediaSliderTipLabel:public QLabel +//{ +// public: +// UkuiMediaSliderTipLabel(); +// ~UkuiMediaSliderTipLabel(); +//protected: +// void paintEvent(QPaintEvent*); +//}; + +//class UkuiButtonDrawSvg:public QPushButton +//{ +// Q_OBJECT +//public: +// UkuiButtonDrawSvg(QWidget *parent = nullptr); +// ~UkuiButtonDrawSvg(); +// QPixmap filledSymbolicColoredPixmap(QImage &source, QColor &baseColor); +// QRect IconGeometry(); +// void draw(QPaintEvent* e); +// void init(QImage image ,QColor color); +// friend class DeviceSwitchWidget; +// friend class UkmediaOsdDisplayWidget; + +//protected: +// void paintEvent(QPaintEvent *event); +// bool event(QEvent *e); +//private: +// UkuiThemeIcon themeIcon; +//}; + +//class UkuiApplicationWidget:public QWidget +//{ +// Q_OBJECT +//public: +// UkuiApplicationWidget(QWidget *parent = nullptr); +// ~UkuiApplicationWidget(); +//protected: +// void paintEvent(QPaintEvent*); +//}; + +//class UkuiMediaButton:public QPushButton +//{ +// Q_OBJECT +//public: +// UkuiMediaButton(QWidget *parent = nullptr); +// ~UkuiMediaButton(); +// friend class UkmediaMiniMasterVolumeWidget; + +//Q_SIGNALS: +// void advanceToMiniSignal(); +// void miniToAdvanceSignal(); +// void moveMiniSwitchBtnSignale(); +// void moveAdvanceSwitchBtnSignal(); +//protected: +// void mousePressEvent(QMouseEvent *e)override; +// void mouseMoveEvent(QMouseEvent *e)override; +// void mouseReleaseEvent(QMouseEvent *e)override; +//// void paintEvent(QPaintEvent *event); +// void enterEvent(QEvent *event); +// void leaveEvent(QEvent *event); +//private: +//}; + +//class UkmediaVolumeSlider : public QSlider +//{ +// Q_OBJECT +//public: +//// UkmediaVolumeSlider(QWidget *parent = nullptr); +// UkmediaVolumeSlider(QWidget *parent = nullptr,bool needTip = false); +// void initStyleOption(QStyleOptionSlider *option); +// ~UkmediaVolumeSlider(); +//Q_SIGNALS: +// void silderPressSignal(); +// void silderReleaseSignal(); +//private: +// UkuiMediaSliderTipLabel *m_pTiplabel; +// bool state = false; +// bool mousePress = false; + + +//protected: +// void mousePressEvent(QMouseEvent *ev); +// void mouseReleaseEvent(QMouseEvent *e); +// void mouseMoveEvent(QMouseEvent *e) +// { +// int value = 0; +// int currentX = e->pos().x(); +// double per = currentX * 1.0 / this->width(); +// if ((this->maximum() - this->minimum()) >= 50) { //减小鼠标点击像素的影响 +// value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); +// if (value <= (this->maximum() / 2 - this->maximum() / 10 + this->minimum() / 10)) { +// value = qRound(per*(this->maximum() - this->minimum() - 1)) + this->minimum(); +// } else if (value > (this->maximum() / 2 + this->maximum() / 10 + this->minimum() / 10)) { +// value = qRound(per*(this->maximum() - this->minimum() + 1)) + this->minimum(); +// } else { +// value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); +// } +// } else { +// value = qRound(per*(this->maximum() - this->minimum())) + this->minimum(); +// } +// this->setValue(value); +// QSlider::mousePressEvent(e); +//// setCursor(QCursor(Qt::OpenHandCursor)); +//// m_displayLabel->move((this->width()-m_displayLabel->width())*this->value()/(this->maximum()-this->minimum()),3); +//// QSlider::mouseMoveEvent(e); +// } +// void leaveEvent(QEvent *e); + +// void enterEvent(QEvent *e); +// void paintEvent(QPaintEvent *e); +//}; + +//class UkuiScrollArea : public QScrollArea +//{ +// Q_OBJECT +//public: +// UkuiScrollArea(QWidget *parent = nullptr); +// ~UkuiScrollArea(); + +//protected: +// void paintEvent(QPaintEvent *e); + +//}; + +//class UkuiQMenu:public QMenu +//{ +// Q_OBJECT +//public: +// UkuiQMenu(); +// ~UkuiQMenu(); +//protected: +// void hideEvent(QHideEvent *e); +// virtual bool event(QEvent *e) override; + + +//}; + +#endif // UKMEDIAVOLUMESLIDER_H diff --git a/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro b/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro new file mode 100644 index 0000000..a2af743 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukui-volume-control-applet-qt.pro @@ -0,0 +1,98 @@ +###################################################################### +# Automatically generated by qmake (3.1) Fri Oct 11 17:35:00 2019 +###################################################################### + +QT += core gui dbus KWindowSystem xml + +greaterThan(QT_MAJOR_VERSION, 4): QT += widgets + +TEMPLATE = app +TARGET = ukui-volume-control-applet-qt +INCLUDEPATH += . +QMAKE_CXXFLAGS += -std=c++11 + +include(QtSingleApplication/qtsingleapplication.pri) +include(xatom/xatom.pri) + +DEFINES += QT_DEPRECATED_WARNINGS + +# You can also make your code fail to compile if you use deprecated APIs. +# In order to do so, uncomment the following line. +# You can also select to disable deprecated APIs only up to a certain version of Qt. +#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 + +# Default rules for deployment. +target.path = /usr/bin + +CONFIG += \ + c++11 \ + no_keywords link_pkgconfig debug\ + +PKGCONFIG += \ + glib-2.0 \ + gsettings-qt \ + Qt5Svg \ + gio-2.0 \ + Qt5Multimedia \ + dconf \ + x11 \ + libcanberra \ + libpulse \ + libpulse-mainloop-glib \ + alsa \ + Qt5X11Extras +# libwnck-1.0 + +LIBS += -lukui-log4qt + +HEADERS += \ + config.h \ + customstyle.h \ + ukmedia_custom_class.h \ + ukmedia_custom_sound.h \ + ukmedia_main_widget.h \ + ukmedia_application_volume_widget.h \ + ukmedia_monitor_window_thread.h \ + ukmedia_osd_display_widget.h \ + ukmedia_slider_tip_label_helper.h \ + ukmedia_system_volume_widget.h \ + ukmedia_volume_control.h \ + ukui_list_widget_item.h \ + ukui_media_set_headset_widget.h + +SOURCES += \ + customstyle.cpp \ + main.cpp \ + ukmedia_custom_class.cpp \ + ukmedia_custom_sound.cpp \ + ukmedia_application_volume_widget.cpp \ + ukmedia_main_widget.cpp \ + ukmedia_monitor_window_thread.cpp \ + ukmedia_osd_display_widget.cpp \ + ukmedia_slider_tip_label_helper.cpp \ + ukmedia_system_volume_widget.cpp \ + ukmedia_volume_control.cpp \ + ukui_list_widget_item.cpp \ + ukui_media_set_headset_widget.cpp + +RESOURCES += \ + res.qrc + +TRANSLATIONS += \ + translations/zh_CN.ts \ + translations/tr.ts \ + translations/bo.ts + +system("lrelease translations/*.ts") + +qm_file.files = translations/*.qm +qm_file.path = $${PREFIX}/translations/ + +data_files.files = data/* +data_files.path = $${PREFIX}/ + +INSTALLS += \ + target qm_file data_files + +#DISTFILES += \ +# xatom/xatom.pri diff --git a/ukui-volume-control-applet-qt/ukui_list_widget_item.cpp b/ukui-volume-control-applet-qt/ukui_list_widget_item.cpp new file mode 100644 index 0000000..e2c0f8a --- /dev/null +++ b/ukui-volume-control-applet-qt/ukui_list_widget_item.cpp @@ -0,0 +1,145 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +//#include +#include +#include +#include +bool isCheckBluetoothInput; + +UkuiListWidgetItem::UkuiListWidgetItem(QWidget *parent) : + QWidget(parent) +{ + this->setFixedSize(388,48); + QHBoxLayout *hLayout = new QHBoxLayout; + + deviceButton = new UkuiMediaButton(this); + portLabel = new FixLabel(this); + deviceLabel = new QLabel(this); + + deviceButton->setFixedSize(36,36); + portLabel->setFixedSize(310,24); + deviceLabel->setFixedSize(306,24); + deviceLabel->hide(); + hLayout->addWidget(deviceButton); + hLayout->addSpacing(10); + hLayout->addWidget(portLabel); + hLayout->setSpacing(0); + + this->setLayout(hLayout); + hLayout->setContentsMargins(16,6,16,6); + + this->show(); +} + +UkuiListWidgetItem::~UkuiListWidgetItem() +{ +} + +void UkuiListWidgetItem::paintEvent(QPaintEvent *event) +{ + QStyleOption opt; + opt.init(this); + QPainter p(this); + QColor color ; + switch (state) { + case WIDGET_NORMAL_STATE: + color = QColor(0xF0,0xF0,0xF0,0x00); + break; + case WIDGET_HOVER_STATE: + color = QColor(200,200,200,50); + break; + } + +// color.setAlpha(transparence); + QBrush brush = QBrush(color); + p.setBrush(brush); + p.setPen(Qt::NoPen); + QPainterPath path; + opt.rect.adjust(0,0,0,0); + path.addRoundedRect(opt.rect,6,6); + p.setRenderHint(QPainter::Antialiasing); // 反锯齿; + p.drawRoundedRect(opt.rect,6,6); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); + QWidget::paintEvent(event); +} + + +void UkuiListWidgetItem::setSelected(bool selected){ + +} + +void UkuiListWidgetItem::leaveEvent(QEvent *e) +{ + state = WIDGET_NORMAL_STATE; + this->update(); + QWidget::leaveEvent(e); +} +void UkuiListWidgetItem::mouseReleaseEvent(QMouseEvent *e) +{ +// state = WIDGET_NORMAL_STATE; + QWidget::mouseReleaseEvent(e); +} +void UkuiListWidgetItem::enterEvent(QEvent *e) +{ + state = WIDGET_HOVER_STATE; + this->update(); + QWidget::enterEvent(e); +} + +void UkuiListWidgetItem::setButtonIcon(QString str) +{ + QString iconStr; + if (str.contains("headphone") || str.contains("Headphone") || str.contains("headset")) { + iconStr = "audio-headphones-symbolic"; + } + else { + iconStr = "audio-volume-high-symbolic"; + } + deviceButton->setButtonIcon(QIcon::fromTheme(iconStr)); + deviceButton->setProperty("useIconHighlightEffect", 0x8); +} + +void UkuiListWidgetItem::setLabelText(QString portLabel, QString deviceLabel){ + + this->portLabel->setText(portLabel,true); + this->deviceLabel->setText(deviceLabel); +} + +void UkuiListWidgetItem::mousePressEvent(QMouseEvent *event) +{ + + QWidget::mousePressEvent(event); + qDebug() << "Mouse Press Event" << this->portLabel->fullText << this->deviceLabel->text(); + //蓝牙输入去除勾选 + if (this->deviceLabel->text().contains("bluez_card")) { + if (isCheckBluetoothInput == false) + isCheckBluetoothInput = true; + else { + isCheckBluetoothInput = false; + QString cmd = "pactl set-card-profile "+this->deviceLabel->text()+" a2dp_sink"; + system(cmd.toLocal8Bit().data()); + } + } +} diff --git a/ukui-volume-control-applet-qt/ukui_list_widget_item.h b/ukui-volume-control-applet-qt/ukui_list_widget_item.h new file mode 100644 index 0000000..2176843 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukui_list_widget_item.h @@ -0,0 +1,64 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include "ukmedia_custom_class.h" + +enum WidgetState{ + WIDGET_NORMAL_STATE, + WIDGET_HOVER_STATE +}; + +class UkuiListWidgetItem : public QWidget +{ + Q_OBJECT + +public: + UkuiListWidgetItem(QWidget *parent = 0); + ~UkuiListWidgetItem(); + +public: + void setLabelText(QString portText,QString deviceLabel); +// void setLabelTextIsWhite(bool selected); + void setSelected(bool selected); + void setButtonIcon(QString str); + FixLabel *portLabel; + QLabel *deviceLabel; + UkuiMediaButton *deviceButton; + +protected: + void mousePressEvent(QMouseEvent *ev); + void mouseReleaseEvent(QMouseEvent *e)override; + void paintEvent(QPaintEvent *event); + void enterEvent(QEvent *e); + void leaveEvent(QEvent *e); + +private: + QWidget * widget; + int state = WIDGET_NORMAL_STATE; +}; + +#endif // UKUILISTWIDGETITEM_H diff --git a/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.cpp b/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.cpp new file mode 100644 index 0000000..a8e75c4 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.cpp @@ -0,0 +1,490 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include + +extern double transparency; +UkuiMediaSetHeadsetWidget::UkuiMediaSetHeadsetWidget(QWidget *parent) : QWidget (parent) +{ + headphoneIconButton = new QToolButton(); + headsetIconButton = new QToolButton(); + microphoneIconButton = new QToolButton(); + soundSettingButton = new QPushButton(tr("Sound Settings")); + cancelButton = new QPushButton(tr("Cancel")); + selectSoundDeviceLabel = new QLabel(tr("Select Sound Device")); + + initSetHeadsetWidget(); + + headphoneIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + connect(headphoneIconButton,SIGNAL(clicked()),this,SLOT(headphoneButtonClickedSlot())); + connect(headsetIconButton,SIGNAL(clicked()),this,SLOT(headsetButtonClickedSlot())); + connect(microphoneIconButton,SIGNAL(clicked()),this,SLOT(microphoneButtonClickedSlot())); + connect(soundSettingButton,SIGNAL(clicked()),this,SLOT(soundSettingButtonClickedSlot())); + connect(cancelButton,SIGNAL(clicked()),this,SLOT(cancelButtonClickedSlot())); + this->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::FramelessWindowHint | Qt::ToolTip); +} + +void UkuiMediaSetHeadsetWidget::initSetHeadsetWidget() +{ + this->setFixedSize(402,252); + headphoneIconButton->setFixedSize(96,96); + headsetIconButton->setFixedSize(96,96); + microphoneIconButton->setFixedSize(96,96); + headphoneIconButton->setIconSize(QSize(32,32)); + headsetIconButton->setIconSize(QSize(32,32)); + microphoneIconButton->setIconSize(QSize(32,32)); + selectSoundDeviceLabel->setFixedSize(402,24); + soundSettingButton->setFixedSize(120,36); + cancelButton->setFixedSize(107,36); + + soundSettingButton->setContextMenuPolicy(Qt::DefaultContextMenu); + + headphoneIconButton->setText(tr("Headphone")); + headsetIconButton->setText(tr("Headset")); + microphoneIconButton->setText(tr("Microphone")); + + headphoneIconButton->setIcon(QIcon::fromTheme("headphones-symbolic")); + headsetIconButton->setIcon(QIcon::fromTheme("audio-headset-symbolic")); + microphoneIconButton->setIcon(QIcon::fromTheme("audio-input-microphone")); + + headphoneIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + headsetIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + microphoneIconButton->setToolButtonStyle(Qt::ToolButtonTextUnderIcon); + selectSoundDeviceLabel->setAlignment(Qt::AlignCenter); + + QWidget *labelWidget = new QWidget; + labelWidget->setFixedSize(402,24); + QVBoxLayout *labelLayout = new QVBoxLayout; + labelLayout->addWidget(selectSoundDeviceLabel); + labelLayout->setContentsMargins(0,0,0,0); + labelWidget->setLayout(labelLayout); + + QWidget *headsetButtonWidget = new QWidget(); + headsetButtonWidget->setFixedSize(402,96); + QHBoxLayout *headsetButtonLayout = new QHBoxLayout; + headsetButtonLayout->addWidget(headphoneIconButton); + headsetButtonLayout->addWidget(headsetIconButton); + headsetButtonLayout->addWidget(microphoneIconButton); + headsetButtonLayout->setSpacing(24); + headsetButtonLayout->setContentsMargins(32,0,32,0); + headsetButtonWidget->setLayout(headsetButtonLayout); + + QWidget *buttonWidget = new QWidget; + buttonWidget->setFixedSize(402,36); +// buttonWidget->setStyleSheet("QWidget{background-color:rgb(255,0,0);}"); + QHBoxLayout *buttonLayout = new QHBoxLayout(); + buttonLayout->addWidget(soundSettingButton); + buttonLayout->addWidget(cancelButton); + buttonLayout->setSpacing(108); + buttonLayout->setContentsMargins(32,0,32,0); + buttonWidget->setLayout(buttonLayout); + + QVBoxLayout *mainLayout = new QVBoxLayout; + mainLayout->addWidget(labelWidget); + mainLayout->addWidget(headsetButtonWidget); + mainLayout->addWidget(buttonWidget); + this->setLayout(mainLayout); + this->setProperty("useSystemStyleBlur",true); + this->setWindowTitle("whole window blur"); + this->setAttribute(Qt::WA_TranslucentBackground); + this->setContentsMargins(0,16,0,16); +} + +void UkuiMediaSetHeadsetWidget::paintEvent(QPaintEvent *event) +{ + QStyleOption opt; + opt.init(this); + QPainter p(this); +// double transparence = transparency * 255; + QColor color = palette().color(QPalette::Base); +// color.setAlpha(transparence); + QBrush brush = QBrush(color); + p.setBrush(brush); + p.setPen(Qt::NoPen); + QPainterPath path; + opt.rect.adjust(0,0,0,0); + path.addRoundedRect(opt.rect,12,12); + p.setRenderHint(QPainter::Antialiasing); // 反锯齿; + p.drawRoundedRect(opt.rect,12,12); + setProperty("blurRegion",QRegion(path.toFillPolygon().toPolygon())); + style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); + QWidget::paintEvent(event); +} + +/* + * set input and output port. + * input: intel mic + * output: headphone +*/ +void UkuiMediaSetHeadsetWidget::headphoneButtonClickedSlot() +{ + isShow = false; +// cset("name=Capture Source", HW_CARD, "2", 0, 0); + QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "headsetJack"); + message<<"headphone"; + QDBusConnection::sessionBus().send(message); + this->hide(); +} + +/* + * set input and output port. + * input: headsed mic + * output: headphone + */ +void UkuiMediaSetHeadsetWidget::headsetButtonClickedSlot() +{ + isShow = false; +// cset("name=Capture Source", HW_CARD, "0", 0, 0); + QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "headsetJack"); + message<<"headset"; + QDBusConnection::sessionBus().send(message); + this->hide(); +} + +/* + * set input and output port. + * input: headphone mic + * output: speaker +*/ +void UkuiMediaSetHeadsetWidget::microphoneButtonClickedSlot() +{ + isShow = false; +// int ret = cset("name=Capture Source", HW_CARD, "1", 0, 0); + QDBusMessage message =QDBusMessage::createSignal("/", "org.ukui.media", "headsetJack"); + message<<"headphone mic" ; +// if (ret < 0) +// cset("name=Input Source", HW_CARD, "1", 0, 0); + QDBusConnection::sessionBus().send(message); + this->hide(); +} + +/* + * Jump to the control panel +*/ +void UkuiMediaSetHeadsetWidget::soundSettingButtonClickedSlot() +{ + QProcess *process; + QStringList args; + args.append("module Audio"); + QString command = "ukui-control-center"; + process = new QProcess(); + process->setProcessChannelMode(QProcess::MergedChannels); + process->start(command, args); + + if (!process->waitForStarted()) { + qDebug() << "start failed:" << process->errorString(); + } else { + qDebug() << "start success:"; + } + this->hide(); + isShow = false; +} + +/* + * Cancel settings +*/ +void UkuiMediaSetHeadsetWidget::cancelButtonClickedSlot() +{ + this->hide(); + isShow = false; +} + +int UkuiMediaSetHeadsetWidget::cset(char * name, char *card, char *c, int roflag, int keep_handle) +{ + int err; + static snd_ctl_t *handle = NULL; + snd_ctl_elem_info_t *info; + snd_ctl_elem_id_t *id; + snd_ctl_elem_value_t *control; + snd_ctl_elem_info_alloca(&info); + snd_ctl_elem_id_alloca(&id); + snd_ctl_elem_value_alloca(&control); + + printf("name[%s]card[%s]c[%s]", name, card, c); + if (snd_ctl_ascii_elem_id_parse(id, name)) { + printf("Wrong control identifier: %\n", name); + return -1; + } + + if (handle == NULL && + (err = snd_ctl_open(&handle, card, 0)) < 0) { + printf("Control %s open error: %s", card, snd_strerror(err)); + return err; + } + + snd_ctl_elem_info_set_id(info, id); + + if ((err = snd_ctl_elem_info(handle, info)) < 0) { + //if (ignore_error) + //return 0; + printf("Cannot find the given element from control %s", card); + if (! keep_handle) { + snd_ctl_close(handle); + handle = NULL; + } + return err; + } + + snd_ctl_elem_info_get_id(info, id); + if (!roflag) { + snd_ctl_elem_value_set_id(control, id); + + if ((err = snd_ctl_elem_read(handle, control)) < 0) { + //if (ignore_error) + //return 0; + printf("Cannot read the given element from control %s", card); + if (! keep_handle) { + snd_ctl_close(handle); + handle = NULL; + } + return err; + } + err = snd_ctl_ascii_value_parse(handle, control, info, c); + if (err < 0) { + //if (!ignore_error) + //error("Control %s parse error: %s\n", card, snd_strerror(err)); + if (!keep_handle) { + snd_ctl_close(handle); + handle = NULL; + } + //return ignore_error ? 0 : err; + return err; + } + + if ((err = snd_ctl_elem_write(handle, control)) < 0) { + //if (!ignore_error) + //error("Control %s element write error: %s\n", card, snd_strerror(err)); + if (!keep_handle) { + snd_ctl_close(handle); + handle = NULL; + } + //return ignore_error ? 0 : err; + return err; + } + } + if (! keep_handle) { + snd_ctl_close(handle); + handle = NULL; + } + + snd_hctl_t *hctl; + snd_hctl_elem_t *elem; + if ((err = snd_hctl_open(&hctl, card, 0)) < 0) { + printf("Control %s open error: %s", card, snd_strerror(err)); + return err; + } + + if ((err = snd_hctl_load(hctl)) < 0) { + printf("Control %s load error: %s", card, snd_strerror(err)); + return err; + } + + elem = snd_hctl_find_elem(hctl, id); + if (elem) + showControl(" ", elem, LEVEL_BASIC | LEVEL_ID); + else + printf("Could not find the specified element"); + snd_hctl_close(hctl); + + return 0; +} + +void UkuiMediaSetHeadsetWidget::showControlId(snd_ctl_elem_id_t *id) +{ + char *str; + + str = snd_ctl_ascii_elem_id_get(id); + if (str) + printf("%s", str); + free(str); +} + +int UkuiMediaSetHeadsetWidget::showControl(const char *space, snd_hctl_elem_t *elem, + int level) +{ + int err; + unsigned int item, idx, count, *tlv; + snd_ctl_elem_type_t type; + snd_ctl_elem_id_t *id; + snd_ctl_elem_info_t *info; + snd_ctl_elem_value_t *control; + snd_aes_iec958_t iec958; + snd_ctl_elem_id_alloca(&id); + snd_ctl_elem_info_alloca(&info); + snd_ctl_elem_value_alloca(&control); + if ((err = snd_hctl_elem_info(elem, info)) < 0) { + printf("Control hw snd_hctl_elem_info error: %s\n", snd_strerror(err)); + return err; + } + if (level & LEVEL_ID) { + snd_hctl_elem_get_id(elem, id); + showControlId(id); + printf("\n"); + } + count = snd_ctl_elem_info_get_count(info); + type = snd_ctl_elem_info_get_type(info); + + switch (type) { + case SND_CTL_ELEM_TYPE_INTEGER: + printf(",min=%li,max=%li,step=%li \n", + snd_ctl_elem_info_get_min(info), + snd_ctl_elem_info_get_max(info), + snd_ctl_elem_info_get_step(info)); + break; + case SND_CTL_ELEM_TYPE_INTEGER64: + printf(",min=%lli,max=%lli,step=%lli \n", + snd_ctl_elem_info_get_min64(info), + snd_ctl_elem_info_get_max64(info), + snd_ctl_elem_info_get_step64(info)); + break; + case SND_CTL_ELEM_TYPE_ENUMERATED: + { + unsigned int items = snd_ctl_elem_info_get_items(info); + printf(",items=%u\n", items); + for (item = 0; item < items; item++) { + snd_ctl_elem_info_set_item(info, item); + if ((err = snd_hctl_elem_info(elem, info)) < 0) { + printf("Control hw element info error: %s\n", snd_strerror(err)); + return err; + } + printf("%s; Item #%u '%s' \n", space, item, snd_ctl_elem_info_get_item_name(info)); + } + break; + } + default: + printf("\n"); + break; + } + + if (level & LEVEL_BASIC) { + if (!snd_ctl_elem_info_is_readable(info)) + goto __skip_read; + if ((err = snd_hctl_elem_read(elem, control)) < 0) { + printf("Control hw:0 element read error: %s\n", snd_strerror(err)); + return err; + } + + for (idx = 0; idx < count; idx++) { + if (idx > 0) + printf(",\n"); + switch (type) { + case SND_CTL_ELEM_TYPE_BOOLEAN: + printf("%s \n", snd_ctl_elem_value_get_boolean(control, idx) ? "on" : "off"); + break; + case SND_CTL_ELEM_TYPE_INTEGER: + printf("%li \n", snd_ctl_elem_value_get_integer(control, idx)); + break; + case SND_CTL_ELEM_TYPE_INTEGER64: + printf("%lli \n", snd_ctl_elem_value_get_integer64(control, idx)); + break; + case SND_CTL_ELEM_TYPE_ENUMERATED: + printf("%u \n", snd_ctl_elem_value_get_enumerated(control, idx)); + break; + case SND_CTL_ELEM_TYPE_BYTES: + printf("0x%02x \n", snd_ctl_elem_value_get_byte(control, idx)); + break; + case SND_CTL_ELEM_TYPE_IEC958: + snd_ctl_elem_value_get_iec958(control, &iec958); + printf("[AES0=0x%02x AES1=0x%02x AES2=0x%02x AES3=0x%02x] \n", + iec958.status[0], iec958.status[1], + iec958.status[2], iec958.status[3]); + break; + default: + printf("? \n"); + break; + } + } +__skip_read: + if (!snd_ctl_elem_info_is_tlv_readable(info)) + goto __skip_tlv; + /* skip ASoC ext bytes controls that may have huge binary TLV data */ + if (type == SND_CTL_ELEM_TYPE_BYTES && + !snd_ctl_elem_info_is_readable(info) && + !snd_ctl_elem_info_is_writable(info)) { + printf("%s; ASoC TLV Byte control, skipping bytes dump \n", space); + goto __skip_tlv; + } + + tlv = (unsigned int *)malloc(4096); + if ((err = snd_hctl_elem_tlv_read(elem, tlv, 4096)) < 0) { + printf("Control hw:0 element TLV read error: %s \n", snd_strerror(err)); + free(tlv); + return err; + } + //decode_tlv(strlen(space), tlv, 4096); + free(tlv); + } +__skip_tlv: + return 0; +} + +void UkuiMediaSetHeadsetWidget::showWindow() +{ + #define MARGIN 4 + QDBusInterface iface("org.ukui.panel", + "/panel/position", + "org.ukui.panel", + QDBusConnection::sessionBus()); + QDBusReply reply=iface.call("GetPrimaryScreenGeometry"); + QVariantList position_list=reply.value(); + /* + * 通过这个dbus接口获取到的6个参数分别为 :可用屏幕大小的x坐标、y坐标、宽度、高度,任务栏位置 + */ + this->setGeometry((position_list.at(0).toInt()+position_list.at(2).toInt()-this->width())/2, + (position_list.at(1).toInt()+reply.value().at(3).toInt()-this->height())/2, + this->width(),this->height()); + isShow = true; + this->show(); +} + +UkuiMediaSetHeadsetWidget::~UkuiMediaSetHeadsetWidget() +{ + +} + +UkmediaHeadsetButtonWidget::UkmediaHeadsetButtonWidget(QString icon, QString text) +{ + iconLabel = new QLabel; + textLabel = new QLabel(text); + + this->setFixedSize(96,96); + iconLabel->setFixedSize(32,32); + textLabel->setFixedHeight(20); + QVBoxLayout *vLayout = new QVBoxLayout(); + vLayout->addWidget(iconLabel); + vLayout->addWidget(textLabel); + vLayout->setSpacing(7); + vLayout->setContentsMargins(0,20,0,20); + this->setLayout(vLayout); + + iconLabel->setPixmap(QIcon::fromTheme(icon).pixmap(32,32)); +} + +UkmediaHeadsetButtonWidget::~UkmediaHeadsetButtonWidget() +{ + +} diff --git a/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.h b/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.h new file mode 100644 index 0000000..20dacd1 --- /dev/null +++ b/ukui-volume-control-applet-qt/ukui_media_set_headset_widget.h @@ -0,0 +1,86 @@ +/* + * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, see +#include +#include +#include +#include +#include +#include +#include +#include +#include "customstyle.h" + +//设置声卡的key controls +#define LEVEL_BASIC (1<<0) +#define LEVEL_ID (1<<2) +#define HW_CARD "hw:0" + +class UkmediaHeadsetButtonWidget : public QWidget +{ + Q_OBJECT +public: + UkmediaHeadsetButtonWidget(QString icon,QString text); + ~UkmediaHeadsetButtonWidget(); + +private: + QLabel *iconLabel; + QLabel *textLabel; +}; + +class UkuiMediaSetHeadsetWidget : public QWidget +{ + Q_OBJECT +public: + UkuiMediaSetHeadsetWidget(QWidget *parent = nullptr); + ~UkuiMediaSetHeadsetWidget(); + void initSetHeadsetWidget(); + int cset(char * name, char *card, char *c, int roflag, int keep_handle); + void showControlId(snd_ctl_elem_id_t *id); + int showControl(const char *space, snd_hctl_elem_t *elem,int level); + void showWindow(); + friend class DeviceSwitchWidget; + friend class UkmediaMainWidget; +private: + QToolButton *headphoneIconButton; + QToolButton *headsetIconButton; + QToolButton *microphoneIconButton; + QLabel *headphoneLabel; + QLabel *headsetLabel; + QLabel *microphoneLabel; + + QLabel *selectSoundDeviceLabel; + QPushButton *soundSettingButton; + QPushButton *cancelButton; + + bool isShow = false; +private Q_SLOTS: + void headphoneButtonClickedSlot(); //点击headphone按钮 + void headsetButtonClickedSlot(); //点击headset 按钮 + void microphoneButtonClickedSlot(); //点击microphone 按钮 + void soundSettingButtonClickedSlot(); //点击声音设置按钮 + void cancelButtonClickedSlot(); //点击取消按钮 +protected: + void paintEvent(QPaintEvent *event); +}; + + +#endif // UKUIMEDIASETHEADSETWIDGET_H diff --git a/ukui-volume-control-applet-qt/xatom/xatom-helper.cpp b/ukui-volume-control-applet-qt/xatom/xatom-helper.cpp new file mode 100644 index 0000000..cf7b293 --- /dev/null +++ b/ukui-volume-control-applet-qt/xatom/xatom-helper.cpp @@ -0,0 +1,210 @@ +/* + * KWin Style UKUI + * + * Copyright (C) 2020, KylinSoft Co., Ltd. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * Authors: Yue Lan + * + */ + +#include "xatom-helper.h" +#include +#include +#include +#include + +static XAtomHelper *global_instance = nullptr; + +XAtomHelper *XAtomHelper::getInstance() +{ + if(!global_instance) + global_instance = new XAtomHelper; + return global_instance; +} + +bool XAtomHelper::isFrameLessWindow(int winId) +{ + auto hints = getInstance()->getWindowMotifHint(winId); + if(hints.flags == MWM_HINTS_DECORATIONS && hints.functions == 1) { + return true; + } + return false; +} + +bool XAtomHelper::isWindowDecorateBorderOnly(int winId) +{ + return isWindowMotifHintDecorateBorderOnly(getInstance()->getWindowMotifHint(winId)); +} + +bool XAtomHelper::isWindowMotifHintDecorateBorderOnly(const MotifWmHints &hint) { + bool isDeco = false; + if(hint.flags & MWM_HINTS_DECORATIONS && hint.flags != MWM_HINTS_DECORATIONS) { + if(hint.decorations == MWM_DECOR_BORDER) + isDeco = true; + } + return isDeco; +} + +bool XAtomHelper::isUKUICsdSupported() +{ + // fixme: + return false; +} + +bool XAtomHelper::isUKUIDecorationWindow(int winId) +{ + if(m_ukuiDecorationAtion == None) + return false; + + Atom type; + int format; + ulong nitems; + ulong bytes_after; + uchar *data; + + bool isUKUIDecoration = false; + + XGetWindowProperty(QX11Info::display(), winId, m_ukuiDecorationAtion, + 0, LONG_MAX, false, + m_ukuiDecorationAtion, &type, + &format, &nitems, + &bytes_after, &data); + + if(type == m_ukuiDecorationAtion) { + if(nitems == 1) { + isUKUIDecoration = data[0]; + } + } + + return isUKUIDecoration; +} + +UnityCorners XAtomHelper::getWindowBorderRadius(int winId) +{ + UnityCorners corners; + + Atom type; + int format; + ulong nitems; + ulong bytes_after; + uchar *data; + + if(m_unityBorderRadiusAtom != None) { + XGetWindowProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, + 0, LONG_MAX, false, + XA_CARDINAL, &type, + &format, &nitems, + &bytes_after, &data); + + if(type == XA_CARDINAL) { + if(nitems == 4) { + corners.topLeft = static_cast(data[0]); + corners.topRight = static_cast(data[1 * sizeof(ulong)]); + corners.bottomLeft = static_cast(data[2 * sizeof(ulong)]); + corners.bottomRight = static_cast(data[3 * sizeof(ulong)]); + } + XFree(data); + } + } + + return corners; +} + +void XAtomHelper::setWindowBorderRadius(int winId, const UnityCorners &data) +{ + if(m_unityBorderRadiusAtom == None) + return; + + ulong corners[4] = {data.topLeft, data.topRight, data.bottomLeft, data.bottomRight}; + + XChangeProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, XA_CARDINAL, + 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &corners, sizeof(corners) / sizeof(corners[0])); +} + +void XAtomHelper::setWindowBorderRadius(int winId, int topLeft, int topRight, int bottomLeft, int bottomRight) +{ + if(m_unityBorderRadiusAtom == None) + return; + + ulong corners[4] = {(ulong)topLeft, (ulong)topRight, (ulong)bottomLeft, (ulong)bottomRight}; + + XChangeProperty(QX11Info::display(), winId, m_unityBorderRadiusAtom, XA_CARDINAL, + 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &corners, sizeof(corners) / sizeof(corners[0])); +} + +void XAtomHelper::setUKUIDecoraiontHint(int winId, bool set) +{ + if(m_ukuiDecorationAtion == None) + return; + + XChangeProperty(QX11Info::display(), winId, m_ukuiDecorationAtion, m_ukuiDecorationAtion, 32, XCB_PROP_MODE_REPLACE, (const unsigned char *) &set, 1); +} + +void XAtomHelper::setWindowMotifHint(int winId, const MotifWmHints &hints) +{ + if(m_unityBorderRadiusAtom == None) + return; + + XChangeProperty(QX11Info::display(), winId, m_motifWMHintsAtom, m_motifWMHintsAtom, + 32, XCB_PROP_MODE_REPLACE, (const unsigned char *)&hints, sizeof(MotifWmHints) / sizeof(ulong)); +} + +MotifWmHints XAtomHelper::getWindowMotifHint(int winId) +{ + MotifWmHints hints; + + if(m_unityBorderRadiusAtom == None) + return hints; + + uchar *data; + Atom type; + int format; + ulong nitems; + ulong bytes_after; + + XGetWindowProperty(QX11Info::display(), winId, m_motifWMHintsAtom, + 0, sizeof(MotifWmHints) / sizeof(long), false, AnyPropertyType, &type, + &format, &nitems, &bytes_after, &data); + + if(type == None) { + return hints; + } else { + hints = *(MotifWmHints *)data; + XFree(data); + } + return hints; +} + +XAtomHelper::XAtomHelper(QObject *parent) : QObject(parent) +{ + if(!QX11Info::isPlatformX11()) + return; + + m_motifWMHintsAtom = XInternAtom(QX11Info::display(), "_MOTIF_WM_HINTS", true); + m_unityBorderRadiusAtom = XInternAtom(QX11Info::display(), "_UNITY_GTK_BORDER_RADIUS", false); + m_ukuiDecorationAtion = XInternAtom(QX11Info::display(), "_KWIN_UKUI_DECORAION", false); +} + +Atom XAtomHelper::registerUKUICsdNetWmSupportAtom() +{ + // fixme: + return None; +} + +void XAtomHelper::unregisterUKUICsdNetWmSupportAtom() +{ + // fixme: +} diff --git a/ukui-volume-control-applet-qt/xatom/xatom-helper.h b/ukui-volume-control-applet-qt/xatom/xatom-helper.h new file mode 100644 index 0000000..8727245 --- /dev/null +++ b/ukui-volume-control-applet-qt/xatom/xatom-helper.h @@ -0,0 +1,110 @@ +/* + * KWin Style UKUI + * + * Copyright (C) 2020, KylinSoft Co., Ltd. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + * Authors: Yue Lan + * + */ + +#ifndef XATOMHELPER_H +#define XATOMHELPER_H + +#include +#include +#include + +struct UnityCorners { + ulong topLeft = 0; + ulong topRight = 0; + ulong bottomLeft = 0; + ulong bottomRight = 0; +}; + +typedef struct { + ulong flags = 0; + ulong functions = 0; + ulong decorations = 0; + long input_mode = 0; + ulong status = 0; +} MotifWmHints, MwmHints; + +#define MWM_HINTS_FUNCTIONS (1L << 0) +#define MWM_HINTS_DECORATIONS (1L << 1) +#define MWM_HINTS_INPUT_MODE (1L << 2) +#define MWM_HINTS_STATUS (1L << 3) + +#define MWM_FUNC_ALL (1L << 0) +#define MWM_FUNC_RESIZE (1L << 1) +#define MWM_FUNC_MOVE (1L << 2) +#define MWM_FUNC_MINIMIZE (1L << 3) +#define MWM_FUNC_MAXIMIZE (1L << 4) +#define MWM_FUNC_CLOSE (1L << 5) + +#define MWM_DECOR_ALL (1L << 0) +#define MWM_DECOR_BORDER (1L << 1) +#define MWM_DECOR_RESIZEH (1L << 2) +#define MWM_DECOR_TITLE (1L << 3) +#define MWM_DECOR_MENU (1L << 4) +#define MWM_DECOR_MINIMIZE (1L << 5) +#define MWM_DECOR_MAXIMIZE (1L << 6) + +#define MWM_INPUT_MODELESS 0 +#define MWM_INPUT_PRIMARY_APPLICATION_MODAL 1 +#define MWM_INPUT_SYSTEM_MODAL 2 +#define MWM_INPUT_FULL_APPLICATION_MODAL 3 +#define MWM_INPUT_APPLICATION_MODAL MWM_INPUT_PRIMARY_APPLICATION_MODAL + +#define MWM_TEAROFF_WINDOW (1L<<0) + +namespace UKUI { +class Decoration; +} + +class XAtomHelper : public QObject +{ + // friend class UKUI::Decoration; + Q_OBJECT +public: + static XAtomHelper *getInstance(); + + static bool isFrameLessWindow(int winId); + + static bool isWindowDecorateBorderOnly(int winId); + static bool isWindowMotifHintDecorateBorderOnly(const MotifWmHints &hint); + bool isUKUICsdSupported(); + bool isUKUIDecorationWindow(int winId); + + UnityCorners getWindowBorderRadius(int winId); + void setWindowBorderRadius(int winId, const UnityCorners &data); + void setWindowBorderRadius(int winId, int topLeft, int topRight, int bottomLeft, int bottomRight); + void setUKUIDecoraiontHint(int winId, bool set = true); + + void setWindowMotifHint(int winId, const MotifWmHints &hints); + MotifWmHints getWindowMotifHint(int winId); + +private: + explicit XAtomHelper(QObject *parent = nullptr); + + Atom registerUKUICsdNetWmSupportAtom(); + void unregisterUKUICsdNetWmSupportAtom(); + + Atom m_motifWMHintsAtom = None; + Atom m_unityBorderRadiusAtom = None; + Atom m_ukuiDecorationAtion = None; +}; + +#endif // XATOMHELPER_H diff --git a/ukui-volume-control-applet-qt/xatom/xatom.pri b/ukui-volume-control-applet-qt/xatom/xatom.pri new file mode 100644 index 0000000..2d5b140 --- /dev/null +++ b/ukui-volume-control-applet-qt/xatom/xatom.pri @@ -0,0 +1,7 @@ +INCLUDEPATH += $$PWD + +HEADERS += \ + $$PWD/xatom-helper.h \ + +SOURCES += \ + $$PWD/xatom-helper.cpp \