# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2017, Lukas Holecek
# This file is distributed under the same license as the CopyQ package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2017.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: CopyQ \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-07 14:49+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.4.0\n"

#: ../../source-code-overview.rst:2
msgid "Source Code Overview"
msgstr ""

#: ../../source-code-overview.rst:4
msgid "This page describes application processes and source code."
msgstr ""

#: ../../source-code-overview.rst:7
msgid "Applications, Frameworks and Libraries"
msgstr ""

#: ../../source-code-overview.rst:9
msgid "The application is written in C++11 and uses Qt framework."
msgstr ""

#: ../../source-code-overview.rst:11
msgid "Source code can be build either with CMake (preferred) or QMake."
msgstr ""

#: ../../source-code-overview.rst:13
msgid ""
"Most icons in the application are taken from theme by default (which "
"currently works only on Linux) with fallback to built-in icons provided "
"by `FontAwesome <http://fontawesome.io/>`__."
msgstr ""

#: ../../source-code-overview.rst:17
msgid ""
"Application logo was created in `Blender <https://www.blender.org/>`__ "
"(scene source is `here "
"<https://github.com/hluk/CopyQ/blob/master/src/images/logo.blend>`__)."
msgstr ""

#: ../../source-code-overview.rst:21
msgid ""
"The logo is used for bigger application icon. Smaller icons were created "
"in `Inkscape <https://inkscape.org/>`__ (icon source is `here "
"<https://github.com/hluk/CopyQ/blob/master/src/images/icon.svg>`__)."
msgstr ""

#: ../../source-code-overview.rst:26
msgid "Application Processes"
msgstr ""

#: ../../source-code-overview.rst:28
msgid "There are these system processes:"
msgstr ""

#: ../../source-code-overview.rst:30
msgid "main GUI application,"
msgstr ""

#: ../../source-code-overview.rst:31
msgid "clipboard monitor (started from main application),"
msgstr ""

#: ../../source-code-overview.rst:32
msgid "multiple clients (run scripts in main application)."
msgstr ""

#: ../../source-code-overview.rst:35
msgid "Main GUI Application"
msgstr ""

#: ../../source-code-overview.rst:37
msgid ""
"The main GUI application (or server) can be executed by running ``copyq``"
" binary without attributes (session name can be optionally specified on "
"command line)."
msgstr ""

#: ../../source-code-overview.rst:41
msgid ""
"It creates local server allowing communication with clipboard monitor "
"process and other client processes."
msgstr ""

#: ../../source-code-overview.rst:44
msgid ""
"Each user can run multiple main application processes each with unique "
"session name (default name is empty)."
msgstr ""

#: ../../source-code-overview.rst:48
msgid "Clipboard Monitor"
msgstr ""

#: ../../source-code-overview.rst:50
msgid ""
"Clipboard monitoring happens in separate process because otherwise it "
"would block GUI (in Qt clipboard needs to be accessed in main GUI "
"thread). The process is allowed to crash or loop indefinitely due to bugs"
" on some platforms."
msgstr ""

#: ../../source-code-overview.rst:55
msgid ""
"Setting and retrieving clipboard can still happen in GUI thread (copying "
"and pasting in various GUI widgets) but it's preferred to send and "
"receive clipboard data using monitor process."
msgstr ""

#: ../../source-code-overview.rst:59
msgid ""
"The monitor process is launched as soon as GUI application starts and is "
"restarted whenever it doesn't respond to keep-alive requests."
msgstr ""

#: ../../source-code-overview.rst:63
msgid "Clients and Scripting"
msgstr ""

#: ../../source-code-overview.rst:65
msgid ""
"Scripting language is `Qt Script <https://doc.qt.io/qt-5/qtscript-"
"index.html>`__ (mostly same syntax and functions as JavaScript)."
msgstr ""

#: ../../source-code-overview.rst:69
msgid "API is described in :ref:`scripting-api`."
msgstr ""

#: ../../source-code-overview.rst:71
msgid ""
"A script can be started by passing arguments to ``copyq``. This tells the"
" server (main GUI application) to run the script."
msgstr ""

#: ../../source-code-overview.rst:74
msgid ""
"After script finishes, the server sends back output of last command and "
"exit code (non-zero if script crashes)."
msgstr ""

#: ../../source-code-overview.rst:82
msgid "While script is running, it can send print requests to client."
msgstr ""

#: ../../source-code-overview.rst:88
msgid "Scripts can ask for stdin from client."
msgstr ""

#: ../../source-code-overview.rst:94
msgid "The script run in current directory of client process."
msgstr ""

#: ../../source-code-overview.rst:101
msgid ""
"Single function call where all arguments are numbers or strings can be "
"executed by passing function name and function arguments on command line."
" Following commands are equal."
msgstr ""

#: ../../source-code-overview.rst:110
msgid ""
"Getting application version or help mustn't require the server to be "
"running."
msgstr ""

#: ../../source-code-overview.rst:118
msgid ""
"Scripts run in separate thread and communicate with main thread by "
"calling methods on an object of ``ScriptableProxy`` class. If called from"
" non-main thread, these methods invoke a slot on an ``QObject`` in main "
"thread and pass it a function object which simply calls the method again."
msgstr ""

#: ../../source-code-overview.rst:145
msgid "Platform-dependent Code"
msgstr ""

#: ../../source-code-overview.rst:147
msgid ""
"Code for various platforms is stored in `src/platform "
"<https://github.com/hluk/CopyQ/tree/master/src/platform>`__."
msgstr ""

#: ../../source-code-overview.rst:150
msgid ""
"This leverages amount of ``#if``\\ s and similar preprocessor directives "
"in common code."
msgstr ""

#: ../../source-code-overview.rst:153
msgid ""
"Each supported platform implements `PlatformNativeInterface "
"<https://github.com/hluk/CopyQ/blob/master/src/platform/platformnativeinterface.h>`__"
" and ``createPlatformNativeInterface()``."
msgstr ""

#: ../../source-code-overview.rst:157
msgid "The implementations can contain:"
msgstr ""

#: ../../source-code-overview.rst:159
msgid "creating Qt application objects,"
msgstr ""

#: ../../source-code-overview.rst:160
msgid "clipboard handling (for clipboard monitor),"
msgstr ""

#: ../../source-code-overview.rst:161
msgid "focusing window and getting window titles,"
msgstr ""

#: ../../source-code-overview.rst:162
msgid "getting system paths,"
msgstr ""

#: ../../source-code-overview.rst:163
msgid "setting \"autostart\" option,"
msgstr ""

#: ../../source-code-overview.rst:164
msgid ""
"handling global shortcuts (**note:** this part is in `qxt/ "
"<https://github.com/hluk/CopyQ/tree/master/qxt>`__)."
msgstr ""

#: ../../source-code-overview.rst:167
msgid ""
"For unsupported platforms there is `simple implementation "
"<https://github.com/hluk/CopyQ/tree/master/src/platform/dummy>`__ to get "
"started."
msgstr ""

#: ../../source-code-overview.rst:172
msgid "Plugins"
msgstr ""

#: ../../source-code-overview.rst:174
msgid ""
"Plugins are built as dynamic libraries which are loaded from runtime "
"plugin directory (platform-dependent) after application start."
msgstr ""

#: ../../source-code-overview.rst:177
msgid ""
"Code is stored in `plugins "
"<https://github.com/hluk/CopyQ/tree/master/plugins>`__."
msgstr ""

#: ../../source-code-overview.rst:180
msgid ""
"Plugins implement interfaces from `src/item/itemwidget.h "
"<https://github.com/hluk/CopyQ/tree/master/src/item/itemwidget.h>`__."
msgstr ""

#: ../../source-code-overview.rst:183
msgid ""
"To create new plugin just duplicate and rewrite an existing plugin. You "
"can build the plugin with ``make {PLUGIN_NAME}``."
msgstr ""

#: ../../source-code-overview.rst:187
msgid "Continuous Integration (CI)"
msgstr ""

#: ../../source-code-overview.rst:189
msgid ""
"The application binaries and packages are built and tested on multiple CI"
" servers."
msgstr ""

#: ../../source-code-overview.rst:192
msgid "`Travis CI <https://travis-ci.org/hluk/CopyQ>`__"
msgstr ""

#: ../../source-code-overview.rst:193
msgid "Builds packages for OS X."
msgstr ""

#: ../../source-code-overview.rst:194
msgid "Builds and runs tests for Linux binaries with Qt 4."
msgstr ""

#: ../../source-code-overview.rst:196
msgid "`GitLab CI <https://gitlab.com/CopyQ/CopyQ/builds>`__"
msgstr ""

#: ../../source-code-overview.rst:197
msgid "Builds and runs tests for Ubuntu 16.04 binaries with Qt 5."
msgstr ""

#: ../../source-code-overview.rst:198
msgid ""
"Screenshots are taken while GUI tests are running. These are available if"
" a test fails."
msgstr ""

#: ../../source-code-overview.rst:201
msgid "`AppVeyor <https://ci.appveyor.com/project/hluk/copyq>`__"
msgstr ""

#: ../../source-code-overview.rst:202
msgid "Builds installers and portable packages for Windows with Qt 5."
msgstr ""

#: ../../source-code-overview.rst:203
msgid "Provides downloads for recent commits."
msgstr ""

#: ../../source-code-overview.rst:204
msgid ""
"Release build are based on gcc-compiled binaries (Visual Studio builds "
"are also available)."
msgstr ""

#: ../../source-code-overview.rst:207
msgid ""
"`OBS Linux Packages "
"<https://build.opensuse.org/project/show/home:lukho:copyq>`__"
msgstr ""

#: ../../source-code-overview.rst:209
msgid "Builds release packages for various Linux distributions."
msgstr ""

#: ../../source-code-overview.rst:211
msgid ""
"`Beta OBS Linux Packages "
"<https://build.opensuse.org/project/show/home:lukho:copyq-beta>`__"
msgstr ""

#: ../../source-code-overview.rst:213
msgid "Builds beta and unstable packages for various Linux distributions."
msgstr ""

#: ../../source-code-overview.rst:215
msgid "`Coveralls <https://coveralls.io/github/hluk/CopyQ>`__"
msgstr ""

#: ../../source-code-overview.rst:216
msgid "Contains coverage report from tests run with Travis CI."
msgstr ""

