mirror of
https://github.com/rozniak/xfce-winxp-tc.git
synced 2026-05-01 11:41:30 +00:00
Enhancement: Fixes #183, Replace xfce4-panel with our own taskbar implementation
This commit is contained in:
159
shell/taskband/CMakeLists.txt
Normal file
159
shell/taskband/CMakeLists.txt
Normal file
@@ -0,0 +1,159 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
|
||||
project(
|
||||
wintc-taskband
|
||||
VERSION 1.0
|
||||
DESCRIPTION "Windows Total Conversion taskband application"
|
||||
)
|
||||
|
||||
set(PROJECT_ANYARCH false)
|
||||
set(PROJECT_FREESTATUS true)
|
||||
set(PROJECT_MAINTAINER "Rory Fewell <roryf@oddmatics.uk>")
|
||||
|
||||
set(
|
||||
PROJECT_DEPENDENCIES
|
||||
libgarcon-1-0
|
||||
libgarcon-gtk3-1-0
|
||||
libgdk-pixbuf-2.0-0
|
||||
libglib2.0-0
|
||||
libgtk-3-0
|
||||
libwintc-comgtk
|
||||
libwintc-exec
|
||||
libwintc-shllang
|
||||
xdg-utils
|
||||
)
|
||||
|
||||
set(PROJECT_ROOT ${CMAKE_CURRENT_LIST_DIR})
|
||||
|
||||
set(WINTC_NO_PEDANTIC_COMPILE true) # Necessary because we use dlsym()
|
||||
|
||||
include(GNUInstallDirs)
|
||||
|
||||
include(../../packaging/cmake-inc/common/CMakeLists.txt)
|
||||
include(../../packaging/cmake-inc/locale/CMakeLists.txt)
|
||||
include(../../packaging/cmake-inc/packaging/CMakeLists.txt)
|
||||
include(../../packaging/cmake-inc/resources/CMakeLists.txt)
|
||||
|
||||
find_package(PkgConfig REQUIRED)
|
||||
|
||||
pkg_check_modules(GARCON REQUIRED garcon-1)
|
||||
pkg_check_modules(GARCON_GTK3 REQUIRED garcon-gtk3-1)
|
||||
pkg_check_modules(GDK REQUIRED gdk-3.0)
|
||||
pkg_check_modules(GDK_PIXBUF REQUIRED gdk-pixbuf-2.0)
|
||||
pkg_check_modules(GLIB REQUIRED glib-2.0)
|
||||
pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
|
||||
pkg_check_modules(WINTC_COMGTK REQUIRED wintc-comgtk)
|
||||
pkg_check_modules(WINTC_EXEC REQUIRED wintc-exec)
|
||||
pkg_check_modules(WINTC_SHLLANG REQUIRED wintc-shllang)
|
||||
|
||||
wintc_compile_resources()
|
||||
wintc_create_meta_h()
|
||||
|
||||
add_executable(
|
||||
wintc-taskband
|
||||
src/application.c
|
||||
src/application.h
|
||||
src/dispproto.c
|
||||
src/dispproto.h
|
||||
src/dispproto-wayland.c
|
||||
src/dispproto-wayland.h
|
||||
src/dispproto-x11.c
|
||||
src/dispproto-x11.h
|
||||
src/dispproto-wndmgmt-wnck.c
|
||||
src/dispproto-wndmgmt-wnck.h
|
||||
src/dispproto-wndmgmt-xfw.c
|
||||
src/dispproto-wndmgmt-xfw.h
|
||||
src/main.c
|
||||
src/meta.h
|
||||
src/resources.c
|
||||
src/window.c
|
||||
src/window.h
|
||||
src/start/action.c
|
||||
src/start/action.h
|
||||
src/start/placeslist.c
|
||||
src/start/placeslist.h
|
||||
src/start/programslist.c
|
||||
src/start/programslist.h
|
||||
src/start/startbutton.c
|
||||
src/start/startbutton.h
|
||||
src/start/startmenu.c
|
||||
src/start/startmenu.h
|
||||
src/start/startmenuitem.c
|
||||
src/start/startmenuitem.h
|
||||
src/start/util.c
|
||||
src/start/util.h
|
||||
src/systray/clock.c
|
||||
src/systray/clock.h
|
||||
src/systray/notifarea.c
|
||||
src/systray/notifarea.h
|
||||
src/taskbuttons/taskbuttonbar.c
|
||||
src/taskbuttons/taskbuttonbar.h
|
||||
src/taskbuttons/windowmonitor.c
|
||||
src/taskbuttons/windowmonitor.h
|
||||
)
|
||||
|
||||
target_compile_options(
|
||||
wintc-taskband
|
||||
PRIVATE ${WINTC_COMPILE_OPTIONS}
|
||||
)
|
||||
|
||||
target_include_directories(
|
||||
wintc-taskband
|
||||
SYSTEM
|
||||
PRIVATE ${GARCON_INCLUDE_DIRS}
|
||||
PRIVATE ${GARCON_GTK3_INCLUDE_DIRS}
|
||||
PRIVATE ${GDK_INCLUDE_DIRS}
|
||||
PRIVATE ${GDK_PIXBUF_INCLUDE_DIRS}
|
||||
PRIVATE ${GLIB_INCLUDE_DIRS}
|
||||
PRIVATE ${GTK3_INCLUDE_DIRS}
|
||||
PRIVATE ${WINTC_COMGTK_INCLUDE_DIRS}
|
||||
PRIVATE ${WINTC_EXEC_INCLUDE_DIRS}
|
||||
PRIVATE ${WINTC_SHLLANG_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_link_directories(
|
||||
wintc-taskband
|
||||
PRIVATE ${GARCON_LIBRARY_DIRS}
|
||||
PRIVATE ${GARCON_GTK3_LIBRARY_DIRS}
|
||||
PRIVATE ${GDK_LIBRARY_DIRS}
|
||||
PRIVATE ${GDK_PIXBUF_LIBRARY_DIRS}
|
||||
PRIVATE ${GLIB_LIBRARY_DIRS}
|
||||
PRIVATE ${GTK3_LIBRARY_DIRS}
|
||||
PRIVATE ${WINTC_COMGTK_LIBRARY_DIRS}
|
||||
PRIVATE ${WINTC_EXEC_LIBRARY_DIRS}
|
||||
PRIVATE ${WINTC_SHLLANG_LIBRARY_DIRS}
|
||||
)
|
||||
|
||||
target_link_libraries(
|
||||
wintc-taskband
|
||||
PRIVATE ${CMAKE_DL_LIBS}
|
||||
PRIVATE ${GARCON_LIBRARIES}
|
||||
PRIVATE ${GARCON_GTK3_LIBRARIES}
|
||||
PRIVATE ${GDK_LIBRARIES}
|
||||
PRIVATE ${GDK_PIXBUF_LIBRARIES}
|
||||
PRIVATE ${GLIB_LIBRARIES}
|
||||
PRIVATE ${GTK3_LIBRARIES}
|
||||
PRIVATE ${WINTC_COMGTK_LIBRARIES}
|
||||
PRIVATE ${WINTC_EXEC_LIBRARIES}
|
||||
PRIVATE ${WINTC_SHLLANG_LIBRARIES}
|
||||
)
|
||||
|
||||
add_dependencies(
|
||||
wintc-taskband
|
||||
build-gresources
|
||||
)
|
||||
|
||||
# Installation
|
||||
#
|
||||
wintc_configure_and_install_packaging()
|
||||
wintc_compile_and_install_pofiles()
|
||||
|
||||
install(
|
||||
DIRECTORY res/
|
||||
DESTINATION ${WINTC_ASSETS_INSTALL_DIR}/shell-res
|
||||
)
|
||||
|
||||
install(
|
||||
TARGETS wintc-taskband
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
)
|
||||
7
shell/taskband/README.MD
Normal file
7
shell/taskband/README.MD
Normal file
@@ -0,0 +1,7 @@
|
||||
# wintc-taskband
|
||||
This directory contains the source code for the taskband.
|
||||
|
||||

|
||||
|
||||
## Keyboard Shortcut
|
||||
At the moment there is no ability to open the Start menu with the `super`/`Win` key - there is an issue open for this however: [#86](https://github.com/rozniak/xfce-winxp-tc/issues/86)
|
||||
141
shell/taskband/po/ar_SA.po
Normal file
141
shell/taskband/po/ar_SA.po
Normal file
@@ -0,0 +1,141 @@
|
||||
# Arabic translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: ar_SA\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "كافة البرامج"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "فتح مستعرض إنترنت."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "فتح برنامج البريد الإلكتروني حتى تتمكن من إرسال رسالة أو قراءتها."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "إنترنت"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "البريد الإلكتروني"
|
||||
|
||||
msgid "start"
|
||||
msgstr " ابدأ"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "انقر هنا لتبدأ"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "تسجيل الخروج"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"توفير خيارات لإغلاق البرامج وتسجيل الخروج أو للاحتفاظ بالبرامج قيد التشغيل "
|
||||
"والتبديل إلى مستخدم آخر."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "إيقاف تشغيل الكمبيوتر"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"توفير خيارات لإيقاف تشغيل الكمبيوتر أو لإعادة تشغيله أو لتنشيط وضعي "
|
||||
"\"الاستعداد\" أو \"السبات\"."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"فتح المجلد \"المستندات\" الذي يمكنك حفظ الخطابات والتقارير والملاحظات وغير "
|
||||
"ذلك من أنواع المستندات فيه."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "عرض المستندات والمجلدات التي تم فتحها مؤخراً."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"فتح المجلد \"الصور\" الذي يمكنك حفظ الصور الفوتوغرافية الرقمية والصور وملفات "
|
||||
"الرسومات فيه."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"فتح المجلد \"الموسيقى\" الذي يمكنك حفظ ملفات الموسيقى وأنواع ملفات الصوت "
|
||||
"الأخرى فيه."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"منح حق الوصول إلى محركات الأقراص والكاميرات والماسحات الضوئية والأجهزة "
|
||||
"الأخرى المتصلة بالكمبيوتر وكذلك توفير معلومات بخصوصها."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"توفير خيارات لتخصيص مظهر الكمبيوتر وكيفية عمله وإضافة البرامج أو إزالتها "
|
||||
"وإعداد اتصالات شبكة الاتصال وحسابات المستخدمين."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"اختيار البرامج الافتراضية لبعض النشاطات كاستعراض ويب أو ارسال البريد "
|
||||
"الإلكتروني وتحديد البرامج التي يمكن الوصول إليها من قائمة ابدأ وسطح المكتب "
|
||||
"ومواقع أخرى."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "تعيين افتراضيات البرامج والوصول إليها"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "الاتصال بأجهزة الكمبيوتر وشبكات الاتصال الأخرى وإنترنت"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "الاتصال بـ"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr "إظهار الطابعات وأجهزة الفاكس المثبتة ومساعدتك في إضافة أجهزة جديدة"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"فتح موقع وسط لمواضيع \"التعليمات\"، والبرامج التعليمية واستكشاف الأخطاء "
|
||||
"وإصلاحها وخدمات الدعم الأخرى."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "تعليمات ودعم"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "فتح إطار يمكنك فيه انتقاء خيارات البحث والتعامل مع نتائج البحث."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "بحث"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "فتح برنامج أو مجلد أو مستند أو موقع على ويب."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "تشغيل..."
|
||||
148
shell/taskband/po/bg_BG.po
Normal file
148
shell/taskband/po/bg_BG.po
Normal file
@@ -0,0 +1,148 @@
|
||||
# Bulgarian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Всички програми"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Отваря вашия Интернет браузър."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Отваря вашата e-mail програма, за да можете да изпращате или четете "
|
||||
"съобщение."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Интернет"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "старт"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Щракнете тук, за да започнете"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Излизане"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Предоставя опции за затваряне на програми и излизане, или за оставяне на "
|
||||
"програмите да се изпълняват и превключване на друг потребител."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Изключване на компютъра"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Предоставя опции за изключване или рестартиране на компютъра или за "
|
||||
"активиране на режимите \"Готовност\" или \"Заспиване\"."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Отваря папката \"Моите документи\", където може да съхранявате писма, "
|
||||
"отчети, бележки и друг тип документи."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Показва последно отваряни документи и папки."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Отваря папката \"Моите картини\", където може да съхранявате цифрови снимки, "
|
||||
"изображения и графични файлове."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Отваря папката \"Моята музика\", където може да съхранявате музика и други "
|
||||
"аудиофайлове."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Дава информация и достъп до дискови устройства, фотоапарати, скенери и друг "
|
||||
"хардуер, свързан към компютъра."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Предоставя опции за персонализиране на вида и функционалността на компютъра, "
|
||||
"за добавяне или отстраняване на програми, и за инсталиране на мрежови връзки "
|
||||
"и потребителски акаунти."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Избира програми по подразбиране за определени дейности като Web браузър или "
|
||||
"електронна поща, както и до кои програми да има достъп от менюто \"Старт\", "
|
||||
"от работния плот и от други места."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Задаване на достъп до програми и настройки по подразбиране"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Свързва с други компютри, мрежи и Интернет."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Свържи се с"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Показва инсталираните принтери и факс принтери и ви помага да добавяте нови."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Отваря централно местоположение за теми от \"Помощ\", уроци, отстраняване на "
|
||||
"неизправности и други поддържащи услуги."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Помощ и поддръжка"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Отваря прозорец, откъдето може да изберете опции на търсене и да работите с "
|
||||
"резултатите от търсенето."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Търсене"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Отваря програма, папка, документ или Web сайт."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Изпълнение..."
|
||||
144
shell/taskband/po/cs_CZ.po
Normal file
144
shell/taskband/po/cs_CZ.po
Normal file
@@ -0,0 +1,144 @@
|
||||
# Czech translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Všechny programy"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Spustí prohlížeč Internetu."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Spustí e-mailový program, umožňující odesílat a číst zprávy."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Začněte klepnutím sem."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Odhlásit se"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Poskytuje možnosti ukončení programů a odhlášení nebo přepnutí uživatele bez "
|
||||
"ukončení programů."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Vypnout počítač"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Poskytuje možnosti vypnutí nebo restartování počítače a pro přechod do "
|
||||
"pohotovostního režimu nebo režimu spánku."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Otevře složku Dokumenty, kam můžete ukládat dopisy, poznámky, tabulky a jiné "
|
||||
"druhy dokumentů."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Zobrazí naposledy otevřené dokumenty a složky."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Otevře složku Obrázky, kam můžete ukládat digitální fotografie, obrázky a "
|
||||
"grafiku."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Otevře složku Hudba, kam můžete ukládat hudební a jiné zvukové soubory."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Poskytuje přístup a informace o pevných discích, kamerách, skenerech a "
|
||||
"dalších zařízeních, připojených k tomuto počítači."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Poskytuje možnosti úpravy zobrazení a funkcí tohoto počítače, přidávání a "
|
||||
"odebírání programů a konfigurování síťových připojení a uživatelských účtů."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Určuje výchozí programy pro určité úlohy, jako například prohlížení webu "
|
||||
"nebo odesílání e-mailů a také programy přístupné v nabídce Start, na ploše a "
|
||||
"dalších místech."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Přístup a výchozí nastavení programů"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Vytvoří připojení k jiným počítačům, sítím a Internetu"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Připojit"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Obsahuje nainstalované tiskárny a faxové tiskárny a umožňuje přidat nové."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Zpřístupní témata nápovědy, kurzy, řešení problémů a další služby odborné "
|
||||
"pomoci."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Nápověda a odborná pomoc"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Otevře okno, ve kterém můžete vybrat možnosti vyhledávání a pracovat s "
|
||||
"výsledky vyhledávání."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Hledat"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Otevře složku, program, dokument nebo webovou stránku."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Spustit..."
|
||||
144
shell/taskband/po/da_DK.po
Normal file
144
shell/taskband/po/da_DK.po
Normal file
@@ -0,0 +1,144 @@
|
||||
# Danish translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Alle programmer"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Åbner din Internetwebbrowser"
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Åbner dit e-mail-program, så du kan sende og læse meddelelser"
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Klik her for at starte"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Log af"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Indstillinger for lukning af dine programmer og for at logge af eller lade "
|
||||
"programmerne køre og skifte til en anden bruger"
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Luk computeren"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Indstillinger for lukning og genstart af computeren, eller for aktivering af "
|
||||
"standby eller dvale"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Åbner mappen Dokumenter, hvor du kan gemme breve, rapporter, notater og "
|
||||
"andre slags dokumenter"
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Viser de senest åbnede dokumenter og mapper"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Åbner mappen Billeder, hvor du kan gemme digitale fotos, billeder og "
|
||||
"grafikfiler"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "Åbner mappen Musik, hvor du kan gemme musik og andre lydfiler"
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Giver adgang til og oplysninger om diskdrev, kameraer, scannere og anden "
|
||||
"hardware, der er tilsluttet computeren"
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Indstillinger for tilpasning af udseendet og computerens funktioner, "
|
||||
"tilføjelse eller fjernelse af programmer og oprettelse af "
|
||||
"netværksforbindelser og brugerkonti"
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Vælger standardprogrammer til bestemte handlinger, f.eks. brug af webbrowser "
|
||||
"eller afsendelse af e-mail, og hvilke programmer, der er tilgængelige i "
|
||||
"menuen Start, på skrivebordet og andre steder."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Angiv programadgang og -standarder"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Opretter forbindelse til andre computere, netværk og Internettet"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Opret forbindelse til"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Viser installerede printere og faxprintere og hjælper dig med at tilføje nye"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Åbner en central placering for emner i Hjælp, selvstudier, fejlfinding og "
|
||||
"andre supporttjenester"
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Hjælp og support"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Åbner et vindue, hvor du kan vælge søgekriterier og arbejde med "
|
||||
"søgeresultater"
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Søg"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Åbner et program, en mappe, et dokument eller et websted"
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Kør..."
|
||||
149
shell/taskband/po/de_DE.po
Normal file
149
shell/taskband/po/de_DE.po
Normal file
@@ -0,0 +1,149 @@
|
||||
# German translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Alle Programme"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Öffnet den Internetbrowser."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Öffnet das E-Mail-Programm zum Senden und Empfangen von Nachrichten."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-Mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Klicken Sie zum Starten auf diese Schaltfläche."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Abmelden"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Bietet Optionen zum Schließen von Programmen und zum Abmelden, sowie zum "
|
||||
"Verlassen von ausgeführten Programmen und zum Wechseln zu einem anderen "
|
||||
"Benutzer."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Computer ausschalten"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Bietet Optionen zum Abschalten oder Neustarten des Computers oder zum "
|
||||
"Aktivieren des Standbymodus bzw. Ruhezustands."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Öffnet den Ordner \"Eigene Dateien\", in dem Sie Briefe, Berichte, Notizen "
|
||||
"und andere Dokumente speichern können."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Zeigt die zuletzt geöffneten Dokumente und Ordner an."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Öffnet den Ordner \"Eigene Bilder\", in dem Sie digitale Fotos, Bilder und "
|
||||
"andere Grafikdateien speichern können."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Öffnet den Ordner \"Eigene Musik\", in dem Sie Musik- und andere "
|
||||
"Audiodateien speichern können."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Bietet Zugriff und Informationen über Laufwerke, Kameras, Scanner und andere "
|
||||
"an den Computer angeschlossene Hardware."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Bietet Optionen zum Anpassen der Darstellung und Funktionalität des "
|
||||
"Computers, zum Hinzufügen bzw. Entfernen von Programmen und zum Einrichten "
|
||||
"von Netzwerkverbindungen und Benutzerkonten."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Wählt die Standardprogramme für bestimmte Aktivitäten aus, wie z. B. "
|
||||
"Webbrowsen oder Senden von E-Mail, und legt fest, auf welche Programme vom "
|
||||
"Startmenü, vom Desktop, bzw. von anderen Stellen aus zugegriffen werden kann."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Programmzugriff und -standards"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr ""
|
||||
"Stellt Verbindungen mit anderen Computern, Netzwerken oder dem Internet her."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Verbinden mit"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Zeigt die installierten Drucker und Faxdrucker an und unterstützt Sie beim "
|
||||
"Hinzufügen neuer Drucker."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Öffnet eine zentrale Anwendung für Hilfethemen, Lernprogramme, "
|
||||
"Problembehebung und andere Supportdienste."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Hilfe und Support"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Öffnet ein Fenster, in dem Sie Suchoptionen auswählen und mit "
|
||||
"Suchergebnissen arbeiten können."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Suchen"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Öffnet ein Programm, einen Ordner, ein Dokument oder eine Website."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Ausführen..."
|
||||
151
shell/taskband/po/el_GR.po
Normal file
151
shell/taskband/po/el_GR.po
Normal file
@@ -0,0 +1,151 @@
|
||||
# Greek translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Όλα τα προγράμματα"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Ανοίγει το πρόγραμμα περιήγησής σας στο Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Ανοίγει το πρόγραμμα ηλεκτρονικού ταχυδρομείου σας ώστε να μπορείτε να "
|
||||
"στείλετε ή να διαβάσετε ένα μήνυμα."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Ιnternet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Ηλ. ταχυδρομείο"
|
||||
|
||||
msgid "start"
|
||||
msgstr "έναρξη"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Κάντε κλικ εδώ, για να ξεκινήσετε"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Αποσύνδεση"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Παρέχει επιλογές για κλείσιμο των προγραμμάτων και αποσύνδεση ή για συνέχεια "
|
||||
"εκτέλεσης των προγραμμάτων και εναλλαγή σε άλλον χρήστη."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Σβήσιμο του υπολογιστή"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Παρέχει επιλογές για το σβήσιμο ή την επανεκκίνηση του υπολογιστή σας ή για "
|
||||
"την ενεργοποίηση των καταστάσεων λειτουργίας \"Αναμονή\" ή \"Αδρανοποίηση\"."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Ανοίγει το φάκελο \"Τα έγγραφά μου\", όπου μπορείτε να αποθηκεύετε "
|
||||
"επιστολές, εκθέσεις, σημειώσεις και άλλα είδη εγγράφων."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Εμφανίζει έγγραφα και φακέλους που ανοίχτηκαν πρόσφατα."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Ανοίγει το φάκελο \"Οι εικόνες μου\", όπου μπορείτε να αποθηκεύσετε ψηφιακές "
|
||||
"φωτογραφίες, εικόνες και αρχεία γραφικών."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Ανοίγει το φάκελο \"Η μουσική μου\", όπου μπορείτε να αποθηκεύσετε αρχεία "
|
||||
"μουσικής και άλλα αρχεία ήχου."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Παρέχει πρόσβαση, και σχετικές πληροφορίες, σε μονάδες δίσκων, φωτογραφικές "
|
||||
"μηχανές, σαρωτές και το υπόλοιπο υλικό που είναι συνδεδεμένο στον υπολογιστή "
|
||||
"σας."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Σας παρέχει επιλογές προσαρμογής της εμφάνισης και της λειτουργικότητας του "
|
||||
"υπολογιστή σας, προσθαφαίρεσης προγραμμάτων και εγκατάστασης συνδέσεων "
|
||||
"δικτύου και λογαριασμών χρηστών."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Επιλέγει προεπιλεγμένα προγράμματα για συγκεκριμένες δραστηριότητες, όπως "
|
||||
"περιήγηση στο Web ή αποστολή ηλ. ταχυδρομείου, και καθορίζει σε ποια "
|
||||
"προγράμματα είναι δυνατή η πρόσβαση από το μενού \"Έναρξη\", την επιφάνεια "
|
||||
"εργασίας και άλλες θέσεις."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Ορισμός πρόσβασης και προεπιλογών προγραμμάτων"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Συνδέει σε άλλους υπολογιστές, δίκτυα και στο Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Σύνδεση με"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Δείχνει εγκατεστημένους εκτυπωτές και εκτυπωτές φαξ και σας βοηθά να "
|
||||
"προσθέσετε νέους."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Ανοίγει μια κεντρική θέση για θέματα Βοήθειας, εγχειρίδια εκμάθησης, "
|
||||
"αντιμετώπιση προβλημάτων και άλλες υπηρεσίες υποστήριξης."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Βοήθεια και υποστήριξη"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Ανοίγει ένα παράθυρο όπου μπορείτε να επιλέξετε επιλογές αναζήτησης και να "
|
||||
"εργαστείτε με αποτελέσματα αναζήτησης."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Αναζήτηση"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Ανοίγει ένα πρόγραμμα, φάκελο, έγγραφο ή τοποθεσία Web."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Εκτέλεση..."
|
||||
149
shell/taskband/po/es_ES.po
Normal file
149
shell/taskband/po/es_ES.po
Normal file
@@ -0,0 +1,149 @@
|
||||
# Spanish translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Todos los programas"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Abre su explorador de Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Abre su programa de correo electrónico para que pueda enviar y recibir "
|
||||
"mensajes."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Correo electrónico"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Inicio"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Haga clic aquí para iniciar"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Cerrar sesión"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Proporciona opciones para cerrar sus programas y cerrar sesión, o para dejar "
|
||||
"sus programas ejecutando y cambiar de usuario."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Apagar equipo"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Proporciona opciones para apagar y reiniciar su equipo, o para activar los "
|
||||
"modos Suspender o Hibernar."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Abre la carpeta Mis documentos en la que puede almacenar cartas, informes, "
|
||||
"notas y otro tipo de documentos."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Muestra documentos y carpetas abiertas recientemente."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Abre la carpeta Mis imágenes en la que puede almacenar fotos digitales, "
|
||||
"imágenes y archivos de gráficos."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Abre la carpeta Mi música en la que puede almacenar música y otros archivos "
|
||||
"de audio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Proporciona acceso e información acerca de unidades de disco, cámaras, "
|
||||
"escáneres y otro hardware conectado a su equipo."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Proporciona opciones para personalizar la apariencia y funcionalidad de su "
|
||||
"equipo, agregar o quitar programas, y establecer conexiones de red y cuentas "
|
||||
"de usuario."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Elige los programas predeterminados para ciertas actividades como "
|
||||
"exploración de Web o envío de correo electrónico y especifica qué programas "
|
||||
"se son accesibles desde Menú Inicio, el Escritorio y otras ubicaciones."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Configurar acceso y programas predeterminados"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Se conecta a otros equipos, redes e Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Conectar a"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Muestra las impresoras junto con las impresoras de fax y le ayuda a agregar "
|
||||
"las nuevas."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Abre una ubicación central para los Temas de ayuda, tutoriales, solución de "
|
||||
"problemas y otros servicios de soporte técnico."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Ayuda y soporte técnico"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Abre una ventana en la que puede elegir opciones de búsqueda y trabajar con "
|
||||
"los resultados."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Buscar"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Abre un programa, una carpeta, un documento o un sitio Web."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Ejecutar..."
|
||||
144
shell/taskband/po/et_EE.po
Normal file
144
shell/taskband/po/et_EE.po
Normal file
@@ -0,0 +1,144 @@
|
||||
# Estonian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Kõik programmid"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Avab teie Interneti-brauseri."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Avab teie meiliprogrammi, et saaksite sõnumeid saata või lugeda."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-post"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Alustamiseks klõpsake siin"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Logi välja"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Pakub võimalusi teie programmide sulgemiseks ja väljalogimiseks või "
|
||||
"programmide töötama jätmiseks ja mõne teise kasutaja aktiveerimiseks."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Lülita arvuti välja"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Pakub võimalusi arvuti väljalülitamiseks või taaskäivitamiseks või puhke- "
|
||||
"või talveunerežiimi aktiveerimiseks."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Avab kausta Minu dokumendid, kus saate talletada kirju, aruandeid, märkmeid "
|
||||
"ja muid dokumente."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Kuvab viimati avatud dokumendid ja kaustad."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Avab kausta Minu pildid, kus saate talletada digitaalfotosid, pilte ja "
|
||||
"graafikafaile."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Avab kausta Minu muusika, kus saate talletada muusikat ja muid helifaile."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Annab juurdepääsu kettadraividele, kaameratele, skanneritele ja muule teie "
|
||||
"arvutiga ühendatud riistvarale ning pakub nende kohta teavet."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Pakub võimalusi arvuti ilme ja funktsionaalsuse kohandamiseks, programmide "
|
||||
"lisamiseks või eemaldamiseks ja võrguühenduste ning kasutajakontode "
|
||||
"häälestamiseks."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Valib vaikeprogrammid kindlate tegevuste tarbeks (nt veebisirvimine või "
|
||||
"meilisõnumite saatmine) ja määrab, millistele programmidele pääseb juurde "
|
||||
"menüü Start kaudu, töölaualt ja mujalt."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Sea programmidele juurdepääs ja vaikeväärtused"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Loob ühenduse muude arvutite, võrkude ja Internetiga."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Loo ühendus"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Kuvab installitud printerid ja faksprinterid ja aitab teil uusi lisada."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Avab spikriteemade, õpikute, tõrkeotsingu ja muude tugiteenuste keskse "
|
||||
"asukoha."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Spikker ja tugi"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Avab akna, kus saate valida otsingusuvandeid ja töötada otsingutulemitega."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Otsing"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Avab programmi, kausta, dokumendi või veebisaidi."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Käivita..."
|
||||
146
shell/taskband/po/fi_FI.po
Normal file
146
shell/taskband/po/fi_FI.po
Normal file
@@ -0,0 +1,146 @@
|
||||
# Finnish translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Kaikki ohjelmat"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Avaa Internet-selaimen."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Käynnistää sähköpostiohjelman viestien lähettämistä ja lukemista varten."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Sähköposti"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Käynnistä"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Aloita valitsemalla tämä"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Kirjaudu ulos"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Vaihtoehtoja ohjelmien sulkemiselle ja uloskirjautumiseen ja myös käyttäjän "
|
||||
"vaihtamiselle ilman ohjelmien sulkemista."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Sammuta tietokone"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Vaihtoehtoja tietokoneen sammuttamiseen ja uudelleenkäynnistämiseen tai "
|
||||
"virransäästötilojen aktivoimiseen."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Avaa Omat tiedostot -kansion, jota käytetään asiakirjatiedostojen "
|
||||
"oletustallennuspaikkana."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Näyttää hiljattain käytetyt tiedostot ja kansiot."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Avaa Omat kuvatiedostot -kansion, jota käytetään kuvatiedostojen "
|
||||
"oletustallennuspaikkana."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Avaa Omat musiikkitiedostot -kansion, jota käytetään äänitiedostojen "
|
||||
"oletustallennuspaikkana."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Näyttää tietoja ja luo yhteyden tämän tietokoneen levyasemiin, skannereihin "
|
||||
"ja muihin kytkettyihin laitteisiin."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Tarjoaa vaihtoehtoja tietokoneen työpöydän ulkonäön ja toimintojen "
|
||||
"mukauttamiseen, mahdollisuuden lisätä ja poistaa ohjelmia ja luoda "
|
||||
"verkkoyhteyksiä ja käyttäjätilejä."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Valitsee oletussovellukset tietyille toiminnoille kuten Internetin "
|
||||
"selaamiselle tai sähköpostille. Lisäksi valvotaan, mitä sovelluksia voidaan "
|
||||
"käyttää Käynnistä-valikon, työpöydän ja muissa kohteiden avulla."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Valitse käytettävät ohjelmat"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Yhdistää toisiin tietokoneisiin, verkkoihin ja Internetiin."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Yhdistä"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr "Näyttää asennetut tulostimet ja faksit ja auttaa uusien asentamisessa."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Avaa ohjeen aiheiden, opetusohjelmien, vianetsinnän ja muiden tukipalvelujen "
|
||||
"keskuksen."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Ohje ja tuki"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Avaa ikkunan, jossa voit valita etsinnän asetukset ja työskennellä etsinnän "
|
||||
"tulosten kanssa."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Etsi"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Avaa kansion, tiedoston tai Web-sivun."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Suorita..."
|
||||
152
shell/taskband/po/fr_FR.po
Normal file
152
shell/taskband/po/fr_FR.po
Normal file
@@ -0,0 +1,152 @@
|
||||
# French translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Tous les programmes"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Ouvre votre navigateur Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Ouvre votre programme de messagerie électronique afin que vous puissiez "
|
||||
"envoyer ou lire un message."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Courrier électronique"
|
||||
|
||||
msgid "start"
|
||||
msgstr "démarrer"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Cliquez ici pour commencer"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Fermer la session"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Fournit des options pour fermer vos programmes et vos sessions, ou pour "
|
||||
"conserver vos programmes en cours d'exécution et basculer vers un autre "
|
||||
"utilisateur."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Arrêter l'ordinateur"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Fournit des options pour mettre votre ordinateur hors tension ou le "
|
||||
"redémarrer, ou pour activer les modes de veille ou de veille prolongée."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Ouvre le dossier Mes documents, dans lequel vous pouvez stocker vos lettres, "
|
||||
"rapports, notes, ou tout autre document."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Affiche les documents et dossiers ouverts récemment."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Ouvre le dossier Mes images, dans lequel vous pouvez stocker vos photos "
|
||||
"numériques, vos images et vos fichiers graphiques."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Ouvre le dossier Ma musique, dans lequel vous pouvez stocker votre musique "
|
||||
"et autres fichiers audio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Donne accès à des informations sur les lecteurs de disque, les appareil-"
|
||||
"photos, les scanneurs et autre matériel."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Fournit des options vous permettant de personnaliser l'apparence et les "
|
||||
"fonctionnalités de votre ordinateur, d'ajouter ou de supprimer des "
|
||||
"programmes et de configurer les connexions réseau et les comptes "
|
||||
"d'utilisateur."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Choisit les programmes par défaut pour des activités telles que la "
|
||||
"navigation sur le Web ou l'envoi et la réception de courrier électronique, "
|
||||
"et indique quels programmes sont accessibles depuis le menu Démarrer, le "
|
||||
"Bureau et d'autres emplacements."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Configurer les programmes par défaut"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Vous connecte à d'autres ordinateurs et réseaux, ou à Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Connexions"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Affiche les imprimantes et les imprimantes télécopieurs et vous aide à en "
|
||||
"ajouter de nouvelles."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Ouvre un emplacement central pour les rubriques d'aide, les didacticiels, "
|
||||
"les utilitaires de résolution de problèmes et autres services de support."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Aide et support"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Ouvre une fenêtre dans laquelle vous pouvez sélectionner les options de "
|
||||
"recherche et exploiter les résultats."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Rechercher"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Ouvre un programme, un dossier, un document ou un site Web."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Exécuter..."
|
||||
141
shell/taskband/po/he_IL.po
Normal file
141
shell/taskband/po/he_IL.po
Normal file
@@ -0,0 +1,141 @@
|
||||
# Hebrew translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "כל התוכניות"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "פתיחת דפדפן האינטרנט שלך."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "פתיחת תוכנית הדואר האלקטרוני שלך כדי שתוכל לשלוח או לקרוא הודעה."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "אינטרנט"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "דואר אלקטרוני"
|
||||
|
||||
msgid "start"
|
||||
msgstr " התחל"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "לחץ כאן כדי להתחיל"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "צא"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"מתן אפשרויות לסגירת התוכניות וניתוק, או להשארת התוכניות פתוחות ומעבר למשתמש "
|
||||
"אחר."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "כבה את המחשב"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"מתן אפשרויות לכיבוי או להפעלה מחדש של המחשב, או להפעלת מצבי המתנה או שנת "
|
||||
"חורף."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"פתיחת התיקיה 'המסמכים שלי', בה ניתן לאחסן מכתבים, דו\"חות, רשימות וסוגי "
|
||||
"מסמכים אחרים."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "הצגת המסמכים והתיקיות שפתחת לאחרונה."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"פתיחת התיקיה התמונות שלי, בה ניתן לאחסן צילומים דיגיטליים, תמונות וקבצי "
|
||||
"גרפיקה."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "פתיחת התיקיה המוסיקה שלי, בה ניתן לאחסן קבצי מוסיקה וקבצי שמע אחרים."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"מתן גישה אל כונני הדיסקים, המצלמות, הסורקים והתקני חומרה אחרים המחוברים "
|
||||
"למחשב שלך, והצגת מידע אודותיהם."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"מתן אפשרויות להתאמה אישית של המראה והפונקציונליות של המחשב, להוספה או הסרה "
|
||||
"של תוכניות ולהגדרת חיבורי רשת וחשבונות משתמשים."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"בוחר בתוכנות ברירת מחדל עבור פעילויות מסויימות כמו גלישה באינטרנט או שליחת "
|
||||
"דואר אלקטרוני, וקובע איזה תוכניות נגישות מתפריט התחל, שולחן העבודה ומיקומים "
|
||||
"אחרים."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "הגדר גישה לתכניות וברירות מחדל"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "חיבור למחשבים אחרים, לרשתות ולאינטרנט"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "התחבר אל"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"הצגת המדפסות הרגילות ומדפסות הפקס המותקנות ומתן עזרה להוספת מדפסות חדשות"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"פתיחת מיקום מרכזי הכולל נושאי עזרה, ערכות לימוד, כלי פתרון בעיות ושירותי "
|
||||
"תמיכה נוספים."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "עזרה ותמיכה"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "פתיחת חלון בו באפשרותך לבחור אפשרויות חיפוש ולעבוד עם תוצאות חיפוש."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "חיפוש"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "פתיחת תוכנית, תיקיה, מסמך או אתר אינטרנט."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "הפעלה..."
|
||||
145
shell/taskband/po/hr_HR.po
Normal file
145
shell/taskband/po/hr_HR.po
Normal file
@@ -0,0 +1,145 @@
|
||||
# Croatian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Svi programi"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Otvara vaš Internet preglednik."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Otvara vaš program za e-poštu kako biste poslali ili pročitali poruku."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-pošta"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Pritisnite ovdje za početak"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Odjava"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Pruža mogućnosti zatvaranja programa i odjave, ili nastavka rada programa i "
|
||||
"prebacivanja na drugog korisnika."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Isključi računalo"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Pruža mogućnost isključivanja i ponovnog pokretanja računala, ili pokretanja "
|
||||
"stanja čekanja i hibernacije."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Otvara mapu Moji dokumenti gdje možete spremati pisma, izvještaje, bilješke "
|
||||
"i ostale vrste dokumenata."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Prikazuje nedavno otvarane dokumente i mape."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Otvara mapu Moje slike gdje možete spremati digitalne fotografije, slike i "
|
||||
"grafičke datoteke."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Otvara mapu Moja glazba gdje možete spremati glazbu i ostale audio datoteke."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Daje pristup i informacije o diskovnim pogonima, kamerama, skenerima i "
|
||||
"ostalom hardveru priključenom na računalo."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Pruža mogućnost prilagodbe izgleda i funkcionalnosti računala, dodavanja ili "
|
||||
"uklanjanja programa te podešavanja mrežnih veza i korisničkih računa."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Odabire zadane programe pojedinih aktivnosti kao što su pregledavanje Web-a "
|
||||
"ili slanje e-pošte, te navodi kojim se programima može pristupiti s "
|
||||
"izbornika Start, radne površine i drugih mjesta."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Postavi dozvole pristupa programu i zadane vrijednosti"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Povezuje s drugim računalima, mrežama i Internetom."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Povezivanje s"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Prikazuje instalirane pisače i faksove te vam pomaže kod dodavanja novih."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Otvara središnje mjesto tema pomoći, vodiča, rješavanja problema i ostalih "
|
||||
"usluga podrške."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Pomoć i podrška"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Otvara prozor u kojem možete odabrati odrednice pretraživanja i raditi s "
|
||||
"rezultatima pretraživanja."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Traži"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Otvara program, mapu dokument ili web odredište."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Pokreni..."
|
||||
147
shell/taskband/po/hu_HU.po
Normal file
147
shell/taskband/po/hu_HU.po
Normal file
@@ -0,0 +1,147 @@
|
||||
# Hungarian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Minden program"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Az internetböngésző megnyitása."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "A levelezőprogram megnyitása üzenetek küldéséhez és olvasásához."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Az indításhoz kattintson ide."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Kijelentkezés"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr "Programok bezárása és kijelentkezés, vagy felhasználóváltás."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "A számítógép kikapcsolása"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Beállítások a számítógép kikapcsolásához, újraindításához vagy készenléti, "
|
||||
"illetve hibernálási üzemmódjához."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"A Dokumentumok mappa megnyitása, ahol leveleket, jegyzeteket, jelentéseket "
|
||||
"és egyéb dokumentumokat tárolhat."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "A legutóbb megnyitott dokumentumok és mappák megjelenítése."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"A Képek mappa megnyitása, amelyben digitális fényképeket, képeket és "
|
||||
"grafikus fájlokat tárolhat."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"A Zene mappa megnyitása, amelyben zenét és egyéb hangfájlokat tárolhat."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Hozzáférést biztosít valamint információt szolgáltat a lemezmeghajtókról, "
|
||||
"fényképezőgépekről, képolvasókról és egyéb, a számítógéphez csatlakoztatott "
|
||||
"hardverről."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Olyan beállítási lehetőségek, amelyekkel a számítógép megjelenését és "
|
||||
"működését testreszabhatja, programokat telepíthet vagy törölhet, valamint "
|
||||
"beállíthatja a hálózati kapcsolatokat és a felhasználói fiókokat."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Alapértelmezett programok kiválasztása bizonyos tevékenységekhez (például a "
|
||||
"web böngészéséhez vagy e-mail küldéséhez), valamint annak megadása, hogy "
|
||||
"mely programok legyenek elérhetők a Start menüben, az Asztalon és más "
|
||||
"helyeken."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Programok hozzáférhetősége és alapértelmezései"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Kapcsolódás más számítógépekhez, hálózatokhoz és az internethez."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Csatlakozás"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"A telepített nyomtatókat és faxnyomtatókat jeleníti meg, illetve segít újak "
|
||||
"hozzáadásában."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Olyan központi hely megnyitása, ahol együtt találja meg a súgó témaköreit, "
|
||||
"az oktatóprogramokat, valamint a hibakereső és egyéb támogatási "
|
||||
"szolgáltatásokat."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Súgó és támogatás"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Olyan ablak megnyitása, amelyben a keresés beállításait adhatja meg, illetve "
|
||||
"a keresés eredményével dolgozhat."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Keresés"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Program, mappa, dokumentum vagy webhely megnyitása."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Futtatás..."
|
||||
149
shell/taskband/po/it_IT.po
Normal file
149
shell/taskband/po/it_IT.po
Normal file
@@ -0,0 +1,149 @@
|
||||
# Italian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Tutti i programmi"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Apre il browser Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Apre il programma di posta elettronica per l'invio o la lettura dei messaggi."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Posta elettronica"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Fare clic per iniziare."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Disconnetti"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Fornisce opzioni per chiudere i programmi e disconnettersi o per lasciare i "
|
||||
"propri programmi in esecuzione e cambiare utente."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Spegni computer"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Fornisce opzioni per spegnere o riavviare il computer o per attivare le "
|
||||
"modalità Standby o Sospendi."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Apre la cartella Documenti, dove è possibile archiviare lettere, rapporti, "
|
||||
"note e altri tipi di documenti."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Visualizza documenti e cartelle aperti di recente."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Apre la cartella Immagini, dove è possibile archiviare foto digitali, "
|
||||
"immagini e file di grafica."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Apre la cartella Musica, dove è possibile archiviare musica e altri file "
|
||||
"audio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Fornisce informazioni relative a unità disco, videocamere, scanner e altro "
|
||||
"hardware collegato al computer e consente di accedervi."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Fornisce opzioni per personalizzare l'aspetto e la funzionalità del "
|
||||
"computer, aggiungere o rimuovere programmi, impostare connessioni di rete e "
|
||||
"account utente."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Consente di scegliere i programmi predefiniti per alcune attività come "
|
||||
"l'esplorazione del Web o l'invio di messaggi di posta elettronica e di "
|
||||
"specificare i programmi accessibili dal menu di avvio, dal desktop e da "
|
||||
"altri percorsi."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Impostazioni accesso ai programmi"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Connette a altri computer, reti o a Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Connetti a"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Mostra le stampanti e le stampanti fax installate e consente di aggiungerne "
|
||||
"di nuove."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Apre una pagina contenente argomenti della Guida in linea, esercitazioni, "
|
||||
"risoluzione problemi, e altri servizi di supporto tecnico."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Guida in linea e supporto tecnico"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Apre la finestra di selezione delle opzioni di ricerca al cui interno è "
|
||||
"possibile utilizzare i risultati della ricerca."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Cerca"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Apre un programma, una cartella, un documento o un sito."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Esegui..."
|
||||
145
shell/taskband/po/ja_JP.po
Normal file
145
shell/taskband/po/ja_JP.po
Normal file
@@ -0,0 +1,145 @@
|
||||
# Japanese translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "すべてのプログラム(P)"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "インターネット ブラウザを開きます。"
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "メッセージを送信したり読んだりできる電子メール プログラムを開きます。"
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "インターネット"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "電子メール"
|
||||
|
||||
msgid "start"
|
||||
msgstr "スタート"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "このボタンから始めます"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "ログオフ(L)"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"プログラムを閉じてログオフするオプションや、プログラムを実行したままで別の"
|
||||
"ユーザーに切り替えるオプションを提供します。"
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "コンピュータの終了"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"コンピュータの終了や再起動のオプション、およびスタンバイ モードや休止モードの"
|
||||
"オプションを提供します。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"[マイ ドキュメント] フォルダが開き、手紙、レポート、メモなどのドキュメントを"
|
||||
"保管できます。"
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "最近開いたドキュメントやフォルダを表示します。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"[マイ ピクチャ] フォルダが開き、デジタル写真、イメージ、グラフィック ファイル"
|
||||
"を保管できます。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"[マイ ミュージック] フォルダが開き、音楽ファイルやオーディオ ファイルを保管で"
|
||||
"きます。"
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"コンピュータに接続しているディスク ドライブ、カメラ、スキャナ、およびそのほか"
|
||||
"のハードウェアへアクセスしたり、その情報を得たりします。"
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"コンピュータのデザインや機能をカスタマイズしたり、プログラムの追加または削除"
|
||||
"を行ったり、ネットワーク接続やユーザー アカウントを設定したりするオプションを"
|
||||
"提供します。"
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Web 閲覧や電子メールの送信などの特定の操作のための既定のプログラムを選択し、"
|
||||
"どのプログラムをスタート メニュー、デスクトップおよびその他の場所からアクセス"
|
||||
"可能にするか指定します。"
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "プログラムのアクセスと既定の設定"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "ほかのコンピュータ、ネットワーク、およびインターネットへ接続します。"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "接続(T)"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"インストールしているプリンタや FAX を表示します。また新しいプリンタや FAX の"
|
||||
"インストールの手助けもします。"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"ヘルプのトピック、チュートリアル、トラブルシューティング、サポート サービスな"
|
||||
"どを集中して参照できる場所を開きます。"
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "ヘルプとサポート"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "検索オプションを選んだり、検索結果を得たりできるウィンドウを開きます。"
|
||||
|
||||
msgid "Search"
|
||||
msgstr "検索(S)"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "プログラム、フォルダ、ドキュメントまたは Web サイトを開きます。"
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "ファイル名を指定して実行(R)..."
|
||||
139
shell/taskband/po/ko_KR.po
Normal file
139
shell/taskband/po/ko_KR.po
Normal file
@@ -0,0 +1,139 @@
|
||||
# Korean translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "모든 프로그램(P)"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "인터넷 브라우저를 엽니다."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "메시지를 보내고 읽을 수 있도록 전자 메일 프로그램을 엽니다."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "인터넷"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "전자 메일"
|
||||
|
||||
msgid "start"
|
||||
msgstr "시작"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "시작하려면 여기를 클릭하십시오."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "로그오프(L)"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"프로그램을 닫고 로그오프하는 옵션 또는 프로그램을 실행하는 상태로 다른 사용자"
|
||||
"로 전환하는 옵션을 제공합니다."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "시스템 종료"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"컴퓨터를 끄거나 다시 시작하는 옵션 또는 [대기] 또는 [최대 절전] 모드를 활성화"
|
||||
"하는 옵션을 제공합니다."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"편지, 보고서, 메모, 기타 문서를 저장할 수 있는 [내 문서] 폴더를 엽니다."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "최근에 열었던 문서 및 폴더를 표시합니다."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"디지털 사진, 이미지, 그래픽 파일을 저장할 수 있는 [내 그림] 폴더를 엽니다."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "음악 및 기타 오디오 파일을 저장할 수 있는 [내 음악] 폴더를 엽니다."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"디스크 드라이브, 카메라, 스캐너 및 사용자 컴퓨터에 연결된 기타 하드웨어에 관"
|
||||
"한 액세스 및 정보를 줍니다."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"사용자 컴퓨터의 모양 및 기능을 지정하고 프로그램을 추가하거나 제거하며 네트워"
|
||||
"크 연결 및 사용자 계정을 설정하는 옵션을 제공합니다."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"웹 브라우징이나 전자 메일 전송과 같은 작업에 사용할 기본 프로그램을 선택하"
|
||||
"고, 시작 메뉴와 바탕 화면, 기타 위치에서 액세스할 프로그램을 지정합니다."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "기본 프로그램 설정"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "다른 컴퓨터, 네트워크 및 인터넷에 연결합니다."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "연결 대상(T)"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"설치되어 있는 프린터 및 팩스 프린터를 표시하며, 새로 추가하는 것을 도와줍니"
|
||||
"다."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"도움말 항목, 자습서, 문제 해결 및 기타 지원 서비스에 대한 정보를 한 눈에 볼 "
|
||||
"수 있는 창을 엽니다."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "도움말 및 지원"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "검색 옵션을 선택하고 검색 결과로 작업할 창을 엽니다."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "검색(S)"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "프로그램, 폴더, 문서 또는 웹 사이트를 엽니다."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "실행(R)..."
|
||||
152
shell/taskband/po/lt_LT.po
Normal file
152
shell/taskband/po/lt_LT.po
Normal file
@@ -0,0 +1,152 @@
|
||||
# Lithuanian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Visos programos"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Atidaroma interneto naršyklė."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Atidaroma el. pašto programa, kuria naudojantis galima siųsti arba skaityti "
|
||||
"pranešimą."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internetas"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "El. paštas"
|
||||
|
||||
msgid "start"
|
||||
msgstr "pradėti"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Pradėkite spustelėdami čia"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Išsiregistruoti"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Pateikiamos programų uždarymo ir išsiregistravimo pasirinktys arba "
|
||||
"pasirinktys, leidžiančios persijungiti į kitą vartotoją toliau vykdant "
|
||||
"ankstesnes programas."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Kompiuterio išjungimas"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Pateikiamos kompiuterio išjungimo ar pakartotinio paleidimo arba Pristabdymo "
|
||||
"ar Užmigdymo režimų aktyvinimo pasirinktys."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Atidaromas aplankas Mano dokumentai, kuriame galima išsaugoti laiškus, "
|
||||
"ataskaitas, raštelius ir kitokio tipo dokumentus."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Rodomi šiuo metu atidaryti dokumentai ir aplankai."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Atidaromas aplankas Mano paveikslėliai, kuriame galima išsaugoti "
|
||||
"skaitmenines nuotraukas, vaizdus ir grafinius failus."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Atidaromas aplankas Mano muzika, kuriame galima išsaugoti muzikos įrašus ir "
|
||||
"kitokius garso failus."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Suteikiama prieiga prie diskų įrenginių, fotoaparatų, skanerių ir kitokios "
|
||||
"aparatūros, prijungtos prie kompiuterio, bei suteikiama informacija apie "
|
||||
"juos."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Pateikiamos pasirinktys, skirtos kompiuterio išvaizdai ir veiksmingumui "
|
||||
"tinkinti, programoms pridėti arba šalinti ir tinklo ryšiams bei vartotojų "
|
||||
"abonentams nustatyti."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Išrenka numatytąsias programas tam tikrai veiklai vykdyti, pvz., naršyti "
|
||||
"internete ir siųsti el. paštą , ir tai, prie kurių programų galima prieiti "
|
||||
"per meniu „pradėti“, darbalaukį ir kitas vietas."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Nustatyti prieigą prie programos ir numatytąsias reikšmes"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Prisijungiama prie kitų kompiuterių, tinklų ir interneto."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Prijungti prie"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Rodomi įdiegti spausdintuvai ir faksogramų spausdintuvai bei padedama "
|
||||
"pridėti naujus."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Atidaroma centrinė žinyno temų, vadovėlių, trikčių šalinimo ir kitų "
|
||||
"palaikymo paslaugų vieta."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Žinynas ir palaikymas"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Atidaromas langas, kuriame galima išrinkti ieškos pasirinktis ir dirbti su "
|
||||
"ieškos rezultatais."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Ieška"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Atidaroma programa, aplankas, dokumentas ar svetainė."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Vykdyti..."
|
||||
145
shell/taskband/po/lv_LV.po
Normal file
145
shell/taskband/po/lv_LV.po
Normal file
@@ -0,0 +1,145 @@
|
||||
# Latvian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Visas programmas"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Atver interneta pārlūkprogrammu."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Atver e-pasta programmu, lai varētu nosūtīt vai lasīt ziņojumu."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internets"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-pasts"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Sākt"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Noklikšķiniet šeit, lai sāktu"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Atteikties"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Nodrošina opcijas, kas ļauj aizvērt programmas un atteikties vai atstāt "
|
||||
"programmas darbojamies un pārslēgties uz citu lietotāju."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Datora izslēgšana"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Nodrošina opcijas, kas ļauj izslēgt vai restartēt datoru vai aktivizēt "
|
||||
"gaidstāves vai hibernācijas režīmus."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Atver mapi Mani dokumenti, kurā var glabāt vēstules, atskaites, piezīmes un "
|
||||
"cita veida dokumentus."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Parāda nesen atvērtos dokumentus un mapes."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Atver mapi Mani attēli, kurā var glabāt ciparu fotogrāfijas, attēlus un "
|
||||
"grafikas failus."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "Atver mapi Mana mūzika, kurā var glabāt mūziku un citus audio failus."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Ļauj piekļūt un sniedz informāciju par diskdziņiem, fotokamerām, skeneriem "
|
||||
"un citu datoram pievienoto aparatūru."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Nodrošina opcijas, kas ļauj pielāgot datora izskatu un funkcionalitāti, "
|
||||
"pievienot vai noņemt programmas un iestatīt tīkla savienojumus un lietotāju "
|
||||
"kontus."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Izvēlas noklusējuma programmas noteiktām darbībām, piemēram, Web "
|
||||
"pārlūkošanai vai e-pasta sūtīšanai, kā arī norāda, kurām programmām var "
|
||||
"piekļūt no izvēlnes Sākt (Start), darbvirsmas un citām vietām."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Programmas piekļuves un noklusējuma rekvizītu iestatīšana"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Izveido savienojumu ar citiem datoriem, tīkliem un internetu."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Izveidot savienojumu ar"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Parāda instalētos printerus un faksa printerus un palīdz pievienot jaunus."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Atver palīdzības tēmu, apmācību, problēmu novēršanas un citu atbalsta "
|
||||
"pakalpojumu centrālo atrašanās vietu."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Palīdzība un atbalsts"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Atver logu, kurā var izvēlēties meklēšanas opcijas un strādāt ar meklēšanas "
|
||||
"rezultātiem."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Meklēt"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Atver programmu, mapi, dokumentu vai Web vietu."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Izpildīt..."
|
||||
145
shell/taskband/po/nb_NO.po
Normal file
145
shell/taskband/po/nb_NO.po
Normal file
@@ -0,0 +1,145 @@
|
||||
# Norwegian Bokmal translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Alle programmer"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Åpner Internett-leseren."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Åpner e-postprogrammet, slik at du kan sende eller lese en melding."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internett"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-post"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Klikk her når du vil begynne."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Logg av"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Gir deg valget mellom å lukke programmer og logge av, eller la programmene "
|
||||
"dine kjøre og bytte til en annen bruker."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Slå av datamaskinen"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Gir deg valget mellom å slå av, starte datamaskinen på nytt eller aktivere "
|
||||
"vente- eller dvalemodus."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Åpner mappen Mine dokumenter, hvor du kan lagre brev, rapporter og andre "
|
||||
"typer dokumenter."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Viser nylig åpnede dokumenter og mapper."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Åpner mappen Mine bilder, hvor du kan lagre digitale fotografier, bilder og "
|
||||
"grafikkfiler."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "Åpner mappen Min musikk, hvor du kan lagre musikk og andre lydfiler."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Gir tilgang til og informasjon om diskstasjoner, kamera, skannere og annen "
|
||||
"maskinvare som er koblet til datamaskinen."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Gir deg alternativer for å tilpasse utseendet og funksjonaliteten til "
|
||||
"datamaskinen, legge til eller fjerne programmer, og sette opp "
|
||||
"nettverkstilkoblinger og brukerkontoer."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Velger standardprogrammer for enkelte aktiviteter som for eksempel weblesing "
|
||||
"eller sending av e-post, og angir hvilke programmer som er tilgjengelige fra "
|
||||
"Start-menyen, skrivebordet og andre steder."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Angi programtilgang og standardprogrammer"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Kobler til andre datamaskiner, nettverk og Internett."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Koble til"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Viser installerte skrivere og faksskrivere, og hjelper deg med å legge til "
|
||||
"nye."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Åpner en sentral plassering for hjelpeemner, opplæring, feilsøking og andre "
|
||||
"støttetjenester."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Hjelp og støtte"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Åpner et vindu hvor du kan velge søkealternativer og arbeide med "
|
||||
"søkeresultater."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Søk"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Åpner et program, en mappe, et dokument eller et Web-område."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Kjør..."
|
||||
157
shell/taskband/po/nl_NL.po
Normal file
157
shell/taskband/po/nl_NL.po
Normal file
@@ -0,0 +1,157 @@
|
||||
# Dutch translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Alle programma's"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Hiermee wordt de browser gestart, zodat u op het Internet kunt surfen"
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Hiermee wordt het e-mailprogramma geopend, zodat u berichten kunt verzenden "
|
||||
"en ontvangen"
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Klik hier om te beginnen"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Afmelden"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Hiermee worden opties weergegeven waarmee u programma's kunt sluiten en u "
|
||||
"zich kunt afmelden, of waarmee u programma's geactiveerd kunt laten en u "
|
||||
"zich als andere gebruiker kunt aanmelden"
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Computer uitschakelen"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Hiermee worden opties weergegeven waarmee u de computer kunt uitschakelen of "
|
||||
"opnieuw opstarten, of waarmee u de computer naar stand-by of de slaapstand "
|
||||
"kunt laten overschakelen"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Hiermee wordt de map Mijn documenten geopend, waarin u brieven, rapporten, "
|
||||
"spreadsheets en andere documenten kunt opslaan"
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr ""
|
||||
"Hiermee wordt een lijst met onlangs geopende bestanden en mappen weergegeven"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Hiermee wordt de map Mijn afbeeldingen geopend, waarin u digitale foto's, "
|
||||
"afbeeldingen, plaatjes en andere grafische bestanden kunt opslaan"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Hiermee wordt de map Mijn muziek geopend, waarin u muziekbestanden en andere "
|
||||
"geluidsbestanden kunt opslaan"
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Hiermee wordt de map Deze computer geopend, waarmee u toegang krijgt tot en "
|
||||
"informatie kunt bekijken over de stations op deze computer en de hierop "
|
||||
"aangesloten hardware, zoals printers, camera's, scanners en andere apparaten"
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Hiermee kunt u opties instellen waarmee u de vormgeving en functionaliteit "
|
||||
"van de computer wijzigt, programma's toevoegt en verwijdert, en "
|
||||
"netwerkverbindingen en gebruikersaccounts instelt"
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Hiermee kunt u standaardprogramma's voor bepaalde activiteiten kiezen, zoals "
|
||||
"surfen en het verzenden van e-mail, en bepalen welke programma's via het "
|
||||
"menu Start, het bureaublad en andere locaties toegankelijk zijn"
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Programmatoegang en -instellingen"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr ""
|
||||
"Hiermee kunt u verbindingen met andere computers, netwerken en het Internet "
|
||||
"maken"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Verbinding maken"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Hiermee kunt u geïnstalleerde printers en faxprinters weergeven en nieuwe "
|
||||
"printers en faxprinters toevoegen"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Hiermee krijgt u toegang tot een centrale locatie met Help-onderwerpen, "
|
||||
"tips, zelfstudielessen, oplossingen voor problemen en andere ondersteunende "
|
||||
"diensten"
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Help en ondersteuning"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Hiermee kunt u een pagina openen waarin u zoekopties kunt instellen en met "
|
||||
"de resultaten van een zoekopdracht kunt werken"
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Zoeken"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr ""
|
||||
"Hiermee kunt u een programma starten, map openen of een website bezoeken"
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Uitvoeren..."
|
||||
150
shell/taskband/po/pl_PL.po
Normal file
150
shell/taskband/po/pl_PL.po
Normal file
@@ -0,0 +1,150 @@
|
||||
# Polish translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2);\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Wszystkie programy"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Otwiera przeglądarkę internetową."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Otwiera program poczty e-mail, co umożliwia wysłanie lub odczytanie "
|
||||
"wiadomości."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Kliknij, aby rozpocząć"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Wyloguj"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Zawiera opcje dotyczące zamykania programów i wylogowywania lub "
|
||||
"pozostawiania uruchomionych programów i przełączania do innego użytkownika."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Wyłączanie komputera"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Zawiera opcje dotyczące wyłączania i ponownego uruchamiania komputera oraz "
|
||||
"uaktywniania trybów gotowości lub hibernacji."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Otwiera folder Moje dokumenty, w którym możesz przechowywać listy, raporty, "
|
||||
"notatki i inne rodzaje dokumentów."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Wyświetla ostatnio otwierane dokumenty i foldery."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Otwiera folder Moje obrazy, w którym możesz przechowywać fotografie cyfrowe, "
|
||||
"obrazy i pliki graficzne."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Otwiera folder Moja muzyka, w którym możesz przechowywać muzykę i inne pliki "
|
||||
"audio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Udziela dostępu i informacji o stacjach dysków, kamerach, skanerach i innym "
|
||||
"sprzęcie podłączonym do tego komputera."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Zawiera opcje służące do dostosowywania wyglądu i funkcjonalności systemu, "
|
||||
"dodawania lub usuwania programów i konfigurowania połączeń sieciowych i kont "
|
||||
"użytkowników."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Wybiera programy domyślne dla pewnych czynności, takich jak przeglądanie "
|
||||
"sieci Web lub wysyłanie poczty e-mail i określa, które programy są dostępne "
|
||||
"w menu Start, na pulpicie i w innych lokalizacjach."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Określ dostęp do programów i ich ustawienia domyślne"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Łączy z innymi komputerami, sieciami i Internetem."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Połącz z"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Pokazuje zainstalowane drukarki i faks-drukarki oraz pomaga w dodawaniu "
|
||||
"nowych."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Otwiera centralną lokalizację dla tematów Pomocy, samouczków, narzędzi do "
|
||||
"rozwiązywania problemów i innych usług pomocniczych."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Pomoc i obsługa techniczna"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Otwiera okno, w którym można wybrać opcje wyszukiwania i pracować z jego "
|
||||
"wynikami."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Wyszukaj"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Otwiera program, folder, dokument lub witrynę sieci Web."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Uruchom..."
|
||||
147
shell/taskband/po/pt_BR.po
Normal file
147
shell/taskband/po/pt_BR.po
Normal file
@@ -0,0 +1,147 @@
|
||||
# Portuguese translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Todos os programas"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Abre o navegador da Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Abre o programa de email para envio e leitura de mensagens."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Email"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Iniciar"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Clique aqui para começar"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Fazer logoff"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Fornece opções para fechar programas ou fazer logoff ou para deixar os "
|
||||
"programas em execução e alternar para outro usuário."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Desligar o computador"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Fornece opções para desligar ou reiniciar o computador ou para ativar modos "
|
||||
"de espera ou de hibernação."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Abre a pasta 'Meus documentos', onde você pode armazenar cartas, relatórios, "
|
||||
"anotações e outros tipos de documentos."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Exibe documentos e pastas abertos recentemente."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Abre a pasta 'Minhas imagens', onde você pode armazenar fotos digitais, "
|
||||
"imagens e arquivos gráficos."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Abre a pasta 'Minhas músicas', onde você pode armazenar músicas e outros "
|
||||
"arquivos de áudio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Fornece acesso e informações sobre unidades de disco, câmeras, scanners e "
|
||||
"outros itens de hardware conectados ao computador."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Fornece opções para personalizar a aparência e funcionalidade do computador, "
|
||||
"adicionar ou remover programas e configurar conexões de rede e contas de "
|
||||
"usuário."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Escolhe programas padrão para certas atividades, como navegação na Web ou "
|
||||
"envio de email, e especifica que programas estão acessíveis no menu "
|
||||
"'Iniciar', na área de trabalho e em outros locais."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Definir acesso e padrões do programa"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Conecta este computador a outros computadores e redes e à Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Conectar-se"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Mostra impressoras e impressoras de fax instaladas e ajuda a adicionar novas "
|
||||
"impressoras."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Abre um local central com tópicos da 'Ajuda', tutoriais, soluções de "
|
||||
"problemas e outros serviços de suporte."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Ajuda e suporte"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Abre uma janela onde você pode selecionar opções de pesquisa e trabalhar com "
|
||||
"resultados de pesquisa."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Pesquisar"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Abre um programa, uma pasta, um documento ou um site da Web."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Executar..."
|
||||
150
shell/taskband/po/pt_PT.po
Normal file
150
shell/taskband/po/pt_PT.po
Normal file
@@ -0,0 +1,150 @@
|
||||
# Portuguese translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Todos os programas"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Abre o browser da Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Abre o programa de correio electrónico para que possa enviar ou ler uma "
|
||||
"mensagem."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Correio electrónico"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Iniciar"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Clique aqui para iniciar"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Terminar sessão"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Fornece opções para fechar os programas e terminar sessão ou para deixar os "
|
||||
"programas em execução e mudar de utilizador."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Desligar computador"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Fornece opções para desligar ou reiniciar o computador ou para activar os "
|
||||
"modos 'Suspender' ou 'Hibernar'."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Abre a pasta 'Os meus documentos', onde pode armazenar cartas, relatórios, "
|
||||
"notas e outros tipos de documentos."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Mostra os documentos e pastas abertos recentemente."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Abre a pasta 'As minhas imagens', onde pode armazenar fotos digitais, "
|
||||
"imagens e outros gráficos."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Abre a pasta 'A minha música', onde pode armazenar música e outros ficheiros "
|
||||
"de áudio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Dá acesso a, e informação acerca de, discos rígidos, câmaras, scanners e "
|
||||
"outro hardware ligado ao computador."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Fornece opções para que possa personalizar o aspecto e funcionalidade do "
|
||||
"computador, adicionar ou remover programas e configurar ligações de rede e "
|
||||
"contas de utilizadores."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Escolhe programas predefinidos para certas actividades, tais como navegar na "
|
||||
"Web ou enviar correio electrónico e especifica quais os programas que são "
|
||||
"acessíveis a partir do menu 'Iniciar', 'Ambiente de trabalho' e outros "
|
||||
"locais."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Configurar acesso a programas e predefinições"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Liga a outros computadores, redes e à Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Ligar a"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Mostra as impressoras e as impressoras de fax instaladas e ajuda-o a "
|
||||
"adicionar novas impressoras."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Abre uma localização central para tópicos de ajuda, tutoriais, resolução de "
|
||||
"problemas e outros serviços de suporte."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Ajuda e suporte"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Abre uma janela onde pode escolher opções de procura e trabalhar com os "
|
||||
"resultados da procura."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Procurar"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Abre um programa, pasta, documento ou Web site."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Executar..."
|
||||
149
shell/taskband/po/ro_RO.po
Normal file
149
shell/taskband/po/ro_RO.po
Normal file
@@ -0,0 +1,149 @@
|
||||
# Romanian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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==0 || (n%100 > 0 && n%100 < "
|
||||
"20)) ? 1 : 2;\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Toate programele"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Deschide browserul de Internet."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Deschide programul de poştă electronică pentru a citi și trimite mesaje."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Poştă electronică"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Apăsaţi aici pentru a începe"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Log Off"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Furnizează opţiuni pentru închiderea programelor şi ieşirea din sesiune sau "
|
||||
"pentru lăsarea programelor în execuţie şi comutarea la un alt utilizator."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Închidere computer"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Furnizează opţiuni pentru închiderea şi repornirea computerului sau pentru "
|
||||
"activarea modurilor Stare de veghe sau Hibernare."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Deschide folderul Documentele mele, unde se pot stoca scrisori, rapoarte, "
|
||||
"note şi alte tipuri de documente personale."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Afişează documente şi foldere recent deschise."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Deschide folderul Imaginile mele, unde se pot stoca fotografii digitale, "
|
||||
"imagini şi fişiere grafice."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Deschide folderul Muzica mea, unde se poate stoca muzică şi alte fişiere "
|
||||
"audio."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Oferă informaţii şi se acordă acces la drivere de disc, camere digitale, "
|
||||
"scanere şi alte tipuri de hardware conectate la computer."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Furnizează opţiuni pentru particularizarea aspectului şi funcţionalităţii "
|
||||
"computerului, se adaugă şi se elimină programe şi se configurează conexiuni "
|
||||
"în reţea şi conturi utilizator."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Alege programele implicite pentru anumite activităţi cum ar fi navigarea pe "
|
||||
"Web sau trimiterea de mesaje electronice şi specifică programele care sunt "
|
||||
"accesibile din meniul Start, din spaţiul de lucru şi din alte amplasări."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Setare Acces program şi implicite"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Se face conexiunea la alte computere, reţele şi Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Conectare la"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Afişează imprimantele şi imprimantele fax instalate şi vă ajută să adăugaţi "
|
||||
"altele noi."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Se deschide o amplasare centrală pentru subiectele de Ajutor, asistenţi de "
|
||||
"instruire, depanare şi alte servicii de asistenţă."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Ajutor şi Asistenţă"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Deschide o fereastră unde se pot selecta opţiuni de căutare şi opera cu "
|
||||
"rezultatele căutării."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Căutare"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Deschide un program, un folder, un document sau un site Web."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Executare..."
|
||||
148
shell/taskband/po/ru_RU.po
Normal file
148
shell/taskband/po/ru_RU.po
Normal file
@@ -0,0 +1,148 @@
|
||||
# Russian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Все программы"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Открытие обозревателя Интернета."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Открытие программы электронной почты, позволяющей отправлять и получать "
|
||||
"электронные сообщения."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Интернет"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "Электронная почта"
|
||||
|
||||
msgid "start"
|
||||
msgstr "пуск"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Начните работу с нажатия этой кнопки"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Выход"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Позволяет закрыть программы и завершить сеанс, или оставить программы "
|
||||
"работающими и переключиться на другого пользователя."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Выключение компьютера"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Позволяет выключить компьютер или перезагрузить его, или перейти в ждущий "
|
||||
"или спящий режим."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Открывает папку \"Мои документы\", где можно хранить письма, отчеты, заметки "
|
||||
"и иные типы документов."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Отображение недавно использовавшихся файлов и папок."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Отрывает папку \"Мои рисунки\", где можно хранить цифровые фотографии, "
|
||||
"изображения и иные графические файлы."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Открывает папку \"Моя музыка\", где можно хранить музыкальные или иные "
|
||||
"звуковые файлы."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Доступ и информация о дисках и других устройствах, подключенных к компьютеру."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Позволяет настраивать вид и функциональные возможности компьютера, "
|
||||
"устанавливать и удалять программы, настраивать сетевые подключения и "
|
||||
"учетные записи пользователей."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Выбор программ, используемых по умолчанию, для разных операций, например, "
|
||||
"для обзора Интернета или отправки почты, и разрешение доступа к ним из "
|
||||
"главного меню, с рабочего стола и из других мест."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Выбор программ по умолчанию"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Создание подключений к другим компьютерам, сетям или Интернету."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Подключение"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Отображает уже установленные принтеры и факсы и позволяет добавить новые."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Открытие централизованного хранилища справочных файлов, диагностики и "
|
||||
"устранения неполадок, других служб технической поддержки."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Справка и поддержка"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Открытие окна для выбора параметров поиска и работы с результатами "
|
||||
"выполненного поиска."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Поиск"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Открытие программы, папки, документа или веб-узла."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Выполнить..."
|
||||
146
shell/taskband/po/sk_SK.po
Normal file
146
shell/taskband/po/sk_SK.po
Normal file
@@ -0,0 +1,146 @@
|
||||
# Slovak translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Všetky programy"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Otvorí internetový prehľadávač."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "Otvorí e-mailový program, ktorý umožňuje odosielanie a čítanie správ."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-mail"
|
||||
|
||||
msgid "start"
|
||||
msgstr "štart"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Začnite kliknutím sem."
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Odhlásiť"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Poskytne možnosti na ukončenie programov a odhlásenie alebo prepnutie "
|
||||
"používateľa bez ukončenia programov."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Vypnutie počítača"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Poskytne možnosti na vypnutie alebo reštartovanie počítača a aktivovanie "
|
||||
"úsporného režimu alebo režimu dlhodobého spánku."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Otvorí priečinok Moje dokumenty. Do tohto priečinka môžete ukladať listy, "
|
||||
"správy, poznámky a ďalšie dokumenty."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Zobrazí naposledy otvorené dokumenty a priečinky."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Otvorí priečinok Obrázky. Do tohto priečinka môžete ukladať digitálne "
|
||||
"fotografie, obrázky a grafické súbory."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Otvorí priečinok Hudba. Do tohto priečinka môžete ukladať hudbu a ďalšie "
|
||||
"zvukové súbory."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Poskytne prístup a informácie o diskových jednotkách, fotoaparátoch, "
|
||||
"skeneroch a ďalšom hardvéri, ktorý je pripojený k počítaču."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Umožní prispôsobiť vzhľad a funkčnosť počítača, pridať alebo odstrániť "
|
||||
"programy a nastaviť sieťové pripojenia a používateľské kontá."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Zvolí predvolené programy pre konkrétne činnosti (napr. prehľadávanie webu "
|
||||
"alebo odosielanie e-mailov) a určí, ktoré programy sú prístupné z ponuky "
|
||||
"Štart, pracovnej plochy a ďalších miest."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Prístup k programom a predvolené programy"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Vytvorí pripojenie na iné počítače, siete a Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Pripojenie"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Zobrazí nainštalované tlačiarne, faxové tlačiarne a poskytne pomoc pri "
|
||||
"pridávaní nových."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Otvorí hlavné umiestnenie tém pomocníka, kurzov, riešenia problémov a "
|
||||
"ostatných služieb technickej podpory."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Pomoc a technická podpora"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Otvorí okno, v ktorom môžete vybrať možnosti hľadania a pracovať s "
|
||||
"výsledkami hľadania."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Hľadať"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Spustí program alebo otvorí priečinok, dokument alebo webovú lokalitu."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Spustiť..."
|
||||
148
shell/taskband/po/sl_SI.po
Normal file
148
shell/taskband/po/sl_SI.po
Normal file
@@ -0,0 +1,148 @@
|
||||
# Slovenian translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Vsi programi"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Odpre vaš internetni brskalnik."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Odpre vaš e-poštni program, tako da lahko pošljete ali preberete sporočilo."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-pošta"
|
||||
|
||||
msgid "start"
|
||||
msgstr "start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Če želite začeti, kliknite tu"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Odjavi"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Na voljo vam da možnosti, da zaprete programe in se odjavite ali da programe "
|
||||
"izvajate dalje in preklapljate med uporabniki."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Izklapljanje računalnika"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Na voljo vam da možnosti, da računalnik izklopite ali ponovno zaženete oz. "
|
||||
"da aktivirate stanje pripravljenosti oziroma stanje mirovanja."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Odpre mapo »Moji dokumenti«, kamor lahko shranjujete pisma, poročila, opombe "
|
||||
"in druge dokumente."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Prikaže nedavno odprte dokumente in mape."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Odpre mapo »Moje slike«, kamor lahko shranjujete digitalne fotografije, "
|
||||
"slike in grafične datoteke."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Odpre mapo »Moja glasba«, kamor lahko shranjujete glasbene in druge avdio "
|
||||
"datoteke."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Vašemu računalniku dodeli dostop do diskovnih pogonov, digitalnih "
|
||||
"fotoaparatov, skenerjev in druge strojne opreme ter poda informacije o njih."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Omogoča vam, da prilagodite videz in funkcionalnost vašega računalnika, "
|
||||
"dodajate ali odstranjujete programe in pripravite omrežne povezave ter "
|
||||
"uporabniške račune."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Izbere privzete programe za določene dejavnosti, kot je brskanje po spletu "
|
||||
"ali pošiljanje e-pošte, in določi, kateri programi so dosegljivi v meniju "
|
||||
"Start, na namizju in drugih mestih."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Nastavi dostop do programov in privzete nastavitve"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Vzpostavi povezavo z drugimi računalniki, omrežji in z internetom."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Vzpostavi povezavo z"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Prikaže nameščene tiskalnike in kombinirane naprave ter vam pomaga dodajati "
|
||||
"nove."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Odpre osrednje mesto za teme pomoči, vadnice, odpravljanje težav in druge "
|
||||
"storitve za podporo."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Pomoč in podpora"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Odpre okno, kjer lahko izberete možnosti iskanja in delate z rezultati."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Iskanje"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Odpre program, mapo, dokument ali spletno mesto."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Zaženi ..."
|
||||
144
shell/taskband/po/sv_SE.po
Normal file
144
shell/taskband/po/sv_SE.po
Normal file
@@ -0,0 +1,144 @@
|
||||
# Swedish translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Alla program"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Öppnar din webbläsare."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr ""
|
||||
"Öppnar ditt e-postprogram så att du kan skicka och läsa e-postmeddelanden."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-post"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Start"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Klicka här om du vill starta"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Logga ut"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Alternativ för att stänga av program och logga ut eller för att låta program "
|
||||
"köras medan du byter till en annan användare."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Stäng av datorn"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Alternativ för avstängning, omstart och för aktivering av vilo- och "
|
||||
"vänteläge."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Öppnar mappen Mina dokument där du kan lagra brev, rapporter, anteckningar "
|
||||
"och andra dokument."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Visar nyligen öppnade dokument och mappar."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Öppnar mappen Mina bilder där du kan lagra digitala bilder, foton och "
|
||||
"grafikfiler."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "Öppnar mappen Min musik där du kan lagra musik och andra ljudfiler."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Ger tillgång till och information om diskenheter, kameror, skannrar och "
|
||||
"annan maskinvara som är ansluten till datorn."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Ger dig möjlighet att anpassa datorns utseende och funktioner, lägga till "
|
||||
"och ta bort program samt skapa nätverksanslutningar och användarkonton."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Väljer standardprogram för vissa aktiviteter såsom webbläsning eller e-post, "
|
||||
"och anger vilka program som är tillgängliga från Start-menyn, skrivbordet "
|
||||
"och andra platser."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Ange programåtkomst och standardprogram"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Ansluter till andra datorer, nätverk och till Internet."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Anslut till"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"Visar de skrivare och faxskrivare som är installerade och hjälper dig lägga "
|
||||
"till nya."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Öppnar en central plats för hjälpavsnitt, självstudier, felsökning och andra "
|
||||
"supporttjänster."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Hjälp och support"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Öppnar ett fönster där du kan välja sökalternativ och arbeta med sökresultat."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Sök"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Öppnar ett program, en mapp, ett dokument eller en webbplats."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Kör..."
|
||||
135
shell/taskband/po/th_TH.po
Normal file
135
shell/taskband/po/th_TH.po
Normal file
@@ -0,0 +1,135 @@
|
||||
# Thai translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: th\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "โปรแกรมทั้งหมด"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "เปิดอินเทอร์เน็ตเบราว์เซอร์ของคุณ"
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "เปิดโปรแกรมอีเมลของคุณเพื่อให้คุณสามารถส่งหรืออ่านข้อความได้"
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "อินเทอร์เน็ต"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "อีเมล"
|
||||
|
||||
msgid "start"
|
||||
msgstr "เริ่ม"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "คลิกที่นี่เพื่อเริ่มต้น"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "ออกจากระบบ"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"ให้ตัวเลือกสำหรับปิดโปรแกรมของคุณและออกจากระบบ "
|
||||
"หรือปล่อยให้โปรแกรมของคุณทำงานอยู่และสลับไปยังผู้ใช้อื่น"
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "ปิดสวิตช์เครื่องคอมพิวเตอร์"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"ให้ตัวเลือกสำหรับการปิดหรือเริ่มการทำงานของคอมพิวเตอร์ใหม่ หรือเรียกใช้โหมด 'สแตนด์บาย' "
|
||||
"หรือโหมด 'ไฮเบอร์เนต'"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"เปิดโฟลเดอร์ 'เอกสารของฉัน' ซึ่งคุณสามารถเก็บจดหมาย รายงาน บันทึกย่อ "
|
||||
"และเอกสารประเภทอื่นได้"
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "แสดงเอกสารและโฟลเดอร์ที่เปิดล่าสุด"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr "เปิดโฟลเดอร์ 'รูปภาพของฉัน' ซึ่งคุณสามารถเก็บแฟ้มรูปถ่ายดิจิทัล แฟ้มรูป และแฟ้มกราฟิกได้"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "เปิดโฟลเดอร์ 'เพลงของฉัน' ซึ่งคุณสามารถเก็บแฟ้มดนตรี และแฟ้มเสียงประเภทอื่นได้"
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"ให้เข้าถึง และให้ข้อมูลเกี่ยวกับไดรฟ์ กล้อง สแกนเนอร์ และฮาร์ดแวร์อื่นที่เชื่อมต่อกับคอมพิวเตอร์ของคุณ"
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"ให้ตัวเลือกเพื่อให้คุณสามารถกำหนดลักษณะที่ปรากฏและหน้าที่ของคอมพิวเตอร์ของคุณเอง "
|
||||
"เพิ่มหรือเอาโปรแกรมออก และตั้งค่าการเชื่อมต่อเครือข่ายและบัญชีผู้ใช้"
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"เลือกโปรแกรมเริ่มต้นสำหรับบางกิจกรรม เช่น การเบราว์เว็บหรือการส่งอีเมล "
|
||||
"และระบุโปรแกรมที่จะให้เข้าถึงใด้จากเมนู 'เริ่ม' เดสก์ท็อป หรือตำแหน่งอื่นๆ"
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "ตั้งค่าการเข้าถึงและค่าเริ่มต้นของโปรแกรม"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "เชื่อมต่อไปยังเครื่องคอมพิวเตอร์ เครือข่าย และอินเทอร์เน็ตอื่น"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "เชื่อมต่อไปยัง"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr ""
|
||||
"แสดงเครื่องพิมพ์และเครื่องพิมพ์โทรสารที่ได้รับการติดตั้ง "
|
||||
"และช่วยคุณเพิ่มเครื่องพิมพ์หรือเครื่องพิมพ์โทรสารใหม่"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr "เปิดแหล่งข้อมูลสำหรับหัวข้อวิธีใช้ บทช่วยสอน การแก้ไขปัญหา และบริการช่วยเหลืออื่นๆ"
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "บริการช่วยเหลือและวิธีใช้"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "เปิดหน้าต่างที่คุณสามารถเลือกตัวเลือกการค้นหาและทำงานกับผลลัพท์ของการค้นหาได้"
|
||||
|
||||
msgid "Search"
|
||||
msgstr "ค้นหา"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "เปิดโปรแกรม โฟลเดอร์ เอกสาร หรือเว็บไซต์"
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "เรียกใช้..."
|
||||
144
shell/taskband/po/tr_TR.po
Normal file
144
shell/taskband/po/tr_TR.po
Normal file
@@ -0,0 +1,144 @@
|
||||
# Turkish translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\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"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "Tüm Programlar"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "Internet tarayıcınızı açar."
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "İleti okuyabilmeniz ve gönderebilmeniz için e-posta programınızı açar."
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "E-posta"
|
||||
|
||||
msgid "start"
|
||||
msgstr "Başlat"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "Başlamak için burayı tıklatın"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "Oturumu Kapat"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"Programlarınızı kapatıp oturumu kapatmak veya programları açık bırakıp başka "
|
||||
"bir kullanıcıya geçiş yapmak için seçenekler sağlar."
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "Bilgisayarı Kapat"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr ""
|
||||
"Bilgisayarınızı kapatma, yeniden başlatma ya da Bekleme ve Hazırda Bekleme "
|
||||
"modlarını etkinleştirme seçenekleri sunar."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"Mektupları, raporları, notları, ve diğer belgeleri saklayabileceğiniz "
|
||||
"Belgelerim klasörünü açar."
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "Son açoan belge ve klasörleri gösterir."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr ""
|
||||
"Dijital fotoğrafları, resimleri ve grafik dosyalarını saklayabileceğiniz "
|
||||
"Resimlerim klasörünü açar."
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr ""
|
||||
"Müzik ve diğer ses dosyalarınızı saklayabileceğiniz Müziğim klasörünü açar."
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"Bilgisayarınıza bağlı disk sürücüleri, kameralar, tarayıcılar ve diğer "
|
||||
"donanımla ilgili bilgi ve erişim sağlar."
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"Programlarınızı eklemeniz veya kaldırmanız, ağ ve kullanıcı hesapları "
|
||||
"kurmanız, görünüm ve çalışma özelliklerini özelleştirmeniz için seçenekler "
|
||||
"sağlar."
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"Web taraması, e-posta gönderme gibi belli etkinlikler için varsayılan "
|
||||
"programları seçer ve Başlat menüsü, masaüstü ve diğer yerlerden erişilebilen "
|
||||
"programları belirtir."
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "Program Erişim ve Varsayılanlarını Ayarla"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "Diğer bilgisayarlara, ağa ve Internete bağlar."
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "Bağlan"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr "Yüklü faks ve yazıcıları gösterip yenilerini eklemenize yardımcı olur."
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr ""
|
||||
"Yardım konuları, öğreticiler, sorun giderme ve destek hizmetleri için "
|
||||
"merkezi bir konum açar."
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "Yardım ve Destek"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr ""
|
||||
"Arama seçeneklerini seçebileceğiniz ve arama sonuçları ile çalışabileceğiniz "
|
||||
"bir pencere açar."
|
||||
|
||||
msgid "Search"
|
||||
msgstr "Ara"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "Bir program, klasör, belge veya Web sitesi açar."
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "Çalıştır..."
|
||||
130
shell/taskband/po/zh_CN.po
Normal file
130
shell/taskband/po/zh_CN.po
Normal file
@@ -0,0 +1,130 @@
|
||||
# Chinese translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: zh_CN\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "所有程序(P)"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "打开您的 Internet 浏览器。"
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "打开您的电子邮件程序,这样您就可以发送或阅读邮件。"
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "Internet"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "电子邮件"
|
||||
|
||||
msgid "start"
|
||||
msgstr "开始"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "单击这里开始"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "注销(L)"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr ""
|
||||
"提供关闭程序并注销,或者保持您的程序\n"
|
||||
"运行并切换到另一个用户的选项。"
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "关闭计算机"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr "提供关闭或重新启动计算机,或者从待机或休眠状态激活的选项。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr "打开“我的文档”文件夹,您可以在那里保存信件,报告以及其它文档。"
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "显示最近打开过的文件和文件夹。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr "打开“图片收藏”文件夹,您可以在那里保存数字图片,照片和其它图形文件。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "打开“我的音乐”文件夹,您可以在那里保存音乐和其它音频文件。"
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"提供连接到您的计算机的硬盘驱动器,照相机,扫描仪和其它硬件的访问以及有关信"
|
||||
"息。"
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"提供选项供您自定义计算机的外观和功能,添加或删除程序,设置网络连接和用户帐"
|
||||
"户。"
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"选择执行某些任务的默认程序,例如浏览 Web 和发送电子邮件。指定从「开始」菜单、"
|
||||
"桌面和其它地方可以访问的程序。"
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "设定程序访问和默认值"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "连接到其它计算机,网络和 Internet。"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "连接到(T)"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr "显示安装的打印机和传真打印机,并帮助您添加新的。"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr "为帮助主题、指南、疑难解答和其它支持服务打开一个中心位置。"
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "帮助和支持"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "打开一个窗口,您可以在上面选择查找选项,获得搜索结果。"
|
||||
|
||||
msgid "Search"
|
||||
msgstr "搜索(S)"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "打开一个程序、文件夹、文档或网站。"
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "运行(R)..."
|
||||
128
shell/taskband/po/zh_TW.po
Normal file
128
shell/taskband/po/zh_TW.po
Normal file
@@ -0,0 +1,128 @@
|
||||
# Chinese translations for PACKAGE package.
|
||||
# Copyright (C) 2022 THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# Automatically generated, 2022.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2022-07-20 21:28+0100\n"
|
||||
"PO-Revision-Date: 2022-07-20 21:28+0100\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: zh_TW\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
msgid "All Programs"
|
||||
msgstr "所有程式(P)"
|
||||
|
||||
msgid "Opens your Internet browser."
|
||||
msgstr "開啟您的網際網路瀏覽器。"
|
||||
|
||||
msgid "Opens your e-mail program so you can send or read a message."
|
||||
msgstr "開啟您的電子郵件程式,讓您可以傳送或讀取郵件。"
|
||||
|
||||
msgid "Internet"
|
||||
msgstr "網際網路"
|
||||
|
||||
msgid "E-mail"
|
||||
msgstr "電子郵件"
|
||||
|
||||
msgid "start"
|
||||
msgstr "開始"
|
||||
|
||||
msgid "Click here to begin"
|
||||
msgstr "請按這裡開始操作"
|
||||
|
||||
msgid "Log Off"
|
||||
msgstr "登出(L)"
|
||||
|
||||
msgid ""
|
||||
"Provides options for closing your programs and logging off, or for leaving "
|
||||
"your programs running and switching to another user."
|
||||
msgstr "提供關閉程式和登出的選項、讓您的程式保持在執行狀態並切換成其他使用者。"
|
||||
|
||||
msgid "Turn Off Computer"
|
||||
msgstr "電腦關機"
|
||||
|
||||
msgid ""
|
||||
"Provides options for turning off or restarting your computer, or for "
|
||||
"activating Stand By or Hibernate modes."
|
||||
msgstr "提供您關機、重新啟動電腦或啟動待命或休眠模式等選項。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Documents folder, where you can store letters, reports, notes, "
|
||||
"and other kinds of documents."
|
||||
msgstr ""
|
||||
"開啟 [我的文件] 資料夾,您可以在此存放信件、報告、筆記和其他類型的文件。"
|
||||
|
||||
msgid "Displays recently opened documents and folders."
|
||||
msgstr "顯示最近開啟的文件和資料夾。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Pictures folder, where you can store digital photos, images, "
|
||||
"and graphics files."
|
||||
msgstr "開啟 [我的圖片] 資料夾,您可以在此存放數位相片、影像和圖形檔案。"
|
||||
|
||||
msgid ""
|
||||
"Opens the My Music folder, where you can store music and other audio files."
|
||||
msgstr "開啟 [我的音樂] 資料夾,您可以在此存放音樂和其他音訊檔案。"
|
||||
|
||||
msgid ""
|
||||
"Gives access to, and information about, the disk drives, cameras, scanners, "
|
||||
"and other hardware connected to your computer."
|
||||
msgstr ""
|
||||
"提供存取及關於連接到您的電腦上的磁碟機、照相機、掃描器和其他硬體的資訊。"
|
||||
|
||||
msgid ""
|
||||
"Provides options for you to customize the appearance and functionality of "
|
||||
"your computer, add or remove programs, and set up network connections and "
|
||||
"user accounts."
|
||||
msgstr ""
|
||||
"提供選項,讓您能自訂您電腦的外觀和功能、新增或移除程式,設定網路連線和使用者"
|
||||
"帳戶。"
|
||||
|
||||
msgid ""
|
||||
"Chooses default programs for certain activities, such as Web browsing or "
|
||||
"sending e-mail, and specifies which programs are accessible from the Start "
|
||||
"menu, desktop, and other locations."
|
||||
msgstr ""
|
||||
"選擇網頁瀏覽或傳送電子郵件之類活動的預設程式,並指定哪些程式可以從 [開始] 功"
|
||||
"能表、桌面或其他位置存取。"
|
||||
|
||||
msgid "Set Program Access and Defaults"
|
||||
msgstr "設定程式存取及預設值"
|
||||
|
||||
msgid "Connects to other computers, networks, and the Internet."
|
||||
msgstr "連線到其他的電腦、網路和網際網路。"
|
||||
|
||||
msgid "Connect To"
|
||||
msgstr "連線到(T)"
|
||||
|
||||
msgid "Shows installed printers and fax printers and helps you add new ones."
|
||||
msgstr "顯示已安裝的印表機或傳真印表機,並幫助您新增印表機。"
|
||||
|
||||
msgid ""
|
||||
"Opens a central location for Help topics, tutorials, troubleshooting, and "
|
||||
"other support services."
|
||||
msgstr "為說明主題、教學課程、疑難排解和其他支援服務開啟一個中心位置。"
|
||||
|
||||
msgid "Help and Support"
|
||||
msgstr "說明及支援"
|
||||
|
||||
msgid ""
|
||||
"Opens a window where you can pick search options and work with search "
|
||||
"results."
|
||||
msgstr "開啟視窗,選取搜尋的選項,執行搜尋的結果。"
|
||||
|
||||
msgid "Search"
|
||||
msgstr "搜尋(S)"
|
||||
|
||||
msgid "Opens a program, folder, document, or Web site."
|
||||
msgstr "開啟程式、資料夾、文件或網站。"
|
||||
|
||||
msgid "Run..."
|
||||
msgstr "執行(R)..."
|
||||
19
shell/taskband/res/all.menu
Normal file
19
shell/taskband/res/all.menu
Normal file
@@ -0,0 +1,19 @@
|
||||
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
|
||||
|
||||
<Menu>
|
||||
<DefaultAppDirs/>
|
||||
|
||||
<Layout>
|
||||
<Merge type="all"/>
|
||||
</Layout>
|
||||
|
||||
<Include>
|
||||
<All/>
|
||||
</Include>
|
||||
|
||||
<Exclude>
|
||||
<Category>Settings</Category>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
BIN
shell/taskband/res/fpo-userpic.png
Normal file
BIN
shell/taskband/res/fpo-userpic.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
107
shell/taskband/res/start-menu.menu
Normal file
107
shell/taskband/res/start-menu.menu
Normal file
@@ -0,0 +1,107 @@
|
||||
<!DOCTYPE Menu PUBLIC "-//freedesktop//DTD Menu 1.0//EN"
|
||||
"http://www.freedesktop.org/standards/menu-spec/1.0/menu.dtd">
|
||||
|
||||
<Menu>
|
||||
<DefaultAppDirs/>
|
||||
|
||||
<Menu>
|
||||
<Name>Accessories</Name>
|
||||
<Include>
|
||||
<Category>Utility</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Development</Name>
|
||||
<Include>
|
||||
<Category>Development</Category>
|
||||
</Include>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Education</Name>
|
||||
<Include>
|
||||
<Category>Education</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Games</Name>
|
||||
<Include>
|
||||
<Category>Game</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Graphics</Name>
|
||||
<Include>
|
||||
<Category>Graphics</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Internet</Name>
|
||||
<Include>
|
||||
<Category>Network</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Office</Name>
|
||||
<Include>
|
||||
<Category>Office</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Multimedia</Name>
|
||||
<Include>
|
||||
<Or>
|
||||
<Category>Audio</Category>
|
||||
<Category>AudioVideo</Category>
|
||||
<Category>Video</Category>
|
||||
</Or>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>Science</Name>
|
||||
<Include>
|
||||
<Category>Science</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
|
||||
<Menu>
|
||||
<Name>System</Name>
|
||||
<Include>
|
||||
<Category>System</Category>
|
||||
</Include>
|
||||
<Exclude>
|
||||
<Category>X-XFCE</Category>
|
||||
</Exclude>
|
||||
</Menu>
|
||||
</Menu>
|
||||
112
shell/taskband/src/application.c
Normal file
112
shell/taskband/src/application.c
Normal file
@@ -0,0 +1,112 @@
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "application.h"
|
||||
#include "dispproto.h"
|
||||
#include "window.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _WinTCTaskbandApplicationClass
|
||||
{
|
||||
GtkApplicationClass __parent__;
|
||||
};
|
||||
|
||||
struct _WinTCTaskbandApplication
|
||||
{
|
||||
GtkApplication __parent__;
|
||||
|
||||
GtkWidget* host_window;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void wintc_taskband_application_activate(
|
||||
GApplication* application
|
||||
);
|
||||
static void wintc_taskband_application_startup(
|
||||
GApplication* application
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITION & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE(
|
||||
WinTCTaskbandApplication,
|
||||
wintc_taskband_application,
|
||||
GTK_TYPE_APPLICATION
|
||||
)
|
||||
|
||||
static void wintc_taskband_application_class_init(
|
||||
WinTCTaskbandApplicationClass* klass
|
||||
)
|
||||
{
|
||||
GApplicationClass* application_class = G_APPLICATION_CLASS(klass);
|
||||
|
||||
application_class->activate = wintc_taskband_application_activate;
|
||||
application_class->startup = wintc_taskband_application_startup;
|
||||
}
|
||||
|
||||
static void wintc_taskband_application_init(
|
||||
WINTC_UNUSED(WinTCTaskbandApplication* self)
|
||||
) {}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
WinTCTaskbandApplication* wintc_taskband_application_new(void)
|
||||
{
|
||||
WinTCTaskbandApplication* app;
|
||||
|
||||
g_set_application_name("Taskband");
|
||||
|
||||
app =
|
||||
g_object_new(
|
||||
wintc_taskband_application_get_type(),
|
||||
"application-id", "uk.co.oddmatics.wintc.taskband",
|
||||
NULL
|
||||
);
|
||||
|
||||
return app;
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static void wintc_taskband_application_activate(
|
||||
GApplication* application
|
||||
)
|
||||
{
|
||||
WinTCTaskbandApplication* taskband_app =
|
||||
WINTC_TASKBAND_APPLICATION(application);
|
||||
|
||||
if (taskband_app->host_window != NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
taskband_app->host_window = wintc_taskband_window_new(taskband_app);
|
||||
|
||||
gtk_widget_show_all(taskband_app->host_window);
|
||||
}
|
||||
|
||||
static void wintc_taskband_application_startup(
|
||||
GApplication* application
|
||||
)
|
||||
{
|
||||
// Chain up for gtk init
|
||||
//
|
||||
G_APPLICATION_CLASS(wintc_taskband_application_parent_class)
|
||||
->startup(application);
|
||||
|
||||
// Init APIs at runtime
|
||||
//
|
||||
if (!init_display_protocol_apis())
|
||||
{
|
||||
g_critical("%s", "Failed to resolve display protocol APIs.");
|
||||
g_application_quit(application);
|
||||
}
|
||||
}
|
||||
27
shell/taskband/src/application.h
Normal file
27
shell/taskband/src/application.h
Normal file
@@ -0,0 +1,27 @@
|
||||
#ifndef __APPLICATION_H__
|
||||
#define __APPLICATION_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _WinTCTaskbandApplicationClass WinTCTaskbandApplicationClass;
|
||||
typedef struct _WinTCTaskbandApplication WinTCTaskbandApplication;
|
||||
|
||||
#define TYPE_WINTC_TASKBAND_APPLICATION (wintc_taskband_application_get_type())
|
||||
#define WINTC_TASKBAND_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_WINTC_TASKBAND_APPLICATION, WinTCTaskbandApplication))
|
||||
#define WINTC_TASKBAND_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_WINTC_TASKBAND_APPLICATION, WinTCTaskbandApplicationClass))
|
||||
#define IS_WINTC_TASKBAND_APPLICATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_WINTC_TASKBAND_APPLICATION))
|
||||
#define IS_WINTC_TASKBAND_APPLICATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_WINTC_TASKBAND_APPLICATION))
|
||||
#define WINTC_TASKBAND_APPLICATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_WINTC_TASKBAND_APPLICATION, WinTCTaskbandApplication))
|
||||
|
||||
GType wintc_taskband_application_get_type(void) G_GNUC_CONST;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
WinTCTaskbandApplication* wintc_taskband_application_new(void);
|
||||
|
||||
#endif
|
||||
116
shell/taskband/src/dispproto-wayland.c
Normal file
116
shell/taskband/src/dispproto-wayland.c
Normal file
@@ -0,0 +1,116 @@
|
||||
#include <dlfcn.h>
|
||||
#include <gdk/gdk.h>
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "dispproto.h"
|
||||
#include "dispproto-wayland.h"
|
||||
|
||||
//
|
||||
// PRIVATE ENUMS
|
||||
//
|
||||
typedef enum
|
||||
{
|
||||
GTK_LAYER_SHELL_EDGE_LEFT = 0,
|
||||
GTK_LAYER_SHELL_EDGE_RIGHT,
|
||||
GTK_LAYER_SHELL_EDGE_TOP,
|
||||
GTK_LAYER_SHELL_EDGE_BOTTOM,
|
||||
GTK_LAYER_SHELL_EDGE_ENTRY_NUMBER
|
||||
} GtkLayerShellEdge;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GTK_LAYER_SHELL_LAYER_BACKGROUND = 0,
|
||||
GTK_LAYER_SHELL_LAYER_BOTTOM,
|
||||
GTK_LAYER_SHELL_LAYER_TOP,
|
||||
GTK_LAYER_SHELL_LAYER_OVERLAY,
|
||||
GTK_LAYER_SHELL_LAYER_ENTRY_NUMBER
|
||||
} GtkLayerShellLayer;
|
||||
|
||||
//
|
||||
// RESOLVED FUNCS
|
||||
//
|
||||
void (*p_gtk_layer_auto_exclusive_zone_enable) (
|
||||
GtkWindow* window
|
||||
);
|
||||
void (*p_gtk_layer_init_for_window) (
|
||||
GtkWindow* window
|
||||
);
|
||||
void (*p_gtk_layer_set_anchor) (
|
||||
GtkWindow* window,
|
||||
GtkLayerShellEdge edge,
|
||||
gboolean anchor_to_edge
|
||||
);
|
||||
void (*p_gtk_layer_set_layer) (
|
||||
GtkWindow* window,
|
||||
GtkLayerShellLayer layer
|
||||
);
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void wayland_anchor_taskband_to_bottom(
|
||||
GtkWindow* taskband
|
||||
);
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_wayland_protocol_impl(void)
|
||||
{
|
||||
void* dl_gtk_layer_shell =
|
||||
dlopen("libgtk-layer-shell.so", RTLD_LAZY | RTLD_LOCAL);
|
||||
|
||||
if (dl_gtk_layer_shell == NULL)
|
||||
{
|
||||
g_critical("%s", "Failed to open libgtk-layer-shell for symbols.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Resolve funcs we're using
|
||||
//
|
||||
p_gtk_layer_auto_exclusive_zone_enable =
|
||||
dlsym(dl_gtk_layer_shell, "gtk_layer_auto_exclusive_zone_enable");
|
||||
p_gtk_layer_init_for_window =
|
||||
dlsym(dl_gtk_layer_shell, "gtk_layer_init_for_window");
|
||||
p_gtk_layer_set_anchor =
|
||||
dlsym(dl_gtk_layer_shell, "gtk_layer_set_anchor");
|
||||
p_gtk_layer_set_layer =
|
||||
dlsym(dl_gtk_layer_shell, "gtk_layer_set_layer");
|
||||
|
||||
if (
|
||||
p_gtk_layer_auto_exclusive_zone_enable == NULL ||
|
||||
p_gtk_layer_init_for_window == NULL ||
|
||||
p_gtk_layer_set_anchor == NULL ||
|
||||
p_gtk_layer_set_layer == NULL
|
||||
)
|
||||
{
|
||||
g_critical("%s", "Failed to resolve symbols for GTK layer shell.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// All good, assign the API now
|
||||
//
|
||||
anchor_taskband_to_bottom = &wayland_anchor_taskband_to_bottom;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void wayland_anchor_taskband_to_bottom(
|
||||
GtkWindow* taskband
|
||||
)
|
||||
{
|
||||
static gboolean anchors[] = { TRUE, TRUE, FALSE, TRUE };
|
||||
|
||||
p_gtk_layer_init_for_window(taskband);
|
||||
p_gtk_layer_set_layer(taskband, GTK_LAYER_SHELL_LAYER_BOTTOM);
|
||||
p_gtk_layer_auto_exclusive_zone_enable(taskband);
|
||||
|
||||
for (int i = 0; i < GTK_LAYER_SHELL_EDGE_ENTRY_NUMBER; i++)
|
||||
{
|
||||
p_gtk_layer_set_anchor(taskband, i, anchors[i]);
|
||||
}
|
||||
}
|
||||
11
shell/taskband/src/dispproto-wayland.h
Normal file
11
shell/taskband/src/dispproto-wayland.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef __DISPPROTO_WAYLAND_H__
|
||||
#define __DISPPROTO_WAYLAND_H__
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_wayland_protocol_impl(void);
|
||||
|
||||
#endif
|
||||
117
shell/taskband/src/dispproto-wndmgmt-wnck.c
Normal file
117
shell/taskband/src/dispproto-wndmgmt-wnck.c
Normal file
@@ -0,0 +1,117 @@
|
||||
#include <dlfcn.h>
|
||||
#include <gdk-pixbuf/gdk-pixbuf.h>
|
||||
#include <glib.h>
|
||||
|
||||
#include "dispproto.h"
|
||||
#include "dispproto-wndmgmt-wnck.h"
|
||||
|
||||
//
|
||||
// RESOLVED FUNCS
|
||||
//
|
||||
static WndMgmtWindow* (*p_wnck_screen_get_active_window) (
|
||||
WndMgmtScreen* screen
|
||||
) = NULL;
|
||||
static WndMgmtScreen* (*p_wnck_screen_get_default) (void) = NULL;
|
||||
|
||||
static GdkPixbuf* (*p_wnck_window_get_mini_icon) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
static gchar* (*p_wnck_window_get_name) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
static gboolean (*p_wnck_window_is_skip_tasklist) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
static void (*p_wnck_window_minimize) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
static void (*p_wnck_window_unminimize) (
|
||||
WndMgmtWindow* window,
|
||||
guint32 timestamp
|
||||
) = NULL;
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void wnck_window_unminimize_now(
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_wndmgmt_wnck_impl(void)
|
||||
{
|
||||
void* dl_wnck = dlopen("libwnck-3.so", RTLD_LAZY | RTLD_LOCAL);
|
||||
|
||||
if (dl_wnck == NULL)
|
||||
{
|
||||
g_message("%s", "libwnck not available.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Attempt to load the necessary functions
|
||||
//
|
||||
p_wnck_screen_get_active_window =
|
||||
dlsym(dl_wnck, "wnck_screen_get_active_window");
|
||||
|
||||
p_wnck_screen_get_default =
|
||||
dlsym(dl_wnck, "wnck_screen_get_default");
|
||||
|
||||
p_wnck_window_get_mini_icon =
|
||||
dlsym(dl_wnck, "wnck_window_get_mini_icon");
|
||||
|
||||
p_wnck_window_get_name =
|
||||
dlsym(dl_wnck, "wnck_window_get_name");
|
||||
|
||||
p_wnck_window_is_skip_tasklist =
|
||||
dlsym(dl_wnck, "wnck_window_is_skip_tasklist");
|
||||
|
||||
p_wnck_window_minimize =
|
||||
dlsym(dl_wnck, "wnck_window_minimize");
|
||||
|
||||
p_wnck_window_unminimize =
|
||||
dlsym(dl_wnck, "wnck_window_unminimize");
|
||||
|
||||
// Check all symbols loaded
|
||||
//
|
||||
if (
|
||||
p_wnck_screen_get_active_window == NULL ||
|
||||
p_wnck_screen_get_default == NULL ||
|
||||
p_wnck_window_get_mini_icon == NULL ||
|
||||
p_wnck_window_get_name == NULL ||
|
||||
p_wnck_window_is_skip_tasklist == NULL ||
|
||||
p_wnck_window_minimize == NULL ||
|
||||
p_wnck_window_unminimize == NULL
|
||||
)
|
||||
{
|
||||
g_warning("%s", "libwnck loaded, but not all symbols.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// We're good, implement the API
|
||||
//
|
||||
wndmgmt_screen_get_active_window = p_wnck_screen_get_active_window;
|
||||
wndmgmt_screen_get_default = p_wnck_screen_get_default;
|
||||
wndmgmt_window_get_mini_icon = p_wnck_window_get_mini_icon;
|
||||
wndmgmt_window_get_name = p_wnck_window_get_name;
|
||||
wndmgmt_window_is_skip_tasklist = p_wnck_window_is_skip_tasklist;
|
||||
wndmgmt_window_minimize = p_wnck_window_minimize;
|
||||
wndmgmt_window_unminimize = &wnck_window_unminimize_now;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void wnck_window_unminimize_now(
|
||||
WndMgmtWindow* window
|
||||
)
|
||||
{
|
||||
// FIXME: This throws a warning because we use 0 or GDK_CURRENT_TIME where
|
||||
// it expects an X11 timestamp - it works and I can't be bothered to
|
||||
// resolve this right now
|
||||
//
|
||||
p_wnck_window_unminimize(window, 0);
|
||||
}
|
||||
11
shell/taskband/src/dispproto-wndmgmt-wnck.h
Normal file
11
shell/taskband/src/dispproto-wndmgmt-wnck.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef __DISPPROTO_WNDMGMT_WNCK_H__
|
||||
#define __DISPPROTO_WNDMGMT_WNCK_H__
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_wndmgmt_wnck_impl(void);
|
||||
|
||||
#endif
|
||||
128
shell/taskband/src/dispproto-wndmgmt-xfw.c
Normal file
128
shell/taskband/src/dispproto-wndmgmt-xfw.c
Normal file
@@ -0,0 +1,128 @@
|
||||
#include <dlfcn.h>
|
||||
#include <gdk-pixbuf/gdk-pixbuf.h>
|
||||
#include <glib.h>
|
||||
|
||||
#include "dispproto.h"
|
||||
#include "dispproto-wndmgmt-xfw.h"
|
||||
|
||||
//
|
||||
// RESOLVED FUNCS
|
||||
//
|
||||
static WndMgmtWindow* (*p_xfw_screen_get_active_window) (
|
||||
WndMgmtScreen* screen
|
||||
) = NULL;
|
||||
static WndMgmtScreen* (*p_xfw_screen_get_default) (void) = NULL;
|
||||
|
||||
static GdkPixbuf* (*p_xfw_window_get_icon) (
|
||||
WndMgmtWindow* window,
|
||||
gint size,
|
||||
gint scale
|
||||
) = NULL;
|
||||
static gchar* (*p_xfw_window_get_name) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
static gboolean (*p_xfw_window_is_skip_tasklist) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
static gboolean (*p_xfw_window_set_minimized) (
|
||||
WndMgmtWindow* window,
|
||||
gboolean is_maximized,
|
||||
GError** error
|
||||
) = NULL;
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static GdkPixbuf* xfw_window_get_mini_icon(
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
static void xfw_window_minimize(
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
static void xfw_window_unminimize(
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_wndmgmt_xfw_impl(void)
|
||||
{
|
||||
void* dl_xfw = dlopen("libxfce4windowing-0.so", RTLD_LAZY | RTLD_LOCAL);
|
||||
|
||||
if (dl_xfw == NULL)
|
||||
{
|
||||
g_message("%s", "libxfce4windowing not available.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Attempt to load the necessary functions
|
||||
//
|
||||
p_xfw_screen_get_active_window =
|
||||
dlsym(dl_xfw, "xfw_screen_get_active_window");
|
||||
|
||||
p_xfw_screen_get_default =
|
||||
dlsym(dl_xfw, "xfw_screen_get_default");
|
||||
|
||||
p_xfw_window_get_icon =
|
||||
dlsym(dl_xfw, "xfw_window_get_icon");
|
||||
|
||||
p_xfw_window_get_name =
|
||||
dlsym(dl_xfw, "xfw_window_get_name");
|
||||
|
||||
p_xfw_window_is_skip_tasklist =
|
||||
dlsym(dl_xfw, "xfw_window_is_skip_tasklist");
|
||||
|
||||
p_xfw_window_set_minimized =
|
||||
dlsym(dl_xfw, "xfw_window_set_minimized");
|
||||
|
||||
// Check all symbols loaded
|
||||
//
|
||||
if (
|
||||
p_xfw_screen_get_active_window == NULL ||
|
||||
p_xfw_screen_get_default == NULL ||
|
||||
p_xfw_window_get_icon == NULL ||
|
||||
p_xfw_window_get_name == NULL ||
|
||||
p_xfw_window_is_skip_tasklist == NULL ||
|
||||
p_xfw_window_set_minimized == NULL
|
||||
)
|
||||
{
|
||||
g_warning("%s", "libxfce4windowing loaded, but not all symbols.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// We're good, implement the API
|
||||
//
|
||||
wndmgmt_screen_get_active_window = p_xfw_screen_get_active_window;
|
||||
wndmgmt_screen_get_default = p_xfw_screen_get_default;
|
||||
wndmgmt_window_get_mini_icon = &xfw_window_get_mini_icon;
|
||||
wndmgmt_window_get_name = p_xfw_window_get_name;
|
||||
wndmgmt_window_is_skip_tasklist = p_xfw_window_is_skip_tasklist;
|
||||
wndmgmt_window_minimize = &xfw_window_minimize;
|
||||
wndmgmt_window_unminimize = &xfw_window_unminimize;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static GdkPixbuf* xfw_window_get_mini_icon(
|
||||
WndMgmtWindow* window
|
||||
)
|
||||
{
|
||||
return p_xfw_window_get_icon(window, 16, 1);
|
||||
}
|
||||
|
||||
static void xfw_window_minimize(
|
||||
WndMgmtWindow* window
|
||||
)
|
||||
{
|
||||
p_xfw_window_set_minimized(window, TRUE, NULL);
|
||||
}
|
||||
|
||||
static void xfw_window_unminimize(
|
||||
WndMgmtWindow* window
|
||||
)
|
||||
{
|
||||
p_xfw_window_set_minimized(window, FALSE, NULL);
|
||||
}
|
||||
11
shell/taskband/src/dispproto-wndmgmt-xfw.h
Normal file
11
shell/taskband/src/dispproto-wndmgmt-xfw.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef __DISPPROTO_WNDMGMT_XFW_H__
|
||||
#define __DISPPROTO_WNDMGMT_XFW_H__
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_wndmgmt_xfw_impl(void);
|
||||
|
||||
#endif
|
||||
142
shell/taskband/src/dispproto-x11.c
Normal file
142
shell/taskband/src/dispproto-x11.c
Normal file
@@ -0,0 +1,142 @@
|
||||
#include <gdk/gdk.h>
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "dispproto.h"
|
||||
#include "dispproto-x11.h"
|
||||
#include "taskband.h"
|
||||
|
||||
//
|
||||
// STRUCTURE DEFINITIONS
|
||||
//
|
||||
struct X11Struts
|
||||
{
|
||||
gulong left;
|
||||
gulong right;
|
||||
gulong top;
|
||||
gulong bottom;
|
||||
|
||||
gulong left_start_y;
|
||||
gulong left_end_y;
|
||||
|
||||
gulong right_start_y;
|
||||
gulong right_end_y;
|
||||
|
||||
gulong top_start_x;
|
||||
gulong top_end_x;
|
||||
|
||||
gulong bottom_start_x;
|
||||
gulong bottom_end_x;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void x11_anchor_taskband_to_bottom(
|
||||
GtkWindow* taskband
|
||||
);
|
||||
|
||||
static void on_taskband_realized(
|
||||
GtkWidget* self,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_x11_protocol_impl(void)
|
||||
{
|
||||
anchor_taskband_to_bottom = &x11_anchor_taskband_to_bottom;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void x11_anchor_taskband_to_bottom(
|
||||
GtkWindow* taskband
|
||||
)
|
||||
{
|
||||
g_signal_connect(
|
||||
taskband,
|
||||
"realize",
|
||||
G_CALLBACK(on_taskband_realized),
|
||||
NULL
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static void on_taskband_realized(
|
||||
GtkWidget* self,
|
||||
WINTC_UNUSED(gpointer user_data)
|
||||
)
|
||||
{
|
||||
GdkAtom cardinal_atom;
|
||||
GdkDisplay* display = gdk_display_get_default();
|
||||
GdkRectangle geometry;
|
||||
GdkMonitor* monitor = NULL;
|
||||
int monitor_count = gdk_display_get_n_monitors(display);
|
||||
GdkAtom net_wm_strut_partial_atom;
|
||||
int screen_bottom = 0;
|
||||
|
||||
cardinal_atom =
|
||||
gdk_atom_intern_static_string("CARDINAL");
|
||||
net_wm_strut_partial_atom =
|
||||
gdk_atom_intern_static_string("_NET_WM_STRUT_PARTIAL");
|
||||
|
||||
struct X11Struts struts = { 0 };
|
||||
|
||||
for (int i = 0; i < monitor_count; i++)
|
||||
{
|
||||
int monitor_bottom = 0;
|
||||
GdkMonitor* monitor_i = gdk_display_get_monitor(display, i);
|
||||
|
||||
if (monitor == NULL || gdk_monitor_is_primary(monitor_i))
|
||||
{
|
||||
monitor = monitor_i;
|
||||
}
|
||||
|
||||
// Update screen bottom
|
||||
//
|
||||
gdk_monitor_get_geometry(monitor_i, &geometry);
|
||||
|
||||
monitor_bottom = geometry.y + geometry.height;
|
||||
|
||||
if (monitor_bottom > screen_bottom)
|
||||
{
|
||||
screen_bottom = monitor_bottom;
|
||||
}
|
||||
}
|
||||
|
||||
gdk_monitor_get_geometry(monitor, &geometry);
|
||||
|
||||
gtk_window_set_default_size(
|
||||
GTK_WINDOW(self),
|
||||
geometry.width,
|
||||
TASKBAND_ROW_HEIGHT
|
||||
);
|
||||
gtk_window_move(
|
||||
GTK_WINDOW(self),
|
||||
geometry.x,
|
||||
geometry.y + geometry.height - TASKBAND_ROW_HEIGHT
|
||||
);
|
||||
|
||||
struts.bottom =
|
||||
screen_bottom - (geometry.y + geometry.height) + TASKBAND_ROW_HEIGHT;
|
||||
struts.bottom_start_x = geometry.x;
|
||||
struts.bottom_end_x = geometry.x + geometry.width;
|
||||
|
||||
gdk_property_change(
|
||||
gtk_widget_get_window(self),
|
||||
net_wm_strut_partial_atom,
|
||||
cardinal_atom,
|
||||
32,
|
||||
GDK_PROP_MODE_REPLACE,
|
||||
(guchar*) &struts,
|
||||
sizeof (struct X11Struts) / sizeof (gulong)
|
||||
);
|
||||
}
|
||||
11
shell/taskband/src/dispproto-x11.h
Normal file
11
shell/taskband/src/dispproto-x11.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef __DISPPROTO_X11_H__
|
||||
#define __DISPPROTO_X11_H__
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gboolean init_x11_protocol_impl(void);
|
||||
|
||||
#endif
|
||||
146
shell/taskband/src/dispproto.c
Normal file
146
shell/taskband/src/dispproto.c
Normal file
@@ -0,0 +1,146 @@
|
||||
#include <dlfcn.h>
|
||||
#include <gdk/gdk.h>
|
||||
#include <gdk-pixbuf/gdk-pixbuf.h>
|
||||
#include <glib.h>
|
||||
|
||||
#include "dispproto.h"
|
||||
#include "dispproto-wayland.h"
|
||||
#include "dispproto-x11.h"
|
||||
#include "dispproto-wndmgmt-wnck.h"
|
||||
#include "dispproto-wndmgmt-xfw.h"
|
||||
|
||||
//
|
||||
// STATIC DATA
|
||||
//
|
||||
static TaskbandDisplayProtocol s_dispproto;
|
||||
|
||||
//
|
||||
// RESOLVED FUNCS
|
||||
//
|
||||
static GType (*p_gdk_x11_display_get_type) (void) = NULL;
|
||||
static GType (*p_gdk_wayland_display_get_type) (void) = NULL;
|
||||
|
||||
void (*anchor_taskband_to_bottom)(
|
||||
GtkWindow* taskband
|
||||
) = NULL;
|
||||
|
||||
WndMgmtWindow* (*wndmgmt_screen_get_active_window) (
|
||||
WndMgmtScreen* screen
|
||||
) = NULL;
|
||||
WndMgmtScreen* (*wndmgmt_screen_get_default) (void) = NULL;
|
||||
|
||||
GdkPixbuf* (*wndmgmt_window_get_mini_icon) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
gchar* (*wndmgmt_window_get_name) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
gboolean (*wndmgmt_window_is_skip_tasklist) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
void (*wndmgmt_window_minimize) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
void (*wndmgmt_window_unminimize) (
|
||||
WndMgmtWindow* window
|
||||
) = NULL;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
TaskbandDisplayProtocol get_display_protocol_in_use(void)
|
||||
{
|
||||
return s_dispproto;
|
||||
}
|
||||
|
||||
gboolean init_display_protocol_apis(void)
|
||||
{
|
||||
void* dl_gdk = dlopen("libgdk-3.so", RTLD_LAZY | RTLD_LOCAL);
|
||||
|
||||
if (dl_gdk == NULL)
|
||||
{
|
||||
g_critical("%s", "Failed to open libgdk for symbols.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Resolve GObject type codes for the displays
|
||||
//
|
||||
p_gdk_x11_display_get_type = dlsym(dl_gdk, "gdk_x11_display_get_type");
|
||||
p_gdk_wayland_display_get_type = dlsym(dl_gdk, "gdk_wayland_display_get_type");
|
||||
|
||||
if (
|
||||
p_gdk_x11_display_get_type == NULL &&
|
||||
p_gdk_wayland_display_get_type == NULL
|
||||
)
|
||||
{
|
||||
g_critical("%s", "Unable to resolve X11 nor Wayland symbols in GDK.");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// What is our display?
|
||||
//
|
||||
GdkDisplay* display = gdk_display_get_default();
|
||||
|
||||
if (
|
||||
p_gdk_x11_display_get_type != NULL &&
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE((display), p_gdk_x11_display_get_type()))
|
||||
)
|
||||
{
|
||||
s_dispproto = DISPPROTO_X11;
|
||||
|
||||
if (!init_x11_protocol_impl())
|
||||
{
|
||||
g_critical("%s", "Failed to initialize X11 implementation.");
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
else if (
|
||||
p_gdk_wayland_display_get_type != NULL &&
|
||||
(G_TYPE_CHECK_INSTANCE_TYPE((display), p_gdk_wayland_display_get_type()))
|
||||
)
|
||||
{
|
||||
s_dispproto = DISPPROTO_WAYLAND;
|
||||
|
||||
if (!init_wayland_protocol_impl())
|
||||
{
|
||||
g_critical("%s", "Failed to initialize Wayland implementation.");
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
g_critical("%s", "Can't determine display type, not X11 or Wayland?");
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// Window management stuff, we prioritise loading xfce4windowing because it
|
||||
// is the future - failing that we try WNCK, but only for X cos It Don't
|
||||
// Work On Wayland! (TM)
|
||||
//
|
||||
if (!init_wndmgmt_xfw_impl())
|
||||
{
|
||||
if (get_display_protocol_in_use() == DISPPROTO_WAYLAND)
|
||||
{
|
||||
// It's over for Wayland!
|
||||
//
|
||||
g_critical(
|
||||
"%s",
|
||||
"libxfce4windowing not available, cannot continue on Wayland."
|
||||
);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (!init_wndmgmt_wnck_impl())
|
||||
{
|
||||
// No WNCK! Computer over! Disaster = very yes!
|
||||
//
|
||||
g_critical(
|
||||
"%s",
|
||||
"libwnck not available, cannot continue."
|
||||
);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
54
shell/taskband/src/dispproto.h
Normal file
54
shell/taskband/src/dispproto.h
Normal file
@@ -0,0 +1,54 @@
|
||||
#ifndef __DISPPROTO_H__
|
||||
#define __DISPPROTO_H__
|
||||
|
||||
#include <gdk-pixbuf/gdk-pixbuf.h>
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
//
|
||||
// PUBLIC DEFINES
|
||||
//
|
||||
#define WndMgmtScreen void
|
||||
#define WndMgmtWindow void
|
||||
|
||||
//
|
||||
// PUBLIC ENUMS
|
||||
//
|
||||
typedef enum
|
||||
{
|
||||
DISPPROTO_X11,
|
||||
DISPPROTO_WAYLAND
|
||||
} TaskbandDisplayProtocol;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
TaskbandDisplayProtocol get_display_protocol_in_use(void);
|
||||
gboolean init_display_protocol_apis(void);
|
||||
|
||||
extern void (*anchor_taskband_to_bottom) (
|
||||
GtkWindow* taskband
|
||||
);
|
||||
|
||||
extern WndMgmtWindow* (*wndmgmt_screen_get_active_window) (
|
||||
WndMgmtScreen* screen
|
||||
);
|
||||
extern WndMgmtScreen* (*wndmgmt_screen_get_default) (void);
|
||||
|
||||
extern GdkPixbuf* (*wndmgmt_window_get_mini_icon) (
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
extern gchar* (*wndmgmt_window_get_name) (
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
extern gboolean (*wndmgmt_window_is_skip_tasklist) (
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
extern void (*wndmgmt_window_minimize) (
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
extern void (*wndmgmt_window_unminimize) (
|
||||
WndMgmtWindow* window
|
||||
);
|
||||
|
||||
#endif
|
||||
29
shell/taskband/src/main.c
Normal file
29
shell/taskband/src/main.c
Normal file
@@ -0,0 +1,29 @@
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <locale.h>
|
||||
|
||||
#include "application.h"
|
||||
#include "meta.h"
|
||||
|
||||
int main(
|
||||
int argc,
|
||||
char* argv[]
|
||||
)
|
||||
{
|
||||
// Set up locales
|
||||
//
|
||||
setlocale(LC_ALL, "");
|
||||
bindtextdomain(PKG_NAME, "/usr/share/locale");
|
||||
textdomain(PKG_NAME);
|
||||
|
||||
// Launch application
|
||||
//
|
||||
WinTCTaskbandApplication* app = wintc_taskband_application_new();
|
||||
int status;
|
||||
|
||||
status = g_application_run(G_APPLICATION(app), argc, argv);
|
||||
|
||||
g_object_unref(app);
|
||||
|
||||
return status;
|
||||
}
|
||||
6
shell/taskband/src/res/resources.xml
Normal file
6
shell/taskband/src/res/resources.xml
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<gresources>
|
||||
<gresource prefix="/uk/oddmatics/wintc/taskband">
|
||||
<file>start-menu.css</file>
|
||||
</gresource>
|
||||
</gresources>
|
||||
58
shell/taskband/src/res/start-menu.css
Normal file
58
shell/taskband/src/res/start-menu.css
Normal file
@@ -0,0 +1,58 @@
|
||||
.xp-start-button .lower
|
||||
{
|
||||
font-size: 0pt;
|
||||
}
|
||||
|
||||
box > menubar > menuitem > box > image
|
||||
{
|
||||
margin: 0px 6px 0px 2px;
|
||||
}
|
||||
|
||||
box > menubar > separator
|
||||
{
|
||||
margin: 4px 0px;
|
||||
}
|
||||
|
||||
menuitem.xp-start-all-programs
|
||||
{
|
||||
min-height: 32px;
|
||||
}
|
||||
|
||||
menuitem.xp-start-all-programs > box
|
||||
{
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
separator.xp-start-all-programs
|
||||
{
|
||||
margin-top: 40px;
|
||||
}
|
||||
|
||||
.xp-start-logoffpane button
|
||||
{
|
||||
margin: 8px 3px;
|
||||
}
|
||||
|
||||
.xp-start-logoffpane button:last-child
|
||||
{
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.xp-start-userpane box
|
||||
{
|
||||
background-size: 100% 100%;
|
||||
box-shadow: 0px 0px 2px 0px rgba(0,0,0,0.75);
|
||||
margin: 10px 14px 10px 10px;
|
||||
min-height: 48px;
|
||||
min-width: 48px;
|
||||
}
|
||||
|
||||
.xp-start-userpane label
|
||||
{
|
||||
font-size: 16pt;
|
||||
}
|
||||
|
||||
.xp-start-vuserpane label
|
||||
{
|
||||
font-size: 0pt;
|
||||
}
|
||||
39
shell/taskband/src/start/action.c
Normal file
39
shell/taskband/src/start/action.c
Normal file
@@ -0,0 +1,39 @@
|
||||
#include <gdk/gdk.h>
|
||||
#include <glib.h>
|
||||
#include <wintc-comgtk.h>
|
||||
#include <wintc-exec.h>
|
||||
|
||||
#include "action.h"
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
void launch_action(
|
||||
WinTCAction action_id
|
||||
)
|
||||
{
|
||||
GError* error = NULL;
|
||||
|
||||
if (!wintc_launch_action(action_id, &error))
|
||||
{
|
||||
wintc_nice_error_and_clear(&error);
|
||||
}
|
||||
}
|
||||
|
||||
void launch_command(
|
||||
const gchar* command
|
||||
)
|
||||
{
|
||||
if (command == NULL)
|
||||
{
|
||||
g_error("No command specified.");
|
||||
return;
|
||||
}
|
||||
|
||||
GError* error = NULL;
|
||||
|
||||
if (!wintc_launch_command(command, &error))
|
||||
{
|
||||
wintc_nice_error_and_clear(&error);
|
||||
}
|
||||
}
|
||||
15
shell/taskband/src/start/action.h
Normal file
15
shell/taskband/src/start/action.h
Normal file
@@ -0,0 +1,15 @@
|
||||
#ifndef __ACTION_H__
|
||||
#define __ACTION_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <wintc-exec.h>
|
||||
|
||||
void launch_action(
|
||||
WinTCAction action_id
|
||||
);
|
||||
|
||||
void launch_command(
|
||||
const gchar* command
|
||||
);
|
||||
|
||||
#endif
|
||||
175
shell/taskband/src/start/placeslist.c
Normal file
175
shell/taskband/src/start/placeslist.c
Normal file
@@ -0,0 +1,175 @@
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
#include <wintc-exec.h>
|
||||
|
||||
#include "startmenuitem.h"
|
||||
#include "placeslist.h"
|
||||
#include "util.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _PlacesListClass
|
||||
{
|
||||
GtkMenuBarClass __parent__;
|
||||
};
|
||||
|
||||
struct _PlacesList
|
||||
{
|
||||
GtkMenuBar __parent__;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void places_list_finalize(
|
||||
GObject* object
|
||||
);
|
||||
|
||||
static void places_list_append_item(
|
||||
PlacesList* places_list,
|
||||
WinTCAction action_id,
|
||||
gboolean significant
|
||||
);
|
||||
|
||||
static void places_list_append_separator(
|
||||
PlacesList* places_list
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITION & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE(PlacesList, places_list, GTK_TYPE_MENU_BAR)
|
||||
|
||||
static void places_list_class_init(
|
||||
PlacesListClass* klass
|
||||
)
|
||||
{
|
||||
GObjectClass* gclass = G_OBJECT_CLASS(klass);
|
||||
|
||||
gclass->finalize = places_list_finalize;
|
||||
}
|
||||
|
||||
static void places_list_init(
|
||||
PlacesList* self
|
||||
)
|
||||
{
|
||||
// Set up structure
|
||||
//
|
||||
gtk_menu_bar_set_pack_direction(
|
||||
GTK_MENU_BAR(self),
|
||||
GTK_PACK_DIRECTION_TTB
|
||||
);
|
||||
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_MYDOCS,
|
||||
TRUE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_MYRECENTS,
|
||||
TRUE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_MYPICS,
|
||||
TRUE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_MYMUSIC,
|
||||
TRUE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_MYCOMP,
|
||||
TRUE
|
||||
);
|
||||
|
||||
places_list_append_separator(self);
|
||||
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_CONTROL,
|
||||
FALSE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_MIMEMGMT,
|
||||
FALSE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_CONNECTTO,
|
||||
FALSE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_PRINTERS,
|
||||
FALSE
|
||||
);
|
||||
|
||||
places_list_append_separator(self);
|
||||
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_HELP,
|
||||
FALSE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_SEARCH,
|
||||
FALSE
|
||||
);
|
||||
places_list_append_item(
|
||||
self,
|
||||
WINTC_ACTION_RUN,
|
||||
FALSE
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// FINALIZE
|
||||
//
|
||||
static void places_list_finalize(
|
||||
GObject* object
|
||||
)
|
||||
{
|
||||
(*G_OBJECT_CLASS(places_list_parent_class)->finalize) (object);
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void places_list_append_item(
|
||||
PlacesList* places_list,
|
||||
WinTCAction action_id,
|
||||
gboolean significant
|
||||
)
|
||||
{
|
||||
GtkWidget* item = start_menu_item_new_from_action(action_id);
|
||||
|
||||
// If the item is significant, add the style
|
||||
//
|
||||
if (significant)
|
||||
{
|
||||
wintc_widget_add_style_class(item, "significant");
|
||||
}
|
||||
|
||||
// FIXME: Shift 24 size to constant
|
||||
//
|
||||
start_menu_item_set_icon_size(START_MENU_ITEM(item), 24);
|
||||
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(places_list), item);
|
||||
}
|
||||
|
||||
static void places_list_append_separator(
|
||||
PlacesList* places_list
|
||||
)
|
||||
{
|
||||
GtkWidget* separator = gtk_separator_menu_item_new();
|
||||
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(places_list), separator);
|
||||
}
|
||||
26
shell/taskband/src/start/placeslist.h
Normal file
26
shell/taskband/src/start/placeslist.h
Normal file
@@ -0,0 +1,26 @@
|
||||
#ifndef __PLACESLIST_H__
|
||||
#define __PLACESLIST_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _PlacesListClass PlacesListClass;
|
||||
typedef struct _PlacesList PlacesList;
|
||||
|
||||
#define TYPE_PLACES_LIST (places_list_get_type())
|
||||
#define PLACES_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_PLACES_LIST, PlacesList))
|
||||
#define PLACES_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_PLACES_LIST, PlacesListClass))
|
||||
#define IS_PLACES_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_PLACES_LIST))
|
||||
#define IS_PLACES_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_PLACES_LIST))
|
||||
#define PLACES_LIST_GET_CLASS (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_PLACES_LIST, PlacesListClass))
|
||||
|
||||
GType places_list_get_type(void) G_GNUC_CONST;
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
||||
283
shell/taskband/src/start/programslist.c
Normal file
283
shell/taskband/src/start/programslist.c
Normal file
@@ -0,0 +1,283 @@
|
||||
#include <garcon/garcon.h>
|
||||
#include <garcon-gtk/garcon-gtk.h>
|
||||
#include <gio/gdesktopappinfo.h>
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
#include <wintc-exec.h>
|
||||
|
||||
#include "../meta.h"
|
||||
#include "programslist.h"
|
||||
#include "startmenuitem.h"
|
||||
#include "util.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _ProgramsListClass
|
||||
{
|
||||
GtkMenuBarClass __parent__;
|
||||
};
|
||||
|
||||
struct _ProgramsList
|
||||
{
|
||||
GtkMenuBar __parent__;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void programs_list_finalize(
|
||||
GObject* object
|
||||
);
|
||||
|
||||
static void programs_list_append_all_programs_item(
|
||||
ProgramsList* programs_list
|
||||
);
|
||||
static void programs_list_append_default_items(
|
||||
ProgramsList* programs_list
|
||||
);
|
||||
static void programs_list_append_separator(
|
||||
ProgramsList* programs_list,
|
||||
const gchar* style_class
|
||||
);
|
||||
static void programs_list_append_top_items(
|
||||
ProgramsList* programs_list,
|
||||
gint count
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITION & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE(ProgramsList, programs_list, GTK_TYPE_MENU_BAR)
|
||||
|
||||
static void programs_list_class_init(
|
||||
ProgramsListClass* klass
|
||||
)
|
||||
{
|
||||
GObjectClass* gclass = G_OBJECT_CLASS(klass);
|
||||
|
||||
gclass->finalize = programs_list_finalize;
|
||||
}
|
||||
|
||||
static void programs_list_init(
|
||||
ProgramsList* self
|
||||
)
|
||||
{
|
||||
// Set up structure
|
||||
//
|
||||
gtk_menu_bar_set_pack_direction(
|
||||
GTK_MENU_BAR(self),
|
||||
GTK_PACK_DIRECTION_TTB
|
||||
);
|
||||
|
||||
programs_list_refresh(self);
|
||||
}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
void programs_list_refresh(
|
||||
ProgramsList* programs_list
|
||||
)
|
||||
{
|
||||
programs_list_append_default_items(programs_list);
|
||||
|
||||
programs_list_append_separator(programs_list, NULL);
|
||||
|
||||
programs_list_append_top_items(programs_list, 6);
|
||||
|
||||
programs_list_append_separator(programs_list, "xp-start-all-programs");
|
||||
|
||||
programs_list_append_all_programs_item(programs_list);
|
||||
}
|
||||
|
||||
//
|
||||
// FINALIZE
|
||||
//
|
||||
static void programs_list_finalize(
|
||||
GObject* object
|
||||
)
|
||||
{
|
||||
(*G_OBJECT_CLASS(programs_list_parent_class)->finalize) (object);
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void programs_list_append_all_programs_item(
|
||||
ProgramsList* programs_list
|
||||
)
|
||||
{
|
||||
GtkWidget* item = gtk_menu_item_new();
|
||||
|
||||
//
|
||||
// The layout of the item contents is such that we can have the text and
|
||||
// arrow centered
|
||||
//
|
||||
// We have an outer box, which contains the label and a box that represents
|
||||
// the arrow (should the theme decide to style one)
|
||||
//
|
||||
|
||||
// Outer box
|
||||
//
|
||||
GtkWidget* outer_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
gtk_widget_set_halign(outer_box, GTK_ALIGN_CENTER);
|
||||
|
||||
// All programs text
|
||||
//
|
||||
GtkWidget* all_programs_label = gtk_label_new(_("All Programs"));
|
||||
|
||||
// 'Arrow' box
|
||||
//
|
||||
GtkWidget* arrow_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
// Set garcon menu
|
||||
//
|
||||
GarconMenu* programs_menu = garcon_menu_new_for_path(
|
||||
"/usr/share/wintc/shell-res/start-menu.menu"
|
||||
);
|
||||
GtkWidget* programs_submenu = garcon_gtk_menu_new(programs_menu);
|
||||
|
||||
gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), programs_submenu);
|
||||
|
||||
// Set style
|
||||
//
|
||||
wintc_widget_add_style_class(item, "xp-start-all-programs");
|
||||
wintc_widget_add_style_class(arrow_box, "arrow");
|
||||
|
||||
// Box up
|
||||
//
|
||||
gtk_box_pack_start(GTK_BOX(outer_box), all_programs_label, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(outer_box), arrow_box, FALSE, FALSE, 0);
|
||||
gtk_container_add(GTK_CONTAINER(item), outer_box);
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(programs_list), item);
|
||||
}
|
||||
|
||||
static void programs_list_append_default_items(
|
||||
ProgramsList* programs_list
|
||||
)
|
||||
{
|
||||
const gchar* imsg = _("Opens your Internet browser.");
|
||||
const gchar* emsg = _("Opens your e-mail program so you can send or read a message.");
|
||||
|
||||
// Load desktop entries and create menu items
|
||||
//
|
||||
GDesktopAppInfo* internet_entry = wintc_query_mime_handler(
|
||||
"x-scheme-handler/http",
|
||||
NULL
|
||||
);
|
||||
GDesktopAppInfo* email_entry = wintc_query_mime_handler(
|
||||
"x-scheme-handler/mailto",
|
||||
NULL
|
||||
);
|
||||
|
||||
//
|
||||
// FIXME: Handle NULL entries here! ATM there is a bodge in startmenuitem.c, which
|
||||
// isn't really the right place for it (since in future, the desktop entry
|
||||
// constructor could be used for pinned items!)
|
||||
//
|
||||
// (Also we throw away the error, it should be handled as well ofc, I'm too
|
||||
// lazy to do that this evening)
|
||||
//
|
||||
|
||||
GtkWidget* internet_item = start_menu_item_new_from_desktop_entry(
|
||||
internet_entry,
|
||||
_("Internet"),
|
||||
imsg
|
||||
);
|
||||
GtkWidget* email_item = start_menu_item_new_from_desktop_entry(
|
||||
email_entry,
|
||||
_("E-mail"),
|
||||
emsg
|
||||
);
|
||||
|
||||
// FIXME: Shift 32 size to constant
|
||||
//
|
||||
start_menu_item_set_icon_size(START_MENU_ITEM(internet_item), 32);
|
||||
start_menu_item_set_icon_size(START_MENU_ITEM(email_item), 32);
|
||||
|
||||
g_clear_object(&internet_entry);
|
||||
g_clear_object(&email_entry);
|
||||
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(programs_list), internet_item);
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(programs_list), email_item);
|
||||
}
|
||||
|
||||
static void programs_list_append_separator(
|
||||
ProgramsList* programs_list,
|
||||
const gchar* style_class
|
||||
)
|
||||
{
|
||||
GtkWidget* separator = gtk_separator_menu_item_new();
|
||||
|
||||
if (style_class != NULL)
|
||||
{
|
||||
wintc_widget_add_style_class(separator, style_class);
|
||||
}
|
||||
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(programs_list), separator);
|
||||
}
|
||||
|
||||
static void programs_list_append_top_items(
|
||||
ProgramsList* programs_list,
|
||||
gint count
|
||||
)
|
||||
{
|
||||
GarconMenu* all_entries = garcon_menu_new_for_path(
|
||||
"/usr/share/wintc/shell-res/all.menu"
|
||||
);
|
||||
GError* load_error = NULL;
|
||||
|
||||
if (!garcon_menu_load(all_entries, NULL, &load_error))
|
||||
{
|
||||
wintc_log_error_and_clear(&load_error);
|
||||
return;
|
||||
}
|
||||
|
||||
// FIXME: In future we will need some >>>algorithm<<< to come up with a 'top'
|
||||
// programs list to display here, and also reserve the last slot for the
|
||||
// latest newly added program, if any
|
||||
//
|
||||
// For now we simply grab the first items that are pulled in via the
|
||||
// all.menu file
|
||||
//
|
||||
GList* elements = garcon_menu_get_elements(all_entries);
|
||||
GList* li = elements;
|
||||
gint i = 0;
|
||||
|
||||
GtkWidget* menu_item;
|
||||
|
||||
while (i < count && li != NULL)
|
||||
{
|
||||
if (
|
||||
GARCON_IS_MENU_ITEM(li->data) &&
|
||||
!garcon_menu_item_get_no_display(li->data)
|
||||
)
|
||||
{
|
||||
menu_item =
|
||||
start_menu_item_new_from_garcon_item(
|
||||
GARCON_MENU_ITEM(li->data),
|
||||
NULL,
|
||||
NULL
|
||||
);
|
||||
|
||||
// FIXME: Shift 32 size to constant
|
||||
//
|
||||
start_menu_item_set_icon_size(START_MENU_ITEM(menu_item), 32);
|
||||
|
||||
gtk_menu_shell_append(GTK_MENU_SHELL(programs_list), menu_item);
|
||||
|
||||
// We only count items we actually added to the increment
|
||||
//
|
||||
i++;
|
||||
}
|
||||
|
||||
li = li->next;
|
||||
}
|
||||
|
||||
g_list_free(g_steal_pointer(&elements));
|
||||
g_clear_object(&all_entries);
|
||||
}
|
||||
33
shell/taskband/src/start/programslist.h
Normal file
33
shell/taskband/src/start/programslist.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef __PROGRAMSLIST_H__
|
||||
#define __PROGRAMSLIST_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _ProgramsListClass ProgramsListClass;
|
||||
typedef struct _ProgramsList ProgramsList;
|
||||
|
||||
#define TYPE_PROGRAMS_LIST (programs_list_get_type())
|
||||
#define PROGRAMS_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_PROGRAMS_LIST, ProgramsList))
|
||||
#define PROGRAMS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_PROGRAMS_LIST, ProgramsListClass))
|
||||
#define IS_PROGRAMS_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_PROGRAMS_LIST))
|
||||
#define IS_PROGRAMS_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_PROGRAMS_LIST))
|
||||
#define PROGRAMS_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_PROGRAMS_LIST, ProgramsListClass))
|
||||
|
||||
GType programs_list_get_type(void) G_GNUC_CONST;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
void programs_list_refresh(
|
||||
ProgramsList* programs_list
|
||||
);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
||||
173
shell/taskband/src/start/startbutton.c
Normal file
173
shell/taskband/src/start/startbutton.c
Normal file
@@ -0,0 +1,173 @@
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "../meta.h"
|
||||
#include "startbutton.h"
|
||||
#include "startmenu.h"
|
||||
#include "util.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _StartButtonPrivate
|
||||
{
|
||||
StartMenu* menu;
|
||||
|
||||
gboolean synchronizing;
|
||||
};
|
||||
|
||||
struct _StartButtonClass
|
||||
{
|
||||
GtkToggleButtonClass __parent__;
|
||||
};
|
||||
|
||||
struct _StartButton
|
||||
{
|
||||
GtkToggleButton __parent__;
|
||||
|
||||
StartButtonPrivate* priv;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void on_clicked(
|
||||
GtkButton* button,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
static void on_start_menu_hidden(
|
||||
GtkWidget* widget,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITION & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE_WITH_CODE(
|
||||
StartButton,
|
||||
start_button,
|
||||
GTK_TYPE_TOGGLE_BUTTON,
|
||||
G_ADD_PRIVATE(StartButton)
|
||||
)
|
||||
|
||||
static void start_button_class_init(
|
||||
WINTC_UNUSED(StartButtonClass* klass)
|
||||
) {}
|
||||
|
||||
static void start_button_init(
|
||||
StartButton* self
|
||||
)
|
||||
{
|
||||
self->priv = start_button_get_instance_private(self);
|
||||
|
||||
self->priv->synchronizing = FALSE;
|
||||
|
||||
//
|
||||
// The layout here - we use a box to represent the icon next to the 'start' text
|
||||
// so that themes can apply their own icon here (important because the Plex style
|
||||
// has a white Windows flag instead of the coloured one in Luna and other XP
|
||||
// styles)
|
||||
//
|
||||
|
||||
// Outer box
|
||||
//
|
||||
GtkWidget* outer_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
// 'Flag icon' box
|
||||
//
|
||||
GtkWidget* icon_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
// Start text
|
||||
//
|
||||
// NOTE: We add two labels for uppercase and lowercase 'start' text, this is so
|
||||
// that themes can hide one or the other via font-size: 0pt
|
||||
//
|
||||
GtkWidget* start_label_l = gtk_label_new(_("start"));
|
||||
GtkWidget* start_label_u = gtk_label_new(_("Start"));
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(outer_box), icon_box, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(outer_box), start_label_l, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(outer_box), start_label_u, FALSE, FALSE, 0);
|
||||
|
||||
gtk_container_add(GTK_CONTAINER(self), outer_box);
|
||||
|
||||
gtk_widget_set_tooltip_text(GTK_WIDGET(self), _("Click here to begin"));
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(GTK_WIDGET(self), "xp-start-button");
|
||||
wintc_widget_add_style_class(icon_box, "xp-flag");
|
||||
wintc_widget_add_style_class(start_label_l, "lower");
|
||||
wintc_widget_add_style_class(start_label_u, "upper");
|
||||
|
||||
// Create menu
|
||||
//
|
||||
self->priv->menu = start_menu_new(GTK_WIDGET(self));
|
||||
|
||||
g_signal_connect(
|
||||
G_OBJECT(self),
|
||||
"clicked",
|
||||
G_CALLBACK(on_clicked),
|
||||
NULL
|
||||
);
|
||||
|
||||
connect_start_menu_closed_signal(
|
||||
self->priv->menu,
|
||||
G_CALLBACK(on_start_menu_hidden)
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* start_button_new(void)
|
||||
{
|
||||
return GTK_WIDGET(
|
||||
g_object_new(TYPE_START_BUTTON, NULL)
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static void on_clicked(
|
||||
GtkButton* button,
|
||||
WINTC_UNUSED(gpointer user_data)
|
||||
)
|
||||
{
|
||||
StartButton* start_button = START_BUTTON(button);
|
||||
|
||||
if (start_button->priv->synchronizing)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)))
|
||||
{
|
||||
start_menu_present(start_button->priv->menu);
|
||||
}
|
||||
else
|
||||
{
|
||||
start_menu_close(start_button->priv->menu);
|
||||
}
|
||||
}
|
||||
|
||||
static void on_start_menu_hidden(
|
||||
WINTC_UNUSED(GtkWidget* widget),
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
StartButton* start_button = START_BUTTON(user_data);
|
||||
|
||||
start_button->priv->synchronizing = TRUE;
|
||||
|
||||
gtk_toggle_button_set_active(
|
||||
GTK_TOGGLE_BUTTON(start_button),
|
||||
FALSE
|
||||
);
|
||||
|
||||
start_button->priv->synchronizing = FALSE;
|
||||
}
|
||||
34
shell/taskband/src/start/startbutton.h
Normal file
34
shell/taskband/src/start/startbutton.h
Normal file
@@ -0,0 +1,34 @@
|
||||
#ifndef __STARTBUTTON_H__
|
||||
#define __STARTBUTTON_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "startmenu.h"
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _StartButtonPrivate StartButtonPrivate;
|
||||
typedef struct _StartButtonClass StartButtonClass;
|
||||
typedef struct _StartButton StartButton;
|
||||
|
||||
#define TYPE_START_BUTTON (start_button_get_type())
|
||||
#define START_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_START_BUTTON, StartButton))
|
||||
#define START_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_START_BUTTON, StartButtonClass))
|
||||
#define IS_START_BUTTON(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_START_BUTTON))
|
||||
#define IS_START_BUTTON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_START_BUTTON))
|
||||
#define START_BUTTON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_START_BUTTON, StartButtonClass))
|
||||
|
||||
GType start_button_get_type(void) G_GNUC_CONST;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* start_button_new(void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
||||
592
shell/taskband/src/start/startmenu.c
Normal file
592
shell/taskband/src/start/startmenu.c
Normal file
@@ -0,0 +1,592 @@
|
||||
#include <gdk/gdk.h>
|
||||
#include <gdk-pixbuf/gdk-pixbuf.h>
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <pwd.h>
|
||||
#include <unistd.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "../dispproto.h"
|
||||
#include "../meta.h"
|
||||
#include "action.h"
|
||||
#include "placeslist.h"
|
||||
#include "programslist.h"
|
||||
#include "startmenu.h"
|
||||
#include "util.h"
|
||||
|
||||
//
|
||||
// STRUCTURE DEFINITIONS
|
||||
//
|
||||
struct _StartMenu
|
||||
{
|
||||
GtkWidget* menu;
|
||||
|
||||
GtkWidget* main_box;
|
||||
GtkWidget* start_button;
|
||||
GtkStyleProvider* userpic_style_provider;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void create_logoffpane_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
);
|
||||
static void create_places_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
);
|
||||
static void create_programs_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
);
|
||||
static void create_taskcolumns_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
);
|
||||
static void create_userpane_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
);
|
||||
static void create_vertical_userpane_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
);
|
||||
static void update_userpic(
|
||||
StartMenu* start_menu
|
||||
);
|
||||
|
||||
static void on_action_button_clicked(
|
||||
GtkButton* button,
|
||||
gpointer user_data
|
||||
);
|
||||
static gboolean on_focus_out(
|
||||
GtkWidget* widget,
|
||||
GdkEvent* event,
|
||||
gpointer user_data
|
||||
);
|
||||
static void on_selection_done(
|
||||
GtkWidget* widget,
|
||||
StartMenu* start_menu
|
||||
);
|
||||
static void on_userpic_clicked(
|
||||
GtkWidget* userpic,
|
||||
GdkEventButton* event
|
||||
);
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
void connect_start_menu_closed_signal(
|
||||
StartMenu* start_menu,
|
||||
GCallback callback
|
||||
)
|
||||
{
|
||||
g_signal_connect(
|
||||
start_menu->menu,
|
||||
"hide",
|
||||
callback,
|
||||
start_menu->start_button
|
||||
);
|
||||
}
|
||||
|
||||
void start_menu_close(
|
||||
StartMenu* start_menu
|
||||
)
|
||||
{
|
||||
gtk_widget_hide(start_menu->menu);
|
||||
}
|
||||
|
||||
StartMenu* start_menu_new(
|
||||
GtkWidget* start_button
|
||||
)
|
||||
{
|
||||
StartMenu* start_menu = g_new(StartMenu, 1);
|
||||
|
||||
// On X11, we must use a GtkWindow, on Wayland we use a GtkPopover - the
|
||||
// reason for this is because popovers cannot exist outside the bounds of
|
||||
// the parent window on X11
|
||||
//
|
||||
// We use a GtkWindow instead on X11 to work around that, using
|
||||
// gtk_window_move() -- which obviously doesn't work on Wayland
|
||||
//
|
||||
// So... GtkWindow on X11, GtkPopover on Wayland :)
|
||||
//
|
||||
if (get_display_protocol_in_use() == DISPPROTO_X11)
|
||||
{
|
||||
start_menu->menu = gtk_window_new(GTK_WINDOW_TOPLEVEL);
|
||||
|
||||
// Set up hints
|
||||
//
|
||||
gtk_window_set_type_hint(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
GDK_WINDOW_TYPE_HINT_POPUP_MENU
|
||||
);
|
||||
gtk_window_set_resizable(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
FALSE
|
||||
);
|
||||
gtk_window_set_keep_above(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
TRUE
|
||||
);
|
||||
gtk_window_stick(GTK_WINDOW(start_menu->menu));
|
||||
gtk_window_set_skip_taskbar_hint(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
TRUE
|
||||
);
|
||||
gtk_window_set_title(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
"Start menu"
|
||||
);
|
||||
gtk_widget_set_events(
|
||||
GTK_WIDGET(start_menu->menu),
|
||||
GDK_FOCUS_CHANGE_MASK
|
||||
);
|
||||
|
||||
// Set up signals
|
||||
//
|
||||
g_signal_connect(
|
||||
start_menu->menu,
|
||||
"delete-event",
|
||||
G_CALLBACK(gtk_widget_hide_on_delete),
|
||||
NULL
|
||||
);
|
||||
g_signal_connect(
|
||||
start_menu->menu,
|
||||
"focus-out-event",
|
||||
G_CALLBACK(on_focus_out),
|
||||
NULL
|
||||
);
|
||||
|
||||
// Set titlebar to the fake titlebar box
|
||||
//
|
||||
GtkWidget* fake_titlebar = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
gtk_window_set_titlebar(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
fake_titlebar
|
||||
);
|
||||
}
|
||||
else if (get_display_protocol_in_use() == DISPPROTO_WAYLAND)
|
||||
{
|
||||
start_menu->menu = gtk_popover_new(start_button);
|
||||
}
|
||||
|
||||
// Set up structure
|
||||
//
|
||||
start_menu->main_box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
|
||||
|
||||
create_userpane_structure(start_menu, GTK_BOX(start_menu->main_box));
|
||||
create_taskcolumns_structure(start_menu, GTK_BOX(start_menu->main_box));
|
||||
create_logoffpane_structure(start_menu, GTK_BOX(start_menu->main_box));
|
||||
|
||||
gtk_container_add(GTK_CONTAINER(start_menu->menu), start_menu->main_box);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(GTK_WIDGET(start_menu->menu), "xp-start-menu");
|
||||
|
||||
gtk_widget_show_all(start_menu->main_box);
|
||||
|
||||
// Attach button
|
||||
//
|
||||
start_menu->start_button = start_button;
|
||||
|
||||
return start_menu;
|
||||
}
|
||||
|
||||
void start_menu_present(
|
||||
StartMenu* start_menu
|
||||
)
|
||||
{
|
||||
gint height;
|
||||
gint x;
|
||||
gint y;
|
||||
|
||||
if (get_display_protocol_in_use() == DISPPROTO_X11)
|
||||
{
|
||||
gtk_window_present_with_time(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
GDK_CURRENT_TIME
|
||||
);
|
||||
|
||||
height = gtk_widget_get_allocated_height(start_menu->main_box);
|
||||
|
||||
gdk_window_get_origin(
|
||||
gtk_widget_get_window(start_menu->start_button),
|
||||
&x,
|
||||
&y
|
||||
);
|
||||
|
||||
gtk_window_move(
|
||||
GTK_WINDOW(start_menu->menu),
|
||||
x,
|
||||
y - height
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
gtk_widget_show(start_menu->menu);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void create_logoffpane_structure(
|
||||
WINTC_UNUSED(StartMenu* start_menu),
|
||||
GtkBox* box
|
||||
)
|
||||
{
|
||||
GtkWidget* logoffpane_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
//
|
||||
// These are a couple ordinary buttons, except we have an extra box before the
|
||||
// label so that themes can add an icon
|
||||
//
|
||||
// The reason for not using the gtk-icon-theme here is because the themes need
|
||||
// to be able to override the image, AND they need to provide a 'hot' graphic for
|
||||
// when the buttons are hovered
|
||||
//
|
||||
|
||||
// Log off button
|
||||
//
|
||||
GtkWidget* logoff_button = gtk_button_new();
|
||||
GtkWidget* logoff_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* logoff_icon_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* logoff_label = gtk_label_new(_("Log Off"));
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(logoff_box), logoff_icon_box, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(logoff_box), logoff_label, FALSE, FALSE, 0);
|
||||
gtk_container_add(GTK_CONTAINER(logoff_button), logoff_box);
|
||||
|
||||
g_signal_connect(
|
||||
G_OBJECT(logoff_button),
|
||||
"clicked",
|
||||
G_CALLBACK(on_action_button_clicked),
|
||||
GINT_TO_POINTER(WINTC_ACTION_LOGOFF)
|
||||
);
|
||||
|
||||
gtk_widget_set_tooltip_text(
|
||||
logoff_button,
|
||||
_("Provides options for closing your programs and logging off, or for leaving your programs running and switching to another user.")
|
||||
);
|
||||
|
||||
wintc_widget_add_style_class(logoff_icon_box, "logoff-icon");
|
||||
|
||||
// Shut down button
|
||||
//
|
||||
GtkWidget* shutdown_button = gtk_button_new();
|
||||
GtkWidget* shutdown_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* shutdown_icon_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* shutdown_label = gtk_label_new(_("Turn Off Computer"));
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(shutdown_box), shutdown_icon_box, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(shutdown_box), shutdown_label, FALSE, FALSE, 0);
|
||||
gtk_container_add(GTK_CONTAINER(shutdown_button), shutdown_box);
|
||||
|
||||
g_signal_connect(
|
||||
G_OBJECT(shutdown_button),
|
||||
"clicked",
|
||||
G_CALLBACK(on_action_button_clicked),
|
||||
GINT_TO_POINTER(WINTC_ACTION_SHUTDOWN)
|
||||
);
|
||||
|
||||
gtk_widget_set_tooltip_text(
|
||||
shutdown_button,
|
||||
_("Provides options for turning off or restarting your computer, or for activating Stand By or Hibernate modes.")
|
||||
);
|
||||
|
||||
wintc_widget_add_style_class(shutdown_icon_box, "shutdown-icon");
|
||||
|
||||
// Pack box
|
||||
//
|
||||
gtk_box_pack_end(GTK_BOX(logoffpane_box), shutdown_button, FALSE, FALSE, 0);
|
||||
gtk_box_pack_end(GTK_BOX(logoffpane_box), logoff_button, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(box, logoffpane_box, FALSE, FALSE, 0);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(GTK_WIDGET(logoffpane_box), "xp-start-logoffpane");
|
||||
}
|
||||
|
||||
static void create_places_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
)
|
||||
{
|
||||
GtkWidget* places_box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
|
||||
|
||||
// Create menu
|
||||
//
|
||||
GtkWidget* places_list = GTK_WIDGET(g_object_new(TYPE_PLACES_LIST, NULL));
|
||||
|
||||
// Pack box
|
||||
//
|
||||
gtk_box_pack_start(GTK_BOX(places_box), places_list, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start(box, places_box, TRUE, TRUE, 0);
|
||||
|
||||
// Set up signals
|
||||
//
|
||||
GList* menu_children =
|
||||
gtk_container_get_children(
|
||||
GTK_CONTAINER(places_list)
|
||||
);
|
||||
|
||||
wintc_signal_connect_list(
|
||||
menu_children,
|
||||
"enter-notify-event",
|
||||
G_CALLBACK(wintc_menu_shell_select_on_enter),
|
||||
places_list
|
||||
);
|
||||
wintc_signal_connect_list(
|
||||
menu_children,
|
||||
"leave-notify-event",
|
||||
G_CALLBACK(wintc_menu_shell_deselect_on_leave),
|
||||
places_list
|
||||
);
|
||||
|
||||
g_list_free(g_steal_pointer(&menu_children));
|
||||
|
||||
g_signal_connect(
|
||||
places_list,
|
||||
"selection-done",
|
||||
G_CALLBACK(on_selection_done),
|
||||
start_menu
|
||||
);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(GTK_WIDGET(places_box), "xp-start-places-column");
|
||||
}
|
||||
|
||||
static void create_programs_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
)
|
||||
{
|
||||
GtkWidget* programs_box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
|
||||
|
||||
// Create menu
|
||||
//
|
||||
GtkWidget* programs_list = GTK_WIDGET(g_object_new(TYPE_PROGRAMS_LIST, NULL));
|
||||
|
||||
// Pack box
|
||||
//
|
||||
gtk_box_pack_start(GTK_BOX(programs_box), programs_list, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start(box, programs_box, TRUE, TRUE, 0);
|
||||
|
||||
// Set up signals
|
||||
//
|
||||
GList* menu_children =
|
||||
gtk_container_get_children(
|
||||
GTK_CONTAINER(programs_list)
|
||||
);
|
||||
|
||||
wintc_signal_connect_list(
|
||||
menu_children,
|
||||
"enter-notify-event",
|
||||
G_CALLBACK(wintc_menu_shell_select_on_enter),
|
||||
programs_list
|
||||
);
|
||||
wintc_signal_connect_list(
|
||||
menu_children,
|
||||
"leave-notify-event",
|
||||
G_CALLBACK(wintc_menu_shell_deselect_on_leave),
|
||||
programs_list
|
||||
);
|
||||
|
||||
g_list_free(g_steal_pointer(&menu_children));
|
||||
|
||||
g_signal_connect(
|
||||
programs_list,
|
||||
"selection-done",
|
||||
G_CALLBACK(on_selection_done),
|
||||
start_menu
|
||||
);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(GTK_WIDGET(programs_box), "xp-start-programs-column");
|
||||
}
|
||||
|
||||
static void create_taskcolumns_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
)
|
||||
{
|
||||
// Create structure
|
||||
//
|
||||
GtkWidget* columns_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
create_vertical_userpane_structure(start_menu, GTK_BOX(columns_box));
|
||||
create_programs_structure(start_menu, GTK_BOX(columns_box));
|
||||
create_places_structure(start_menu, GTK_BOX(columns_box));
|
||||
|
||||
gtk_box_pack_start(box, columns_box, TRUE, TRUE, 0);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(GTK_WIDGET(columns_box), "xp-start-columns");
|
||||
}
|
||||
|
||||
static void create_userpane_structure(
|
||||
StartMenu* start_menu,
|
||||
GtkBox* box
|
||||
)
|
||||
{
|
||||
GtkWidget* userpane_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
// User profile picture
|
||||
//
|
||||
GtkStyleContext* context;
|
||||
GtkWidget* pic_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* pic_event_box = gtk_event_box_new();
|
||||
|
||||
start_menu->userpic_style_provider =
|
||||
GTK_STYLE_PROVIDER(gtk_css_provider_new());
|
||||
|
||||
context = gtk_widget_get_style_context(pic_box);
|
||||
|
||||
gtk_style_context_add_provider(
|
||||
context,
|
||||
start_menu->userpic_style_provider,
|
||||
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION
|
||||
);
|
||||
|
||||
update_userpic(start_menu);
|
||||
|
||||
gtk_widget_set_events(pic_event_box, GDK_BUTTON_PRESS_MASK);
|
||||
gtk_box_pack_start(GTK_BOX(pic_box), pic_event_box, TRUE, TRUE, 0);
|
||||
|
||||
g_signal_connect(
|
||||
pic_event_box,
|
||||
"button-press-event",
|
||||
G_CALLBACK(on_userpic_clicked),
|
||||
NULL
|
||||
);
|
||||
|
||||
// Username display
|
||||
//
|
||||
struct passwd* user_pwd = getpwuid(getuid());
|
||||
|
||||
GtkWidget* username_label = gtk_label_new(user_pwd->pw_name);
|
||||
|
||||
// Construct box
|
||||
//
|
||||
gtk_box_pack_start(GTK_BOX(userpane_box), pic_box, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start(GTK_BOX(userpane_box), username_label, FALSE, FALSE, 0);
|
||||
|
||||
gtk_box_pack_start(box, userpane_box, FALSE, FALSE, 0);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(userpane_box, "xp-start-userpane");
|
||||
}
|
||||
|
||||
static void create_vertical_userpane_structure(
|
||||
WINTC_UNUSED(StartMenu* start_menu),
|
||||
GtkBox* box
|
||||
)
|
||||
{
|
||||
GtkWidget* userpane_box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
|
||||
|
||||
// Username display
|
||||
//
|
||||
struct passwd* user_pwd = getpwuid(getuid());
|
||||
|
||||
GtkWidget* username_label = gtk_label_new(user_pwd->pw_name);
|
||||
|
||||
gtk_label_set_angle(GTK_LABEL(username_label), 90);
|
||||
|
||||
// Construct box
|
||||
//
|
||||
gtk_box_pack_end(GTK_BOX(userpane_box), username_label, FALSE, FALSE, 0);
|
||||
|
||||
gtk_box_pack_start(box, userpane_box, FALSE, FALSE, 0);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
wintc_widget_add_style_class(userpane_box, "xp-start-vuserpane");
|
||||
}
|
||||
|
||||
static void update_userpic(
|
||||
StartMenu* start_menu
|
||||
)
|
||||
{
|
||||
static gchar* css = NULL;
|
||||
|
||||
if (css == NULL)
|
||||
{
|
||||
// FIXME: This should read from whatever the XDG path is, probably needs a
|
||||
// g_strdup_printf for the username
|
||||
//
|
||||
css = "* { background-image: url('/usr/share/wintc/shell-res/fpo-userpic.png'); }";
|
||||
}
|
||||
|
||||
// Give GTK a bump that we want to update the pic
|
||||
//
|
||||
gtk_css_provider_load_from_data(
|
||||
GTK_CSS_PROVIDER(start_menu->userpic_style_provider),
|
||||
css,
|
||||
-1,
|
||||
NULL
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static void on_action_button_clicked(
|
||||
WINTC_UNUSED(GtkButton* button),
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
launch_action(GPOINTER_TO_INT(user_data));
|
||||
}
|
||||
|
||||
static gboolean on_focus_out(
|
||||
GtkWidget* widget,
|
||||
WINTC_UNUSED(GdkEvent* event),
|
||||
WINTC_UNUSED(gpointer user_data)
|
||||
)
|
||||
{
|
||||
gtk_widget_hide(widget);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void on_selection_done(
|
||||
WINTC_UNUSED(GtkWidget* widget),
|
||||
StartMenu* start_menu
|
||||
)
|
||||
{
|
||||
gtk_widget_hide(GTK_WIDGET(start_menu->menu));
|
||||
}
|
||||
|
||||
static void on_userpic_clicked(
|
||||
WINTC_UNUSED(GtkWidget* userpic),
|
||||
GdkEventButton* event
|
||||
)
|
||||
{
|
||||
//
|
||||
// FIXME: Implement this when the user pic cpl is done!
|
||||
//
|
||||
if (event->button > 1)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
GError* error = NULL;
|
||||
|
||||
g_set_error(
|
||||
&error,
|
||||
WINTC_GENERAL_ERROR,
|
||||
WINTC_GENERAL_ERROR_NOTIMPL,
|
||||
"Cannot edit user pic yet!"
|
||||
);
|
||||
|
||||
wintc_nice_error_and_clear(&error);
|
||||
}
|
||||
31
shell/taskband/src/start/startmenu.h
Normal file
31
shell/taskband/src/start/startmenu.h
Normal file
@@ -0,0 +1,31 @@
|
||||
#ifndef __STARTMENU_H__
|
||||
#define __STARTMENU_H__
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
//
|
||||
// STRUCTURE DEFINITIONS
|
||||
//
|
||||
typedef struct _StartMenu StartMenu;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
void connect_start_menu_closed_signal(
|
||||
StartMenu* start_menu,
|
||||
GCallback callback
|
||||
);
|
||||
|
||||
void start_menu_close(
|
||||
StartMenu* start_menu
|
||||
);
|
||||
|
||||
StartMenu* start_menu_new(
|
||||
GtkWidget* start_button
|
||||
);
|
||||
|
||||
void start_menu_present(
|
||||
StartMenu* start_menu
|
||||
);
|
||||
|
||||
#endif
|
||||
478
shell/taskband/src/start/startmenuitem.c
Normal file
478
shell/taskband/src/start/startmenuitem.c
Normal file
@@ -0,0 +1,478 @@
|
||||
#include <garcon/garcon.h>
|
||||
#include <gdk/gdk.h>
|
||||
#include <glib.h>
|
||||
#include <glib/gi18n.h>
|
||||
#include <gio/gdesktopappinfo.h>
|
||||
#include <gio/gio.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
#include <wintc-exec.h>
|
||||
#include <wintc-shllang.h>
|
||||
|
||||
#include "../meta.h"
|
||||
#include "action.h"
|
||||
#include "startmenuitem.h"
|
||||
#include "util.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _StartMenuItemPrivate
|
||||
{
|
||||
StartMenuItem* menuitem;
|
||||
|
||||
WinTCAction action;
|
||||
gchar* cmdline;
|
||||
gboolean is_action;
|
||||
|
||||
GtkWidget* icon;
|
||||
GtkWidget* label;
|
||||
GtkWidget* label_generic;
|
||||
};
|
||||
|
||||
struct _StartMenuItemClass
|
||||
{
|
||||
GtkMenuItemClass __parent__;
|
||||
};
|
||||
|
||||
struct _StartMenuItem
|
||||
{
|
||||
GtkMenuItem __parent__;
|
||||
|
||||
StartMenuItemPrivate* priv;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void start_menu_item_finalize(
|
||||
GObject* object
|
||||
);
|
||||
|
||||
static GtkWidget* start_menu_item_new_manual(
|
||||
const gchar* icon_name,
|
||||
const gchar* program_name,
|
||||
const gchar* comment,
|
||||
const gchar* generic_name
|
||||
);
|
||||
|
||||
static void on_menu_item_activate(
|
||||
GtkWidget* widget,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITIONS & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE_WITH_CODE(
|
||||
StartMenuItem,
|
||||
start_menu_item,
|
||||
GTK_TYPE_MENU_ITEM,
|
||||
G_ADD_PRIVATE(StartMenuItem)
|
||||
)
|
||||
|
||||
static void start_menu_item_class_init(
|
||||
StartMenuItemClass* klass
|
||||
)
|
||||
{
|
||||
GObjectClass* gclass = G_OBJECT_CLASS(klass);
|
||||
|
||||
gclass->finalize = start_menu_item_finalize;
|
||||
}
|
||||
|
||||
static void start_menu_item_init(
|
||||
StartMenuItem* self
|
||||
)
|
||||
{
|
||||
self->priv = start_menu_item_get_instance_private(self);
|
||||
|
||||
g_signal_connect(
|
||||
G_OBJECT(self),
|
||||
"activate",
|
||||
G_CALLBACK(on_menu_item_activate),
|
||||
NULL
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// FINALIZE
|
||||
//
|
||||
static void start_menu_item_finalize(
|
||||
GObject* object
|
||||
)
|
||||
{
|
||||
StartMenuItem* start_menu_item = START_MENU_ITEM(object);
|
||||
|
||||
if (start_menu_item->priv->cmdline != NULL)
|
||||
{
|
||||
g_free(start_menu_item->priv->cmdline);
|
||||
}
|
||||
|
||||
(*G_OBJECT_CLASS(start_menu_item_parent_class)->finalize) (object);
|
||||
}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* start_menu_item_new_from_action(
|
||||
WinTCAction action
|
||||
)
|
||||
{
|
||||
const gchar* comment;
|
||||
const gchar* icon_name;
|
||||
const gchar* name;
|
||||
GtkWidget* start_menu_item;
|
||||
|
||||
switch (action)
|
||||
{
|
||||
case WINTC_ACTION_MYDOCS:
|
||||
comment = _("Opens the My Documents folder, where you can store letters, reports, notes, and other kinds of documents.");
|
||||
icon_name = "folder-documents";
|
||||
name = wintc_get_place_name(WINTC_PLACE_DOCUMENTS);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_MYRECENTS:
|
||||
comment = _("Displays recently opened documents and folders.");
|
||||
icon_name = "document-open-recent";
|
||||
name = wintc_get_place_name(WINTC_PLACE_RECENTS);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_MYPICS:
|
||||
comment = _("Opens the My Pictures folder, where you can store digital photos, images, and graphics files.");
|
||||
icon_name = "folder-pictures";
|
||||
name = wintc_get_place_name(WINTC_PLACE_PICTURES);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_MYMUSIC:
|
||||
comment = _("Opens the My Music folder, where you can store music and other audio files.");
|
||||
icon_name = "folder-music";
|
||||
name = wintc_get_place_name(WINTC_PLACE_MUSIC);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_MYCOMP:
|
||||
comment = _("Gives access to, and information about, the disk drives, cameras, scanners, and other hardware connected to your computer.");
|
||||
icon_name = "computer";
|
||||
name = wintc_get_place_name(WINTC_PLACE_DRIVES);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_CONTROL:
|
||||
comment = _("Provides options for you to customize the appearance and functionality of your computer, add or remove programs, and set up network connections and user accounts.");
|
||||
icon_name = "preferences-other";
|
||||
name = wintc_get_place_name(WINTC_PLACE_CONTROLPANEL);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_MIMEMGMT:
|
||||
comment = _("Chooses default programs for certain activities, such as Web browsing or sending e-mail, and specifies which programs are accessible from the Start menu, desktop, and other locations.");
|
||||
icon_name = "preferences-desktop-default-applications";
|
||||
name = _("Set Program Access and Defaults");
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_CONNECTTO:
|
||||
comment = _("Connects to other computers, networks, and the Internet.");
|
||||
icon_name = "preferences-system-network";
|
||||
name = _("Connect To");
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_PRINTERS:
|
||||
comment = _("Shows installed printers and fax printers and helps you add new ones.");
|
||||
icon_name = "printer";
|
||||
name = wintc_get_place_name(WINTC_PLACE_PRINTERS);
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_HELP:
|
||||
comment = _("Opens a central location for Help topics, tutorials, troubleshooting, and other support services.");
|
||||
icon_name = "help-browser";
|
||||
name = _("Help and Support");
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_SEARCH:
|
||||
comment = _("Opens a window where you can pick search options and work with search results.");
|
||||
icon_name = "system-search";
|
||||
name = _("Search");
|
||||
break;
|
||||
|
||||
case WINTC_ACTION_RUN:
|
||||
comment = _("Opens a program, folder, document, or Web site.");
|
||||
icon_name = "system-run";
|
||||
name = _("Run...");
|
||||
break;
|
||||
|
||||
default:
|
||||
comment = "Unknown action.";
|
||||
icon_name = "dialog-error";
|
||||
name = "Unknown";
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
start_menu_item =
|
||||
start_menu_item_new_manual(
|
||||
icon_name,
|
||||
name,
|
||||
comment,
|
||||
NULL
|
||||
);
|
||||
|
||||
// Add action state
|
||||
//
|
||||
(START_MENU_ITEM(start_menu_item))->priv->action = action;
|
||||
(START_MENU_ITEM(start_menu_item))->priv->is_action = TRUE;
|
||||
|
||||
return start_menu_item;
|
||||
}
|
||||
|
||||
GtkWidget* start_menu_item_new_from_desktop_entry(
|
||||
GDesktopAppInfo* entry,
|
||||
const gchar* generic_name,
|
||||
const gchar* comment
|
||||
)
|
||||
{
|
||||
// FIXME: Temp bodge for handling NULL desktop entry (handle properly in
|
||||
// programslist.c)
|
||||
//
|
||||
// (We just insert a default item to open the MIME management action)
|
||||
//
|
||||
if (entry == NULL)
|
||||
{
|
||||
GtkWidget* null_menu_item =
|
||||
start_menu_item_new_manual(
|
||||
"important",
|
||||
"Click to specify a default",
|
||||
comment != NULL ? comment : "No default program could be identified.",
|
||||
generic_name
|
||||
);
|
||||
|
||||
(START_MENU_ITEM(null_menu_item))->priv->action = WINTC_ACTION_MIMEMGMT;
|
||||
(START_MENU_ITEM(null_menu_item))->priv->is_action = TRUE;
|
||||
|
||||
return null_menu_item;
|
||||
}
|
||||
|
||||
// Normal code - desktop entry actually exists! Wahey!
|
||||
//
|
||||
GAppInfo* app_info = G_APP_INFO(entry);
|
||||
|
||||
const gchar* app_desc = g_app_info_get_description(app_info);
|
||||
const gchar* exe_path = g_app_info_get_executable(app_info);
|
||||
const gchar* name = g_app_info_get_name(app_info);
|
||||
|
||||
gchar* exe_name = g_path_get_basename(exe_path);
|
||||
|
||||
GtkWidget* start_menu_item =
|
||||
start_menu_item_new_manual(
|
||||
exe_name,
|
||||
name,
|
||||
comment != NULL ? comment : app_desc,
|
||||
generic_name
|
||||
);
|
||||
|
||||
(START_MENU_ITEM(start_menu_item))->priv->cmdline =
|
||||
wintc_desktop_app_info_get_command(entry);
|
||||
|
||||
g_free(exe_name);
|
||||
|
||||
return start_menu_item;
|
||||
}
|
||||
|
||||
GtkWidget* start_menu_item_new_from_garcon_item(
|
||||
GarconMenuItem* item,
|
||||
const gchar* generic_name,
|
||||
const gchar* comment
|
||||
)
|
||||
{
|
||||
GtkWidget* start_menu_item =
|
||||
start_menu_item_new_manual(
|
||||
garcon_menu_item_get_icon_name(item),
|
||||
garcon_menu_item_get_name(item),
|
||||
comment != NULL ?
|
||||
comment :
|
||||
garcon_menu_item_get_comment(item),
|
||||
generic_name
|
||||
);
|
||||
|
||||
(START_MENU_ITEM(start_menu_item))->priv->cmdline =
|
||||
garcon_menu_item_get_command_expanded(item);
|
||||
|
||||
return start_menu_item;
|
||||
}
|
||||
|
||||
void start_menu_item_set_icon_size(
|
||||
StartMenuItem* item,
|
||||
gint size
|
||||
)
|
||||
{
|
||||
g_assert(item->priv->icon != NULL);
|
||||
|
||||
gtk_image_set_pixel_size(
|
||||
GTK_IMAGE(item->priv->icon),
|
||||
size
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static GtkWidget* start_menu_item_new_manual(
|
||||
const gchar* icon_name,
|
||||
const gchar* program_name,
|
||||
const gchar* comment,
|
||||
const gchar* generic_name
|
||||
)
|
||||
{
|
||||
StartMenuItem* start_menu_item =
|
||||
START_MENU_ITEM(g_object_new(TYPE_START_MENU_ITEM, NULL));
|
||||
|
||||
// Application icon
|
||||
//
|
||||
start_menu_item->priv->icon =
|
||||
gtk_image_new_from_icon_name(
|
||||
icon_name,
|
||||
GTK_ICON_SIZE_MENU
|
||||
);
|
||||
|
||||
// Depending on if a generic name is specified, we create either a normal item or
|
||||
// a 'default' item (the kind that go at the top of the Start menu)
|
||||
//
|
||||
if (generic_name == NULL) // Normal item
|
||||
{
|
||||
// Program name
|
||||
//
|
||||
start_menu_item->priv->label =
|
||||
gtk_label_new(program_name);
|
||||
|
||||
// Set up structure
|
||||
//
|
||||
GtkWidget* box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(box),
|
||||
start_menu_item->priv->icon,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(box),
|
||||
start_menu_item->priv->label,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
|
||||
gtk_container_add(GTK_CONTAINER(start_menu_item), box);
|
||||
}
|
||||
else // Default item
|
||||
{
|
||||
// Add style class to distinguish this menu item
|
||||
//
|
||||
wintc_widget_add_style_class(
|
||||
GTK_WIDGET(start_menu_item),
|
||||
"xp-start-default-item"
|
||||
);
|
||||
|
||||
// Generic program type
|
||||
//
|
||||
start_menu_item->priv->label_generic =
|
||||
gtk_label_new(generic_name);
|
||||
|
||||
gtk_widget_set_halign(
|
||||
start_menu_item->priv->label_generic,
|
||||
GTK_ALIGN_START
|
||||
);
|
||||
|
||||
// Program name
|
||||
//
|
||||
start_menu_item->priv->label =
|
||||
gtk_label_new(program_name);
|
||||
|
||||
// Set up structure
|
||||
//
|
||||
GtkWidget* outer_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* label_box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 0);
|
||||
|
||||
gtk_widget_set_valign(label_box, GTK_ALIGN_CENTER);
|
||||
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(label_box),
|
||||
start_menu_item->priv->label_generic,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(label_box),
|
||||
start_menu_item->priv->label,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(outer_box),
|
||||
start_menu_item->priv->icon,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(outer_box),
|
||||
label_box,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
|
||||
gtk_container_add(GTK_CONTAINER(start_menu_item), outer_box);
|
||||
}
|
||||
|
||||
// Set program name line wrapping
|
||||
//
|
||||
gtk_label_set_line_wrap(
|
||||
GTK_LABEL(start_menu_item->priv->label),
|
||||
TRUE
|
||||
);
|
||||
gtk_label_set_max_width_chars(
|
||||
GTK_LABEL(start_menu_item->priv->label),
|
||||
24
|
||||
);
|
||||
gtk_label_set_xalign(
|
||||
GTK_LABEL(start_menu_item->priv->label),
|
||||
0.0
|
||||
);
|
||||
|
||||
// Add program comment
|
||||
//
|
||||
if (comment != NULL)
|
||||
{
|
||||
gchar* real_comment = wintc_str_set_suffix(comment, ".");
|
||||
|
||||
gtk_widget_set_tooltip_text(
|
||||
GTK_WIDGET(start_menu_item),
|
||||
real_comment
|
||||
);
|
||||
|
||||
g_free(real_comment);
|
||||
}
|
||||
|
||||
return GTK_WIDGET(start_menu_item);
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static void on_menu_item_activate(
|
||||
GtkWidget* widget,
|
||||
WINTC_UNUSED(gpointer user_data)
|
||||
)
|
||||
{
|
||||
StartMenuItem* start_menu_item = START_MENU_ITEM(widget);
|
||||
|
||||
if (start_menu_item->priv->is_action)
|
||||
{
|
||||
launch_action(start_menu_item->priv->action);
|
||||
}
|
||||
else
|
||||
{
|
||||
launch_command(start_menu_item->priv->cmdline);
|
||||
}
|
||||
}
|
||||
51
shell/taskband/src/start/startmenuitem.h
Normal file
51
shell/taskband/src/start/startmenuitem.h
Normal file
@@ -0,0 +1,51 @@
|
||||
#ifndef __STARTMENUITEM_H__
|
||||
#define __STARTMENUITEM_H__
|
||||
|
||||
#include <garcon/garcon.h>
|
||||
#include <gio/gdesktopappinfo.h>
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-exec.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _StartMenuItemPrivate StartMenuItemPrivate;
|
||||
typedef struct _StartMenuItemClass StartMenuItemClass;
|
||||
typedef struct _StartMenuItem StartMenuItem;
|
||||
|
||||
#define TYPE_START_MENU_ITEM (start_menu_item_get_type())
|
||||
#define START_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_START_MENU_ITEM, StartMenuItem))
|
||||
#define START_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_START_MENU_ITEM, StartMenuItemClass))
|
||||
#define IS_START_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_START_MENU_ITEM))
|
||||
#define IS_START_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_START_MENU_ITEM))
|
||||
#define START_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_START_MENU_ITEM, StartMenuItemClass))
|
||||
|
||||
GType start_menu_item_get_type(void) G_GNUC_CONST;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* start_menu_item_new_from_action(
|
||||
WinTCAction action
|
||||
);
|
||||
GtkWidget* start_menu_item_new_from_desktop_entry(
|
||||
GDesktopAppInfo* entry,
|
||||
const gchar* generic_name,
|
||||
const gchar* comment
|
||||
);
|
||||
GtkWidget* start_menu_item_new_from_garcon_item(
|
||||
GarconMenuItem* item,
|
||||
const gchar* generic_name,
|
||||
const gchar* comment
|
||||
);
|
||||
void start_menu_item_set_icon_size(
|
||||
StartMenuItem* item,
|
||||
gint size
|
||||
);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
||||
28
shell/taskband/src/start/util.c
Normal file
28
shell/taskband/src/start/util.c
Normal file
@@ -0,0 +1,28 @@
|
||||
#include <garcon/garcon.h>
|
||||
#include <glib.h>
|
||||
#include <wintc-exec.h>
|
||||
|
||||
#include "util.h"
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
gchar* garcon_menu_item_get_command_expanded(
|
||||
GarconMenuItem* item
|
||||
)
|
||||
{
|
||||
const gchar* raw_cmd = garcon_menu_item_get_command(item);
|
||||
|
||||
if (raw_cmd == NULL)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return wintc_expand_desktop_entry_cmdline(
|
||||
raw_cmd,
|
||||
garcon_menu_item_get_name(item),
|
||||
garcon_menu_item_get_icon_name(item),
|
||||
garcon_menu_item_get_path(item),
|
||||
garcon_menu_item_requires_terminal(item)
|
||||
);
|
||||
}
|
||||
11
shell/taskband/src/start/util.h
Normal file
11
shell/taskband/src/start/util.h
Normal file
@@ -0,0 +1,11 @@
|
||||
#ifndef __UTIL_H__
|
||||
#define __UTIL_H__
|
||||
|
||||
#include <garcon/garcon.h>
|
||||
#include <glib.h>
|
||||
|
||||
gchar* garcon_menu_item_get_command_expanded(
|
||||
GarconMenuItem* item
|
||||
);
|
||||
|
||||
#endif
|
||||
184
shell/taskband/src/systray/clock.c
Normal file
184
shell/taskband/src/systray/clock.c
Normal file
@@ -0,0 +1,184 @@
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "clock.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _TrayClockPrivate
|
||||
{
|
||||
TrayClock* tray_clock;
|
||||
|
||||
guint clock_source_id;
|
||||
};
|
||||
|
||||
struct _TrayClockClass
|
||||
{
|
||||
GtkLabelClass __parent__;
|
||||
};
|
||||
|
||||
struct _TrayClock
|
||||
{
|
||||
GtkLabel __parent__;
|
||||
|
||||
TrayClockPrivate* priv;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void tray_clock_finalize(
|
||||
GObject* object
|
||||
);
|
||||
|
||||
static void tray_clock_launch_time(
|
||||
TrayClock* tray_clock
|
||||
);
|
||||
static void tray_clock_update_time(
|
||||
TrayClock* tray_clock
|
||||
);
|
||||
|
||||
static gboolean on_clock_timeout_elapsed(
|
||||
gpointer data
|
||||
);
|
||||
static gboolean on_sync_timeout_elapsed(
|
||||
gpointer data
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITION & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE_WITH_CODE(
|
||||
TrayClock,
|
||||
tray_clock,
|
||||
GTK_TYPE_LABEL,
|
||||
G_ADD_PRIVATE(TrayClock)
|
||||
)
|
||||
|
||||
static void tray_clock_class_init(
|
||||
TrayClockClass* klass
|
||||
)
|
||||
{
|
||||
GObjectClass* gclass = G_OBJECT_CLASS(klass);
|
||||
|
||||
gclass->finalize = tray_clock_finalize;
|
||||
}
|
||||
|
||||
static void tray_clock_init(
|
||||
TrayClock* self
|
||||
)
|
||||
{
|
||||
self->priv = tray_clock_get_instance_private(self);
|
||||
|
||||
// Add style class
|
||||
//
|
||||
GtkStyleContext* style = gtk_widget_get_style_context(GTK_WIDGET(self));
|
||||
|
||||
gtk_style_context_add_class(style, "clock");
|
||||
|
||||
// Establish clock - if we're not dead on the minute then delay launch to sync
|
||||
// up
|
||||
//
|
||||
GDateTime* time = g_date_time_new_now_local();
|
||||
gint delay = 60 - g_date_time_get_second(time);
|
||||
|
||||
if (delay > 0)
|
||||
{
|
||||
tray_clock_update_time(self);
|
||||
|
||||
g_timeout_add_seconds_full(
|
||||
G_PRIORITY_DEFAULT,
|
||||
delay,
|
||||
on_sync_timeout_elapsed,
|
||||
self,
|
||||
NULL
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
tray_clock_launch_time(self);
|
||||
}
|
||||
|
||||
g_date_time_unref(time);
|
||||
}
|
||||
|
||||
//
|
||||
// FINALIZE
|
||||
//
|
||||
static void tray_clock_finalize(
|
||||
GObject* object
|
||||
)
|
||||
{
|
||||
TrayClock* tray_clock = TRAY_CLOCK(object);
|
||||
|
||||
if (tray_clock->priv->clock_source_id > 0)
|
||||
{
|
||||
g_source_remove(tray_clock->priv->clock_source_id);
|
||||
}
|
||||
|
||||
(*G_OBJECT_CLASS(tray_clock_parent_class)->finalize) (object);
|
||||
}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* tray_clock_new(void)
|
||||
{
|
||||
return GTK_WIDGET(
|
||||
g_object_new(TYPE_TRAY_CLOCK, NULL)
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void tray_clock_launch_time(
|
||||
TrayClock* tray_clock
|
||||
)
|
||||
{
|
||||
tray_clock_update_time(tray_clock);
|
||||
|
||||
tray_clock->priv->clock_source_id =
|
||||
g_timeout_add_seconds_full(
|
||||
G_PRIORITY_DEFAULT,
|
||||
60,
|
||||
on_clock_timeout_elapsed,
|
||||
tray_clock,
|
||||
NULL
|
||||
);
|
||||
}
|
||||
|
||||
static void tray_clock_update_time(
|
||||
TrayClock* tray_clock
|
||||
)
|
||||
{
|
||||
GDateTime* time = g_date_time_new_now_local();
|
||||
gchar* timestr = g_date_time_format(time, "%H:%M");
|
||||
|
||||
gtk_label_set_text(GTK_LABEL(tray_clock), timestr);
|
||||
|
||||
g_date_time_unref(time);
|
||||
g_free(timestr);
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static gboolean on_clock_timeout_elapsed(
|
||||
gpointer data
|
||||
)
|
||||
{
|
||||
tray_clock_update_time(TRAY_CLOCK(data));
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static gboolean on_sync_timeout_elapsed(
|
||||
gpointer data
|
||||
)
|
||||
{
|
||||
tray_clock_launch_time(TRAY_CLOCK(data));
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
32
shell/taskband/src/systray/clock.h
Normal file
32
shell/taskband/src/systray/clock.h
Normal file
@@ -0,0 +1,32 @@
|
||||
#ifndef __CLOCK_H__
|
||||
#define __CLOCK_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _TrayClockPrivate TrayClockPrivate;
|
||||
typedef struct _TrayClockClass TrayClockClass;
|
||||
typedef struct _TrayClock TrayClock;
|
||||
|
||||
#define TYPE_TRAY_CLOCK (tray_clock_get_type())
|
||||
#define TRAY_CLOCK(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_TRAY_CLOCK, TrayClock))
|
||||
#define TRAY_CLOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_TRAY_CLOCK, TrayClockClass))
|
||||
#define IS_TRAY_CLOCK(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_TRAY_CLOCK))
|
||||
#define IS_TRAY_CLOCK_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_TRAY_CLOCK))
|
||||
#define TRAY_CLOCK_GET_CLASS (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_TRAY_CLOCK, TrayClock))
|
||||
|
||||
GType tray_clock_get_type(void) G_GNUC_CONST;
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* tray_clock_new(void);
|
||||
|
||||
#endif
|
||||
26
shell/taskband/src/systray/notifarea.c
Normal file
26
shell/taskband/src/systray/notifarea.c
Normal file
@@ -0,0 +1,26 @@
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "clock.h"
|
||||
#include "notifarea.h"
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* notification_area_new(void)
|
||||
{
|
||||
GtkWidget* box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
GtkWidget* clock = tray_clock_new();
|
||||
|
||||
wintc_widget_add_style_class(box, "wintc-systray");
|
||||
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(box),
|
||||
clock,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
|
||||
return box;
|
||||
}
|
||||
6
shell/taskband/src/systray/notifarea.h
Normal file
6
shell/taskband/src/systray/notifarea.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* notification_area_new(void);
|
||||
6
shell/taskband/src/taskband.h
Normal file
6
shell/taskband/src/taskband.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifndef __TASKBAND_H__
|
||||
#define __TASKBAND_H__
|
||||
|
||||
#define TASKBAND_ROW_HEIGHT 30
|
||||
|
||||
#endif
|
||||
413
shell/taskband/src/taskbuttons/taskbuttonbar.c
Normal file
413
shell/taskband/src/taskbuttons/taskbuttonbar.c
Normal file
@@ -0,0 +1,413 @@
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "../taskband.h"
|
||||
#include "taskbuttonbar.h"
|
||||
#include "windowmonitor.h"
|
||||
|
||||
#define TASKBUTTON_MAX_WIDTH 160
|
||||
#define TASKBUTTON_MIN_WIDTH 52
|
||||
#define TASKBUTTON_BAR_UPDOWN_WIDTH 17
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _TaskButtonBarPrivate
|
||||
{
|
||||
GSList* buttons;
|
||||
WindowMonitor* window_monitor;
|
||||
};
|
||||
|
||||
struct _TaskButtonBarClass
|
||||
{
|
||||
GtkContainerClass __parent__;
|
||||
};
|
||||
|
||||
struct _TaskButtonBar
|
||||
{
|
||||
GtkContainer __parent__;
|
||||
|
||||
TaskButtonBarPrivate* priv;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void taskbutton_bar_get_preferred_height(
|
||||
GtkWidget* widget,
|
||||
gint* minimum_height,
|
||||
gint* natural_height
|
||||
);
|
||||
static void taskbutton_bar_get_preferred_height_for_width(
|
||||
GtkWidget* widget,
|
||||
gint width,
|
||||
gint* minimum_height,
|
||||
gint* natural_height
|
||||
);
|
||||
static void taskbutton_bar_get_preferred_width(
|
||||
GtkWidget* widget,
|
||||
gint* minimum_width,
|
||||
gint* natural_width
|
||||
);
|
||||
static void taskbutton_bar_get_preferred_width_for_height(
|
||||
GtkWidget* widget,
|
||||
gint height,
|
||||
gint* minimum_width,
|
||||
gint* natural_width
|
||||
);
|
||||
static void taskbutton_bar_size_allocate(
|
||||
GtkWidget* widget,
|
||||
GtkAllocation* allocation
|
||||
);
|
||||
|
||||
static void taskbutton_bar_add(
|
||||
GtkContainer* container,
|
||||
GtkWidget* widget
|
||||
);
|
||||
static GType taskbutton_bar_child_type(
|
||||
GtkContainer* container
|
||||
);
|
||||
static void taskbutton_bar_forall(
|
||||
GtkContainer* container,
|
||||
gboolean include_internals,
|
||||
GtkCallback callback,
|
||||
gpointer callback_data
|
||||
);
|
||||
static void taskbutton_bar_remove(
|
||||
GtkContainer* container,
|
||||
GtkWidget* widget
|
||||
);
|
||||
|
||||
static gboolean taskbutton_bar_has_button(
|
||||
TaskButtonBar* taskbutton_bar,
|
||||
GtkToggleButton* button
|
||||
);
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITIONS & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE_WITH_CODE(
|
||||
TaskButtonBar,
|
||||
taskbutton_bar,
|
||||
GTK_TYPE_CONTAINER,
|
||||
G_ADD_PRIVATE(TaskButtonBar)
|
||||
)
|
||||
|
||||
static void taskbutton_bar_class_init(
|
||||
TaskButtonBarClass* klass
|
||||
)
|
||||
{
|
||||
GtkContainerClass* container_class = GTK_CONTAINER_CLASS(klass);
|
||||
GtkWidgetClass* widget_class = GTK_WIDGET_CLASS(klass);
|
||||
|
||||
widget_class->get_preferred_height = taskbutton_bar_get_preferred_height;
|
||||
widget_class->get_preferred_height_for_width =
|
||||
taskbutton_bar_get_preferred_height_for_width;
|
||||
widget_class->get_preferred_width = taskbutton_bar_get_preferred_width;
|
||||
widget_class->get_preferred_width_for_height =
|
||||
taskbutton_bar_get_preferred_width_for_height;
|
||||
widget_class->size_allocate = taskbutton_bar_size_allocate;
|
||||
|
||||
container_class->add = taskbutton_bar_add;
|
||||
container_class->child_type = taskbutton_bar_child_type;
|
||||
container_class->forall = taskbutton_bar_forall;
|
||||
container_class->remove = taskbutton_bar_remove;
|
||||
}
|
||||
|
||||
static void taskbutton_bar_init(
|
||||
TaskButtonBar* self
|
||||
)
|
||||
{
|
||||
self->priv = taskbutton_bar_get_instance_private(self);
|
||||
|
||||
self->priv->window_monitor =
|
||||
window_monitor_init_management(GTK_CONTAINER(self));
|
||||
|
||||
gtk_widget_set_has_window(GTK_WIDGET(self), FALSE);
|
||||
|
||||
wintc_widget_add_style_class(GTK_WIDGET(self), "wintc-taskbuttons");
|
||||
}
|
||||
|
||||
//
|
||||
// CLASS VIRTUAL METHODS
|
||||
//
|
||||
static void taskbutton_bar_add(
|
||||
GtkContainer* container,
|
||||
GtkWidget* widget
|
||||
)
|
||||
{
|
||||
TaskButtonBar* taskbutton_bar = TASKBUTTON_BAR(container);
|
||||
|
||||
if (
|
||||
taskbutton_bar_has_button(
|
||||
taskbutton_bar,
|
||||
GTK_TOGGLE_BUTTON(widget)
|
||||
)
|
||||
)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
gtk_widget_set_parent(widget, GTK_WIDGET(container));
|
||||
|
||||
taskbutton_bar->priv->buttons =
|
||||
g_slist_append(taskbutton_bar->priv->buttons, widget);
|
||||
}
|
||||
|
||||
static GType taskbutton_bar_child_type(
|
||||
WINTC_UNUSED(GtkContainer* container)
|
||||
)
|
||||
{
|
||||
return GTK_TYPE_TOGGLE_BUTTON;
|
||||
}
|
||||
|
||||
static void taskbutton_bar_forall(
|
||||
GtkContainer* container,
|
||||
WINTC_UNUSED(gboolean include_internals),
|
||||
GtkCallback callback,
|
||||
gpointer callback_data
|
||||
)
|
||||
{
|
||||
TaskButtonBar* taskbutton_bar = TASKBUTTON_BAR(container);
|
||||
|
||||
g_slist_foreach(
|
||||
taskbutton_bar->priv->buttons,
|
||||
(GFunc) callback,
|
||||
callback_data
|
||||
);
|
||||
}
|
||||
|
||||
static void taskbutton_bar_remove(
|
||||
GtkContainer* container,
|
||||
GtkWidget* widget
|
||||
)
|
||||
{
|
||||
TaskButtonBar* taskbutton_bar = TASKBUTTON_BAR(container);
|
||||
GSList* to_remove;
|
||||
|
||||
to_remove = g_slist_find(taskbutton_bar->priv->buttons, widget);
|
||||
|
||||
if (to_remove == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
gtk_widget_unparent(GTK_WIDGET(to_remove->data));
|
||||
|
||||
taskbutton_bar->priv->buttons =
|
||||
g_slist_delete_link(taskbutton_bar->priv->buttons, to_remove);
|
||||
|
||||
gtk_widget_queue_resize(GTK_WIDGET(container));
|
||||
}
|
||||
|
||||
static void taskbutton_bar_get_preferred_height(
|
||||
WINTC_UNUSED(GtkWidget* widget),
|
||||
gint* minimum_height,
|
||||
gint* natural_height
|
||||
)
|
||||
{
|
||||
*minimum_height = TASKBAND_ROW_HEIGHT;
|
||||
*natural_height = TASKBAND_ROW_HEIGHT;
|
||||
}
|
||||
|
||||
static void taskbutton_bar_get_preferred_height_for_width(
|
||||
WINTC_UNUSED(GtkWidget* widget),
|
||||
WINTC_UNUSED(gint width),
|
||||
gint* minimum_height,
|
||||
gint* natural_height
|
||||
)
|
||||
{
|
||||
*minimum_height = TASKBAND_ROW_HEIGHT;
|
||||
*natural_height = TASKBAND_ROW_HEIGHT;
|
||||
}
|
||||
|
||||
static void taskbutton_bar_get_preferred_width(
|
||||
GtkWidget* widget,
|
||||
gint* minimum_width,
|
||||
gint* natural_width
|
||||
)
|
||||
{
|
||||
gint accum_min_width = 0;
|
||||
gint accum_nat_width = 0;
|
||||
GtkWidget* button;
|
||||
GtkBorder button_margins;
|
||||
GtkStyleContext* button_style;
|
||||
GSList* child;
|
||||
TaskButtonBar* taskbutton_bar = TASKBUTTON_BAR(widget);
|
||||
|
||||
child = taskbutton_bar->priv->buttons;
|
||||
|
||||
while (child)
|
||||
{
|
||||
button = GTK_WIDGET(child->data);
|
||||
button_style = gtk_widget_get_style_context(button);
|
||||
|
||||
gtk_style_context_get_margin(
|
||||
button_style,
|
||||
GTK_STATE_FLAG_NORMAL,
|
||||
&button_margins
|
||||
);
|
||||
|
||||
accum_nat_width += TASKBUTTON_MAX_WIDTH +
|
||||
button_margins.left +
|
||||
button_margins.right;
|
||||
|
||||
// Set min width only for one child
|
||||
//
|
||||
if (accum_min_width == 0)
|
||||
{
|
||||
accum_min_width = TASKBUTTON_MIN_WIDTH +
|
||||
button_margins.left +
|
||||
button_margins.right;
|
||||
}
|
||||
|
||||
child = child->next;
|
||||
}
|
||||
|
||||
accum_nat_width += TASKBUTTON_BAR_UPDOWN_WIDTH;
|
||||
|
||||
*minimum_width = accum_min_width;
|
||||
*natural_width = accum_nat_width;
|
||||
}
|
||||
|
||||
static void taskbutton_bar_get_preferred_width_for_height(
|
||||
GtkWidget* widget,
|
||||
WINTC_UNUSED(gint height),
|
||||
gint* minimum_width,
|
||||
gint* natural_width
|
||||
)
|
||||
{
|
||||
taskbutton_bar_get_preferred_width(
|
||||
widget,
|
||||
minimum_width,
|
||||
natural_width
|
||||
);
|
||||
}
|
||||
|
||||
static void taskbutton_bar_size_allocate(
|
||||
GtkWidget* widget,
|
||||
GtkAllocation* allocation
|
||||
)
|
||||
{
|
||||
gint accum_margins = 0;
|
||||
gint accum_width = 0;
|
||||
gint alloc_per_child = 0;
|
||||
GtkWidget* button;
|
||||
GtkBorder button_margins;
|
||||
GtkStyleContext* button_style;
|
||||
GSList* child;
|
||||
GtkAllocation child_alloc;
|
||||
guint i;
|
||||
guint n_buttons = 0;
|
||||
guint n_buttons_can_fit = 0;
|
||||
TaskButtonBar* taskbutton_bar = TASKBUTTON_BAR(widget);
|
||||
|
||||
n_buttons = g_slist_length(taskbutton_bar->priv->buttons);
|
||||
|
||||
gtk_widget_set_allocation(widget, allocation);
|
||||
|
||||
// Phase 1 - calculate how much space would be taken up if all the buttons
|
||||
// are the minimum size
|
||||
//
|
||||
child = taskbutton_bar->priv->buttons;
|
||||
|
||||
while (child)
|
||||
{
|
||||
button = GTK_WIDGET(child->data);
|
||||
button_style = gtk_widget_get_style_context(button);
|
||||
|
||||
gtk_style_context_get_margin(
|
||||
button_style,
|
||||
GTK_STATE_FLAG_NORMAL,
|
||||
&button_margins
|
||||
);
|
||||
|
||||
accum_width += TASKBUTTON_MIN_WIDTH +
|
||||
button_margins.left +
|
||||
button_margins.right;
|
||||
|
||||
if (accum_width > allocation->width)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
n_buttons_can_fit++;
|
||||
child = child->next;
|
||||
}
|
||||
|
||||
// Phase 2 - based on the number of widgets that can fit, share the free
|
||||
// space in the container
|
||||
//
|
||||
if (n_buttons_can_fit > 0)
|
||||
{
|
||||
alloc_per_child =
|
||||
MIN(
|
||||
TASKBUTTON_MAX_WIDTH,
|
||||
(allocation->width - accum_margins) / n_buttons_can_fit
|
||||
);
|
||||
}
|
||||
|
||||
child = taskbutton_bar->priv->buttons;
|
||||
|
||||
child_alloc.x = allocation->x;
|
||||
child_alloc.y = 0;
|
||||
child_alloc.width = 0;
|
||||
child_alloc.height = TASKBAND_ROW_HEIGHT;
|
||||
|
||||
for (i = 0; i < n_buttons_can_fit; i++)
|
||||
{
|
||||
button = GTK_WIDGET(child->data);
|
||||
button_style = gtk_widget_get_style_context(button);
|
||||
|
||||
gtk_style_context_get_margin(
|
||||
button_style,
|
||||
GTK_STATE_FLAG_NORMAL,
|
||||
&button_margins
|
||||
);
|
||||
|
||||
child_alloc.width = alloc_per_child +
|
||||
button_margins.left +
|
||||
button_margins.right;
|
||||
|
||||
gtk_widget_size_allocate(button, &child_alloc);
|
||||
gtk_widget_set_visible(button, TRUE);
|
||||
|
||||
child_alloc.x += child_alloc.width;
|
||||
|
||||
child = child->next;
|
||||
}
|
||||
|
||||
for (i = n_buttons_can_fit; i < n_buttons; i++)
|
||||
{
|
||||
button = GTK_WIDGET(child->data);
|
||||
|
||||
gtk_widget_set_visible(button, FALSE);
|
||||
|
||||
child = child->next;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* taskbutton_bar_new(void)
|
||||
{
|
||||
return GTK_WIDGET(
|
||||
g_object_new(
|
||||
TYPE_TASKBUTTON_BAR,
|
||||
NULL
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static gboolean taskbutton_bar_has_button(
|
||||
TaskButtonBar* taskbutton_bar,
|
||||
GtkToggleButton* button
|
||||
)
|
||||
{
|
||||
return g_slist_find(taskbutton_bar->priv->buttons, button) != NULL;
|
||||
}
|
||||
32
shell/taskband/src/taskbuttons/taskbuttonbar.h
Normal file
32
shell/taskband/src/taskbuttons/taskbuttonbar.h
Normal file
@@ -0,0 +1,32 @@
|
||||
#ifndef __TASKBUTTONBAR_H__
|
||||
#define __TASKBUTTONBAR_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _TaskButtonBarPrivate TaskButtonBarPrivate;
|
||||
typedef struct _TaskButtonBarClass TaskButtonBarClass;
|
||||
typedef struct _TaskButtonBar TaskButtonBar;
|
||||
|
||||
#define TYPE_TASKBUTTON_BAR (taskbutton_bar_get_type())
|
||||
#define TASKBUTTON_BAR(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_TASKBUTTON_BAR, TaskButtonBar))
|
||||
#define TASKBUTTON_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_TASKBUTTON_BAR, TaskButtonBarClass))
|
||||
#define IS_TASKBUTTON_BAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_TASKBUTTON_BAR))
|
||||
#define IS_TASKBUTTON_BAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_TASKBUTTON_BAR))
|
||||
#define TASKBUTTON_BAR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), TYPE_TASKBUTTON_BAR, TaskButtonBarClass))
|
||||
|
||||
GType taskbutton_bar_get_type(void) G_GNUC_CONST;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* taskbutton_bar_new(void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
||||
425
shell/taskband/src/taskbuttons/windowmonitor.c
Normal file
425
shell/taskband/src/taskbuttons/windowmonitor.c
Normal file
@@ -0,0 +1,425 @@
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <pango/pango.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "../dispproto.h"
|
||||
#include "windowmonitor.h"
|
||||
|
||||
//
|
||||
// STRUCTURE DEFINITIONS
|
||||
//
|
||||
typedef struct _WindowManagerSingle
|
||||
{
|
||||
GtkToggleButton* button;
|
||||
GtkImage* button_icon;
|
||||
gboolean button_synchronizing;
|
||||
GtkLabel* button_text;
|
||||
WndMgmtWindow* managed_window;
|
||||
WindowMonitor* parent_monitor;
|
||||
} WindowManagerSingle;
|
||||
|
||||
struct _WindowMonitor
|
||||
{
|
||||
GtkContainer* container;
|
||||
WndMgmtScreen* screen;
|
||||
GHashTable* window_manager_map;
|
||||
};
|
||||
|
||||
//
|
||||
// FORWARD DECLARATIONS
|
||||
//
|
||||
static void on_active_window_changed(
|
||||
WndMgmtScreen* screen,
|
||||
WndMgmtWindow* previously_active_window,
|
||||
gpointer user_data
|
||||
);
|
||||
static void on_window_closed(
|
||||
WndMgmtScreen* screen,
|
||||
WndMgmtWindow* window,
|
||||
gpointer user_data
|
||||
);
|
||||
static void on_window_opened(
|
||||
WndMgmtScreen* screen,
|
||||
WndMgmtWindow* window,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
static void on_window_icon_changed(
|
||||
WndMgmtWindow* window,
|
||||
gpointer user_data
|
||||
);
|
||||
static void on_window_name_changed(
|
||||
WndMgmtWindow* window,
|
||||
gpointer user_data
|
||||
);
|
||||
static void on_window_state_changed(
|
||||
WndMgmtWindow* window,
|
||||
gint changed_mask,
|
||||
gint new_state,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
static void on_window_button_toggled(
|
||||
GtkToggleButton* button,
|
||||
gpointer user_data
|
||||
);
|
||||
|
||||
static void window_manager_update_icon(
|
||||
WindowManagerSingle* window_manager
|
||||
);
|
||||
static void window_manager_update_state(
|
||||
WindowManagerSingle* window_manager
|
||||
);
|
||||
static void window_manager_update_text(
|
||||
WindowManagerSingle* window_manager
|
||||
);
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
WindowMonitor* window_monitor_init_management(
|
||||
GtkContainer* container
|
||||
)
|
||||
{
|
||||
WindowMonitor* window_monitor = g_new(WindowMonitor, 1);
|
||||
|
||||
window_monitor->container = container;
|
||||
window_monitor->screen = wndmgmt_screen_get_default();
|
||||
window_monitor->window_manager_map = g_hash_table_new(
|
||||
g_direct_hash,
|
||||
g_direct_equal
|
||||
);
|
||||
|
||||
g_signal_connect(
|
||||
window_monitor->screen,
|
||||
"active-window-changed",
|
||||
G_CALLBACK(on_active_window_changed),
|
||||
window_monitor
|
||||
);
|
||||
g_signal_connect(
|
||||
window_monitor->screen,
|
||||
"window-closed",
|
||||
G_CALLBACK(on_window_closed),
|
||||
window_monitor
|
||||
);
|
||||
g_signal_connect(
|
||||
window_monitor->screen,
|
||||
"window-opened",
|
||||
G_CALLBACK(on_window_opened),
|
||||
window_monitor
|
||||
);
|
||||
|
||||
return window_monitor;
|
||||
}
|
||||
|
||||
//
|
||||
// PRIVATE FUNCTIONS
|
||||
//
|
||||
static void window_manager_update_icon(
|
||||
WindowManagerSingle* window_manager
|
||||
)
|
||||
{
|
||||
if (window_manager->button == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
gtk_image_set_from_pixbuf(
|
||||
window_manager->button_icon,
|
||||
wndmgmt_window_get_mini_icon(
|
||||
window_manager->managed_window
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
static void window_manager_update_state(
|
||||
WindowManagerSingle* window_manager
|
||||
)
|
||||
{
|
||||
GtkBox* button_box;
|
||||
gboolean skip_tasklist;
|
||||
|
||||
skip_tasklist =
|
||||
wndmgmt_window_is_skip_tasklist(window_manager->managed_window);
|
||||
|
||||
if (skip_tasklist && window_manager->button != NULL)
|
||||
{
|
||||
gtk_widget_destroy(GTK_WIDGET(window_manager->button));
|
||||
|
||||
window_manager->button = NULL;
|
||||
window_manager->button_icon = NULL;
|
||||
window_manager->button_text = NULL;
|
||||
}
|
||||
else if (!skip_tasklist && window_manager->button == NULL)
|
||||
{
|
||||
button_box = GTK_BOX(
|
||||
gtk_box_new(
|
||||
GTK_ORIENTATION_HORIZONTAL,
|
||||
0
|
||||
)
|
||||
);
|
||||
window_manager->button = GTK_TOGGLE_BUTTON(
|
||||
gtk_toggle_button_new()
|
||||
);
|
||||
window_manager->button_icon = GTK_IMAGE(gtk_image_new());
|
||||
window_manager->button_text = GTK_LABEL(gtk_label_new(NULL));
|
||||
|
||||
window_manager_update_icon(window_manager);
|
||||
window_manager_update_text(window_manager);
|
||||
|
||||
gtk_widget_set_halign(
|
||||
GTK_WIDGET(window_manager->button_text),
|
||||
GTK_ALIGN_START
|
||||
);
|
||||
gtk_label_set_ellipsize(
|
||||
window_manager->button_text,
|
||||
PANGO_ELLIPSIZE_END
|
||||
);
|
||||
|
||||
g_signal_connect(
|
||||
window_manager->button,
|
||||
"toggled",
|
||||
G_CALLBACK(on_window_button_toggled),
|
||||
window_manager
|
||||
);
|
||||
|
||||
gtk_box_pack_start(
|
||||
button_box,
|
||||
GTK_WIDGET(window_manager->button_icon),
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
gtk_box_pack_start(
|
||||
button_box,
|
||||
GTK_WIDGET(window_manager->button_text),
|
||||
TRUE,
|
||||
TRUE,
|
||||
0
|
||||
);
|
||||
|
||||
gtk_container_add(
|
||||
GTK_CONTAINER(window_manager->button),
|
||||
GTK_WIDGET(button_box)
|
||||
);
|
||||
|
||||
gtk_container_add(
|
||||
window_manager->parent_monitor->container,
|
||||
GTK_WIDGET(window_manager->button)
|
||||
);
|
||||
|
||||
gtk_widget_show_all(GTK_WIDGET(window_manager->button));
|
||||
}
|
||||
}
|
||||
|
||||
static void window_manager_update_text(
|
||||
WindowManagerSingle* window_manager
|
||||
)
|
||||
{
|
||||
const gchar* new_text =
|
||||
wndmgmt_window_get_name(window_manager->managed_window);
|
||||
|
||||
gtk_label_set_text(
|
||||
window_manager->button_text,
|
||||
new_text
|
||||
);
|
||||
gtk_widget_set_tooltip_text(
|
||||
GTK_WIDGET(window_manager->button),
|
||||
new_text
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// CALLBACKS
|
||||
//
|
||||
static void on_active_window_changed(
|
||||
WINTC_UNUSED(WndMgmtScreen* screen),
|
||||
WndMgmtWindow* previously_active_window,
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WndMgmtWindow* active_window;
|
||||
WindowManagerSingle* window_manager_old;
|
||||
WindowManagerSingle* window_manager_new;
|
||||
WindowMonitor* window_monitor = (WindowMonitor*) user_data;
|
||||
|
||||
active_window = wndmgmt_screen_get_active_window(window_monitor->screen);
|
||||
|
||||
if (previously_active_window != NULL)
|
||||
{
|
||||
window_manager_old =
|
||||
g_hash_table_lookup(
|
||||
window_monitor->window_manager_map,
|
||||
previously_active_window
|
||||
);
|
||||
|
||||
if (
|
||||
window_manager_old != NULL &&
|
||||
window_manager_old->button != NULL
|
||||
)
|
||||
{
|
||||
window_manager_old->button_synchronizing = TRUE;
|
||||
|
||||
gtk_toggle_button_set_active(
|
||||
window_manager_old->button,
|
||||
FALSE
|
||||
);
|
||||
|
||||
window_manager_old->button_synchronizing = FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
if (active_window != NULL)
|
||||
{
|
||||
window_manager_new =
|
||||
g_hash_table_lookup(
|
||||
window_monitor->window_manager_map,
|
||||
active_window
|
||||
);
|
||||
|
||||
if (
|
||||
window_manager_new != NULL &&
|
||||
window_manager_new->button != NULL
|
||||
)
|
||||
{
|
||||
window_manager_new->button_synchronizing = TRUE;
|
||||
|
||||
gtk_toggle_button_set_active(
|
||||
window_manager_new->button,
|
||||
TRUE
|
||||
);
|
||||
|
||||
window_manager_new->button_synchronizing = FALSE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void on_window_closed(
|
||||
WINTC_UNUSED(WndMgmtScreen* screen),
|
||||
WndMgmtWindow* window,
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WindowManagerSingle* window_manager;
|
||||
WindowMonitor* window_monitor = (WindowMonitor*) user_data;
|
||||
|
||||
window_manager =
|
||||
g_hash_table_lookup(
|
||||
window_monitor->window_manager_map,
|
||||
window
|
||||
);
|
||||
|
||||
if (window_manager == NULL)
|
||||
{
|
||||
// Unusual... we're not managing this window? oh well
|
||||
//
|
||||
return;
|
||||
}
|
||||
|
||||
if (window_manager->button != NULL)
|
||||
{
|
||||
gtk_widget_destroy(GTK_WIDGET(window_manager->button));
|
||||
}
|
||||
|
||||
g_free(window_manager);
|
||||
g_hash_table_remove(window_monitor->window_manager_map, window);
|
||||
}
|
||||
|
||||
static void on_window_opened(
|
||||
WINTC_UNUSED(WndMgmtScreen* screen),
|
||||
WndMgmtWindow* window,
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WindowManagerSingle* window_manager = g_new(WindowManagerSingle, 1);
|
||||
WindowMonitor* window_monitor = (WindowMonitor*) user_data;
|
||||
|
||||
window_manager->button = NULL;
|
||||
window_manager->button_icon = NULL;
|
||||
window_manager->button_synchronizing = FALSE;
|
||||
window_manager->button_text = NULL;
|
||||
window_manager->managed_window = window;
|
||||
window_manager->parent_monitor = window_monitor;
|
||||
|
||||
g_hash_table_insert(
|
||||
window_monitor->window_manager_map,
|
||||
window,
|
||||
window_manager
|
||||
);
|
||||
|
||||
window_manager_update_state(window_manager);
|
||||
|
||||
g_signal_connect(
|
||||
window,
|
||||
"icon-changed",
|
||||
G_CALLBACK(on_window_icon_changed),
|
||||
window_manager
|
||||
);
|
||||
g_signal_connect(
|
||||
window,
|
||||
"name-changed",
|
||||
G_CALLBACK(on_window_name_changed),
|
||||
window_manager
|
||||
);
|
||||
g_signal_connect(
|
||||
window,
|
||||
"state-changed",
|
||||
G_CALLBACK(on_window_state_changed),
|
||||
window_manager
|
||||
);
|
||||
}
|
||||
|
||||
static void on_window_icon_changed(
|
||||
WINTC_UNUSED(WndMgmtWindow* window),
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WindowManagerSingle* window_manager = (WindowManagerSingle*) user_data;
|
||||
|
||||
window_manager_update_icon(window_manager);
|
||||
}
|
||||
|
||||
static void on_window_name_changed(
|
||||
WINTC_UNUSED(WndMgmtWindow* window),
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WindowManagerSingle* window_manager = (WindowManagerSingle*) user_data;
|
||||
|
||||
window_manager_update_text(window_manager);
|
||||
}
|
||||
|
||||
static void on_window_state_changed(
|
||||
WINTC_UNUSED(WndMgmtWindow* window),
|
||||
WINTC_UNUSED(gint changed_mask),
|
||||
WINTC_UNUSED(gint new_state),
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WindowManagerSingle* window_manager = (WindowManagerSingle*) user_data;
|
||||
|
||||
window_manager_update_state(window_manager);
|
||||
}
|
||||
|
||||
static void on_window_button_toggled(
|
||||
GtkToggleButton* button,
|
||||
gpointer user_data
|
||||
)
|
||||
{
|
||||
WindowManagerSingle* window_manager = (WindowManagerSingle*) user_data;
|
||||
|
||||
if (window_manager->button_synchronizing)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (gtk_toggle_button_get_active(button))
|
||||
{
|
||||
wndmgmt_window_unminimize(window_manager->managed_window);
|
||||
}
|
||||
else
|
||||
{
|
||||
wndmgmt_window_minimize(window_manager->managed_window);
|
||||
}
|
||||
}
|
||||
21
shell/taskband/src/taskbuttons/windowmonitor.h
Normal file
21
shell/taskband/src/taskbuttons/windowmonitor.h
Normal file
@@ -0,0 +1,21 @@
|
||||
#ifndef __WINDOWMONITOR_H__
|
||||
#define __WINDOWMONITOR_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _WindowMonitor WindowMonitor;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
WindowMonitor* window_monitor_init_management(
|
||||
GtkContainer* container
|
||||
);
|
||||
|
||||
#endif
|
||||
152
shell/taskband/src/window.c
Normal file
152
shell/taskband/src/window.c
Normal file
@@ -0,0 +1,152 @@
|
||||
#include <gdk/gdk.h>
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <wintc-comgtk.h>
|
||||
|
||||
#include "application.h"
|
||||
#include "dispproto.h"
|
||||
#include "window.h"
|
||||
#include "start/startbutton.h"
|
||||
#include "systray/notifarea.h"
|
||||
#include "taskbuttons/taskbuttonbar.h"
|
||||
#include "taskbuttons/windowmonitor.h"
|
||||
|
||||
//
|
||||
// GTK OOP CLASS/INSTANCE DEFINITIONS
|
||||
//
|
||||
struct _WinTCTaskbandWindowPrivate
|
||||
{
|
||||
GtkWidget* main_box;
|
||||
|
||||
GtkWidget* notification_area;
|
||||
GtkWidget* start_button;
|
||||
GtkWidget* taskbuttons;
|
||||
};
|
||||
|
||||
struct _WinTCTaskbandWindowClass
|
||||
{
|
||||
GtkApplicationWindowClass __parent__;
|
||||
};
|
||||
|
||||
struct _WinTCTaskbandWindow
|
||||
{
|
||||
GtkApplicationWindow __parent__;
|
||||
|
||||
WinTCTaskbandWindowPrivate* priv;
|
||||
};
|
||||
|
||||
//
|
||||
// GTK TYPE DEFINITION & CTORS
|
||||
//
|
||||
G_DEFINE_TYPE_WITH_CODE(
|
||||
WinTCTaskbandWindow,
|
||||
wintc_taskband_window,
|
||||
GTK_TYPE_APPLICATION_WINDOW,
|
||||
G_ADD_PRIVATE(WinTCTaskbandWindow)
|
||||
)
|
||||
|
||||
static void wintc_taskband_window_class_init(
|
||||
WINTC_UNUSED(WinTCTaskbandWindowClass* klass)
|
||||
) {}
|
||||
|
||||
static void wintc_taskband_window_init(
|
||||
WinTCTaskbandWindow* self
|
||||
)
|
||||
{
|
||||
self->priv = wintc_taskband_window_get_instance_private(self);
|
||||
|
||||
//
|
||||
// WINDOW SETUP
|
||||
//
|
||||
wintc_widget_add_style_class(
|
||||
GTK_WIDGET(self),
|
||||
"wintc-taskband"
|
||||
);
|
||||
|
||||
anchor_taskband_to_bottom(GTK_WINDOW(self));
|
||||
|
||||
//
|
||||
// SET UP CHILDREN IN HERE
|
||||
// FIXME: Tidy all this stuff up big time! Taskband shouldn't know about
|
||||
// how stuff is built, just ask for a Start button, a taskbar, and
|
||||
// systray -- no implementation details!!
|
||||
//
|
||||
|
||||
// Create main container box
|
||||
//
|
||||
self->priv->main_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
|
||||
|
||||
gtk_container_add(
|
||||
GTK_CONTAINER(self),
|
||||
self->priv->main_box
|
||||
);
|
||||
|
||||
// Create Start button and menu
|
||||
//
|
||||
GtkCssProvider* css_start = gtk_css_provider_new();
|
||||
|
||||
gtk_css_provider_load_from_resource(
|
||||
css_start,
|
||||
"/uk/oddmatics/wintc/taskband/start-menu.css"
|
||||
);
|
||||
|
||||
gtk_style_context_add_provider_for_screen(
|
||||
gdk_screen_get_default(),
|
||||
GTK_STYLE_PROVIDER(css_start),
|
||||
GTK_STYLE_PROVIDER_PRIORITY_FALLBACK
|
||||
);
|
||||
|
||||
self->priv->start_button = start_button_new();
|
||||
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(self->priv->main_box),
|
||||
self->priv->start_button,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
|
||||
// Create task buttons
|
||||
//
|
||||
self->priv->taskbuttons = taskbutton_bar_new();
|
||||
|
||||
gtk_box_pack_start(
|
||||
GTK_BOX(self->priv->main_box),
|
||||
self->priv->taskbuttons,
|
||||
TRUE,
|
||||
TRUE,
|
||||
0
|
||||
);
|
||||
|
||||
// Create notification area
|
||||
//
|
||||
self->priv->notification_area = notification_area_new();
|
||||
|
||||
gtk_box_pack_end(
|
||||
GTK_BOX(self->priv->main_box),
|
||||
self->priv->notification_area,
|
||||
FALSE,
|
||||
FALSE,
|
||||
0
|
||||
);
|
||||
}
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* wintc_taskband_window_new(
|
||||
WinTCTaskbandApplication* app
|
||||
)
|
||||
{
|
||||
return GTK_WIDGET(
|
||||
g_object_new(
|
||||
TYPE_WINTC_TASKBAND_WINDOW,
|
||||
"application", GTK_APPLICATION(app),
|
||||
"type", GTK_WINDOW_TOPLEVEL,
|
||||
"decorated", FALSE,
|
||||
"resizable", FALSE,
|
||||
"type-hint", GDK_WINDOW_TYPE_HINT_DOCK,
|
||||
NULL
|
||||
)
|
||||
);
|
||||
}
|
||||
32
shell/taskband/src/window.h
Normal file
32
shell/taskband/src/window.h
Normal file
@@ -0,0 +1,32 @@
|
||||
#ifndef __WINDOW_H__
|
||||
#define __WINDOW_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "application.h"
|
||||
|
||||
//
|
||||
// GTK OOP BOILERPLATE
|
||||
//
|
||||
typedef struct _WinTCTaskbandWindowPrivate WinTCTaskbandWindowPrivate;
|
||||
typedef struct _WinTCTaskbandWindowClass WinTCTaskbandWindowClass;
|
||||
typedef struct _WinTCTaskbandWindow WinTCTaskbandWindow;
|
||||
|
||||
#define TYPE_WINTC_TASKBAND_WINDOW (wintc_taskband_window_get_type())
|
||||
#define WINTC_TASKBAND_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), TYPE_WINTC_TASKBAND_WINDOW, WinTCTaskbandWindow))
|
||||
#define WINTC_TASKBAND_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), TYPE_WINTC_TASKBAND_WINDOW, WinTCTaskbandWindow))
|
||||
#define IS_WINTC_TASKBAND_WINDOW(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), TYPE_WINTC_TASKBAND_WINDOW))
|
||||
#define IS_WINTC_TASKBAND_WINDOW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), TYPE_WINTC_TASKBAND_WINDOW))
|
||||
#define WINTC_TASKBAND_WINDOW_GET_CLASS(obj) (G_TYPE_CHECK_INSTANCE_GET_CLASS((obj), TYPE_WINTC_TASKBAND_WINDOW))
|
||||
|
||||
GType wintc_taskband_window_get_type(void) G_GNUC_CONST;
|
||||
|
||||
//
|
||||
// PUBLIC FUNCTIONS
|
||||
//
|
||||
GtkWidget* wintc_taskband_window_new(
|
||||
WinTCTaskbandApplication* app
|
||||
);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user