pax_global_header00006660000000000000000000000064151520122720014507gustar00rootroot0000000000000052 comment=543a9ee89cdc5a7011f67f618df2bb3b77a001e8 hakaishi-shutdown-qapps-543a9ee/000077500000000000000000000000001515201227200167045ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/.gitignore000066400000000000000000000002471515201227200206770ustar00rootroot00000000000000qshutdown/bin/ qshutdown/build/ qshutdown/Makefile qprogram-starter/bin/ qprogram-starter/build/ qprogram-starter/Makefile debian/upstream/ **.qm **.stash **.pro.user hakaishi-shutdown-qapps-543a9ee/README.md000066400000000000000000000024721515201227200201700ustar00rootroot00000000000000# shutdown-qapps ## intro This repository consists of 2 programms. qshutdown and qprogram-starter ## Instructions For detailed instructions, please see the README files in the corresponding folders. * [qshutdown/README.md](qshutdown/README.md) * [qprogram-starter/README.md](qprogram-starter/README.md) ### Install on Linux To install from the repositories of Debian based systems like Ubuntu: * `sudo apt-get install qshutdown` * `sudo apt-get install qprogram-starter` There is a launchpad ppa repository as well, but be aware that the builds are more unstable. For qshutdown: 1. `sudo apt-add-repository ppa:hakaishi/qshutdown` 2. `sudo apt-get update && sudo apt-get install qshutdown` For qprogram-starter: 1. `sudo apt-add-repository ppa:hakaishi/qprogram-starter` 2. `sudo apt-get update && sudo apt-get install qprogram-starter` ### Windows We provide Windows binaries in the release section of GitHub: [here](https://github.com/hakaishi/shutdown-qapps/releases) ## License The Debian distribution is licensed under GPLv3. The Windows binaries include suspend_win.h which is licensed under BSD-2-clause. Note that either of them includes Qt sources which are licensed under various licenses depending on the modules used. See [here](https://doc.qt.io/archives/qt-5.15/licenses-used-in-qt.html) for details. hakaishi-shutdown-qapps-543a9ee/qprogram-starter.qrc000066400000000000000000000002741515201227200227300ustar00rootroot00000000000000 version.txt qprogram-starter/src/pixmap/qprogram-starter.xpm hakaishi-shutdown-qapps-543a9ee/qprogram-starter/000077500000000000000000000000001515201227200222165ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qprogram-starter/COPYING000066400000000000000000001043741515201227200232620ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . hakaishi-shutdown-qapps-543a9ee/qprogram-starter/NEWS000066400000000000000000000063141515201227200227210ustar00rootroot00000000000000Changes in Release 1.9.0 ========================= - move to Qt 6 - fix suspend for windows Changes in Release 1.8.0 ========================= - replaced second text editor with more efficient functinality (see below) - run each line in the text editor as a separate process unless the line ends with a backslash - the default settings and log files location has changed (see the info window for more information) - added command history - other small fixes Changes in Release 1.7.0 ========================= - added new shutdown/reboot/suspend/hibernate command (possibly working on most debian based systems) Changes in Release 1.6.8 ========================= added systemctl command in "automatic" and "sudo" Changes in Release 1.6.7 ========================= - fixed not beeing able to start commands after first one failed - fixed not saving text editors contents - fixed not saving states of checkboxes - fixed bug relating to environment (#716194) Changes in Release 1.6.6 ========================= - new design and new options - added welcome dialog - update on translations Changes in Release 1.6.5 ========================= - fixed bug: Settings are not saved if shutdown was set - reviewed shutdown commands - added translations for: (German), Asturian, Bosnian, Croatian, English (Australia / United Kingdom), Galician, Italian, Malay, Polish, Russian, Turkish, Ukrainian Changes in Release 1.6.4 ========================= - Commands etc. can now be linked/connected with "&&" etc. Changes in Release 1.6.2 ========================= - replaced all qDebug(), qWarning() and qCritical() Changes in Release 1.6.1 ========================= - now also compile-able for Windows Changes in Release 1.6.0 ========================= - rearranged design - new function for showing the logs Changes in Release 1.4.8 ========================= - added start & abort buttons - fixed date and time problems (timer) Changes in Release 1.4.5 ========================= - added "delete settings" in destructor - new path for .qm translation files Changes in Release 1.4.3 ========================= - corrected a spelling mistake - some minor changes Changes in Release 1.4.2 ========================= - a little modification for the file browser Changes in Release 1.4.1 ========================= - bug in time calculation fixed Changes in Release 1.4.0 ========================= - the dateTimeEdit was replaced trough a date and a time edit - the date and time are now at minimum the current date and time - there are now browse buttons to choose a program binary - one can now save the command he/she wants to - the output is now devided into four files: two output and two error output files, because there are two processes Changes in Release 1.2.0 ========================= - fixed shutdown function - replaced hints message box with a QPlainTextEdit Object Changes in Release 1.1.0 ========================= - pixmap now in .xpm format - added DeviceKit in the shutdown option Changes in Release 1.0.2 ========================= - nothing source relevant Changes in Release 1.0.1 ========================= - Initial Release hakaishi-shutdown-qapps-543a9ee/qprogram-starter/README.md000066400000000000000000000020731515201227200234770ustar00rootroot00000000000000# qprogram-starter ## INSTALL Dependencies: qt6-base-dev, qt6-tools-dev-tools, qmake6, build-essential If you want to install from source, open a terminal and change into this folder. To install type: `qmake` `sudo make install distclean` ## UNINSTALL To uninstall type: `qmake` (if the Makefile has been removed) `sudo make deinstall` (please note that the users qprogram-starter settings file and the log files won't be removed) ## KNOWN ISSUE: For most systems using the Gnome Shell a certain DBus method has been removed, thus a shutdown dialog will be likely to appear if qshutdown's methods have been set to automatic or to Gnome session. If you do not want this shutdown dialog to appear, please use ConsoleKit or something else. ## LICENES: The Debian distribution is licensed under GPLv3. The Windows binaries include suspend_win.h which is licensed under BSD-2-clause. Note that either of them includes Qt sources which are licensed under various licenses depending on the modules used. See [here](https://doc.qt.io/qt-6/licensing.html) for details. hakaishi-shutdown-qapps-543a9ee/qprogram-starter/autostart/000077500000000000000000000000001515201227200242445ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qprogram-starter/autostart/qprogram-starter.desktop000077500000000000000000000004101515201227200311470ustar00rootroot00000000000000[Desktop Entry] Name=qprogram-starter Name[de_DE]=qprogram-starter Exec=qprogram-starter Terminal=false Type=Application Icon=qprogram-starter Categories=Utility; Name[en_US]=qprogram-starter Comment=A program starter with shutdown options, start time setting etc hakaishi-shutdown-qapps-543a9ee/qprogram-starter/icon.rc000066400000000000000000000001061515201227200234710ustar00rootroot00000000000000IDI_ICON1 ICON DISCARDABLE "src/pixmap/icon.ico" hakaishi-shutdown-qapps-543a9ee/qprogram-starter/qprogram-starter.pro000066400000000000000000000034501515201227200262540ustar00rootroot00000000000000linux{ QT += dbus } TEMPLATE = app TARGET = bin/qprogram-starter DEPENDPATH = . src src/translations INCLUDEPATH = . src OBJECTS_DIR = build MOC_DIR = build UI_DIR = build RCC_DIR = build win32 { RC_FILE += icon.rc HEADERS += src/suspend_win.h } QT += widgets gui system($$[QT_HOST_BINS]/lrelease qprogram-starter.pro) QMAKE_DISTCLEAN = src/translations/*.qm # Input HEADERS += src/gui.h src/preferences.h src/history.h FORMS *= src/ui/gui.ui src/ui/preferences.ui src/ui/history.ui SOURCES += src/main.cpp src/gui.cpp src/preferences.cpp src/history.cpp RESOURCES += ../qprogram-starter.qrc TRANSLATIONS += src/translations/qprogram-starter-ast.ts\ src/translations/qprogram-starter-bs.ts\ src/translations/qprogram-starter-de.ts\ src/translations/qprogram-starter-en_GB.ts\ src/translations/qprogram-starter-es.ts\ src/translations/qprogram-starter-gl.ts\ src/translations/qprogram-starter-hr.ts\ src/translations/qprogram-starter-it.ts\ src/translations/qprogram-starter-ms.ts\ src/translations/qprogram-starter-pl.ts\ src/translations/qprogram-starter-ro.ts\ src/translations/qprogram-starter-uk.ts !win32{ # install target.path = /usr/bin translation.files = src/translations/*.qm translation.path = /usr/share/qprogram-starter/translations autostart.files = autostart/qprogram-starter.desktop autostart.path = /usr/share/applications icon.files = src/pixmap/qprogram-starter.xpm icon.path = /usr/share/icons/hicolor/32x32/apps INSTALLS = target translation autostart icon deinstall.depends = uninstall FORCE deinstall.commands = rmdir /usr/share/qprogram-starter QMAKE_EXTRA_TARGETS = deinstall } OTHER_FILES += \ icon.rc \ src/pixmap/icon.ico hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/000077500000000000000000000000001515201227200230055ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/gui.cpp000077500000000000000000000617241515201227200243120ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "gui.h" #include "preferences.h" #include "history.h" #include "power.h" #include #include #include #include #include #include #include #ifndef Q_OS_WIN32 #include #else #include #endif Gui::Gui(){ setupUi(this); pref = new Preferences(this); history = new History(this); myOutput = new QTextStream(stdout); #if defined(Q_OS_LINUX) if(!QProcessEnvironment().isEmpty()) shell = QProcess::systemEnvironment().filter("SHELL").first().remove("SHELL="); if(shell.isEmpty() && QFile("/bin/bash").exists()) shell = "/bin/bash"; else *myOutput << "E: No shells found! qprogram-starter might not work as expected..."; #elif defined(Q_OS_WIN32) shell = "C:\\Windows\\System32\\cmd.exe"; #elif defined(Q_OS_WIN32) shell = "C:\\Windows\\System32\\cmd.exe"; #elif defined(Q_OS_MACOS) if (!QProcessEnvironment().isEmpty()) { shell = QProcess::systemEnvironment().value("SHELL", "/bin/bash"); } else { shell = "/bin/bash"; } #else shell = ""; #endif //Versioning QFile versionFile(":version"); versionFile.open(QIODevice::ReadOnly | QIODevice::Text); QTextStream in(&versionFile); statusBar()->showMessage(tr("Version ") + in.readLine(),15000); versionFile.close(); processes = new QList; processArgs = new QStringList; messages = new QMessageBox; connect(messages, SIGNAL(finished(int)), this, SLOT(handleMessageEvent(int))); dateEdit->setMinimumDate(QDate::currentDate()); dateTimeTimer = new QTimer(this); dateTimeTimer->start(1000); timer = new QTimer(this); countdown = new QTimer(this); countdown->setSingleShot(true); updCountdown = new QTimer(this); countdownInt = 0; logBox = new QTextEdit; logBox->setReadOnly(true); logBox->resize(600,400); logBox->setWindowTitle(tr("Log")); logBox->setWindowModality(Qt::NonModal); hintMsgBox = new QTextEdit; hintMsgBox->setReadOnly(true); hintMsgBox->resize(600,400); hintMsgBox->setWindowTitle(tr("Info")); hintMsgBox->setWindowModality(Qt::NonModal); hintMsgBox->setHtml(tr("General:
Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.

The message boxes will close themselves after 10 seconds.
To start a program just type i.e. \"firefox\" or \"firefox www.google.com\" and then click on Start. Commands etc. can be linked by \"&&\" etc.

If the process is \"finished\" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.

When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).

Files:
The configuration-file can be found at %2.
The log files can be found at %1.

make examples:
 make -C /path/to/project
 make clean -C /path/to/project

About Errors:
Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at %1.

If the shutdown won't work, it might mean that \"sudo shutdown -P now\" is used. This needs admin permissions. You can do the this:

Post the following in a terminal:
EDITOR=nano sudo -E visudo
and add this line:
* ALL = NOPASSWD:/sbin/shutdown
whereas * replaces the username or %groupname.") #if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) .arg(QDir().toNativeSeparators(QStandardPaths::standardLocations(QStandardPaths::AppDataLocation).first())) #else .arg(QDir().toNativeSeparators(QStandardPaths::standardLocations(QStandardPaths::DataLocation).first())) #endif .arg(QSettings().fileName())); connect(action_Configure, SIGNAL(triggered(bool)), pref, SLOT(show())); connect(dateTimeTimer, SIGNAL(timeout()), this, SLOT(currentDateAndTime())); connect(startB, SIGNAL(clicked(bool)), this, SLOT(run())); connect(abortB, SIGNAL(clicked(bool)), this, SLOT(abortProcesses())); connect(saveButton, SIGNAL(clicked(bool)), this, SLOT(saveData())); connect(timer, SIGNAL(timeout()), this, SLOT(check())); connect(browse, SIGNAL(clicked(bool)), this, SLOT(getProgram())); connect(action_Hints, SIGNAL(triggered(bool)), this, SLOT(info_hint())); connect(showLogsButton, SIGNAL(clicked(bool)), this, SLOT(showLogs())); connect(historyBtn, SIGNAL(clicked(bool)), this, SLOT(showHistory())); connect(history->historyList, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(replaceEditorContent(QListWidgetItem*))); connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(setQuit(int))); } Gui::~Gui(){ delete hintMsgBox; delete logBox; delete messages; delete processes; delete processArgs; } void Gui::handleMessageEvent(int a){ Q_UNUSED(a); singleShot->stop(); delete singleShot; } void Gui::setQuit(int idx) {quitCheckBox->setDisabled(idx > 0); } void Gui::closeEvent(QCloseEvent* window_close){ if(!pref->settings->isWritable()) *myOutput << "W: qprogram-starter settings file is not writable!" << Qt::endl; else saveSettings(); //qApp->quit(); QMainWindow::closeEvent(window_close); } void Gui::currentDateAndTime(){ if(dateEdit->date() == QDate::currentDate()) timeEdit->setMinimumTime(QTime::currentTime()); else timeEdit->setMinimumTime(QTime(00,00)); } void Gui::info_hint(){ hintMsgBox->show(); } void Gui::check(){ //To check if start time is reached secondsToTimeInTheFuture = QDateTime::currentDateTime().secsTo(timeInTheFuture); if(secondsToTimeInTheFuture <= 0){ timer->stop(); QString console = "-c"; #if defined(Q_OS_WIN32) console = "/C"; #endif if(processes->length() > 0) processes->first()->start(shell, QStringList() << console << processArgs->first()); } } void Gui::getProgram(){ program = QFileDialog::getOpenFileName(this, tr("Select a program"), "/usr/bin"); plainTextEdit->insertPlainText(program); plainTextEdit->setFocus(); } void Gui::run(){ //To start either the timer or start the process aborted = false; if(!plainTextEdit->toPlainText().isEmpty()){ saveHistory(); nextDate = dateEdit->dateTime(); timeInTheFuture = nextDate.addSecs(timeEdit->time().hour()*3600 + timeEdit->time().minute()*60 + timeEdit->time().second()); plainTextEdit->setDisabled(true); atDateCheckBox->setDisabled(true); dateEdit->setDisabled(true); timeEdit->setDisabled(true); startB->setDisabled(true); #if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) QStringList list = plainTextEdit->toPlainText().split("\n", Qt::SkipEmptyParts); #else QStringList list = plainTextEdit->toPlainText().split("\n", QString::SkipEmptyParts); #endif QStringList cmd; QStringList pices; foreach( QString line, list ) { line = line.trimmed(); if(line.right(1) == "\\"){ line.chop(1); pices << line; } else{ if(pices.length() > 0){ pices << line; cmd << pices.join(" "); pices.clear(); } else cmd << line; } } foreach(QString p, cmd){ QProcess* proc = new QProcess(this); #if defined(Q_OS_WIN32) proc->setCreateProcessArgumentsModifier( [](QProcess::CreateProcessArguments *args) { args->flags |= CREATE_NEW_CONSOLE; args->startupInfo->dwFlags &=~ STARTF_USESTDHANDLES; }); #endif connect(proc, SIGNAL(readyReadStandardOutput()), this, SLOT(output())); connect(proc, SIGNAL(readyReadStandardError()), this, SLOT(errorOutput())); connect(proc, &QProcess::errorOccurred, this,&Gui::errorOutput); connect(proc, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(next())); *processes << proc; *processArgs << p; } if(atDateCheckBox->isChecked()) timer->start(1000); else{ QString console = "-c"; #if defined(Q_OS_WIN32) console = "/C"; #endif if(processes->length() > 0) processes->first()->start(shell, QStringList() << console << processArgs->first()); } } else{ messages->setWindowTitle("Error"); messages->setIcon(QMessageBox::Warning); messages->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); messages->setInformativeText(tr("The text edit is empty!")); singleShot = new QTimer(this); singleShot->setSingleShot(true); connect(singleShot, SIGNAL(timeout()), messages, SLOT(hide())); singleShot->start(10000); messages->show(); } outputProcess = ""; errProcess = ""; } void Gui::next(){ bool force = false; if(processes->length() > 1 && processes->first()->exitCode()==0 && processes->first()->exitStatus()==0 && processes->first()->error()==QProcess::UnknownError){ processes->first()->disconnect(); processes->removeFirst(); processArgs->removeFirst(); processes->first()->start(shell, QStringList() << "-c" << processArgs->first()); } else{ message(); if(quitCheckBox->isChecked() || comboBox->currentIndex() != 0){ if(pref->settings->value("CheckBoxes/no_quit_action_or_shutdown_on_error", false).toBool() && (processes->first()->exitCode() != 0 || processes->first()->exitStatus() != 0 || processes->first()->error() != QProcess::UnknownError)){ cleanUp(force); } else{ processes->first()->disconnect(); countdown->setInterval( 1000 * pref->settings->value("countdown_before_action", 10).toInt()); connect(countdown, SIGNAL(timeout()), this, SLOT(shutdown_or_message())); countdown->start(); //timeout after 1 sec ==> minus 1 sec. countdownInt = pref->settings->value("countdown_before_action", 10).toInt() - 1; //seconds updCountdown->start(1000); connect(updCountdown, SIGNAL(timeout()), this, SLOT(displayCountdown())); } } else{ cleanUp(force); } } } void Gui::cleanUp(bool force){ foreach(QProcess *p, *processes){ if(force) p->kill(); else p->terminate(); p->disconnect(); } processes->clear(); processArgs->clear(); atDateCheckBox->setEnabled(true); if(atDateCheckBox->isChecked()){ dateEdit->setEnabled(true); timeEdit->setEnabled(true); } plainTextEdit->setEnabled(true); startB->setEnabled(true); } void Gui::displayCountdown(){ if(countdownInt >= 0) statusBar()->showMessage(QString::number(countdownInt--), 0); } void Gui::abortProcesses(){ if(processes->length() == 0){ messages->setWindowTitle(tr("Information")); messages->setIcon(QMessageBox::Information); messages->setInformativeText(tr("No running processes")); messages->setWindowModality(Qt::NonModal); messages->setWindowFlags(Qt::WindowStaysOnTopHint); singleShot = new QTimer(this); singleShot->setSingleShot(true); connect(singleShot, SIGNAL(timeout()), messages, SLOT(hide())); singleShot->start(10000); messages->show(); return; } aborted = true; timer->stop(); countdown->stop(); countdown->disconnect(); updCountdown->stop(); updCountdown->disconnect(); countdownInt = 0; statusBar()->clearMessage(); messages->setWindowTitle(tr("Information")); messages->setIcon(QMessageBox::Information); messages->setInformativeText(tr("Processes aborted")); messages->setWindowModality(Qt::NonModal); messages->setWindowFlags(Qt::WindowStaysOnTopHint); singleShot = new QTimer(this); singleShot->setSingleShot(true); connect(singleShot, SIGNAL(timeout()), messages, SLOT(hide())); singleShot->start(10000); messages->show(); bool force = true; cleanUp(force); } void Gui::output(){ //write output into a file if loggingCheckBox is checked QString string = QString::fromLocal8Bit(processes->first()->readAllStandardOutput()); outputProcess += string; if(loggingCheckBox->isChecked()){ QString path = QDir().toNativeSeparators( QStandardPaths::standardLocations( #if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) QStandardPaths::AppDataLocation).first()); #else QStandardPaths::DataLocation).first()); #endif if(!QDir(path).exists()) QDir().mkpath(path); QFile outputLog(QDir().toNativeSeparators(path + QDir::separator() + "outputLog.txt")); if(!outputLog.open(QIODevice::Append)) return; QTextStream str(&outputLog); str << QDateTime::currentDateTime().toString("yyyy/MM/dd hh:mm:ss") << ": " << processArgs->first() << ":" << Qt::endl << string << Qt::endl; outputLog.close(); } } void Gui::errorOutput(){ //write error output into a file if loggingCheckBox is checked QString string = QString::fromLocal8Bit(processes->first()->readAllStandardError()); errProcess += string; if(loggingCheckBox->isChecked()){ QString path = QDir().toNativeSeparators( QStandardPaths::standardLocations( #if (QT_VERSION >= QT_VERSION_CHECK(5, 12, 0)) QStandardPaths::AppDataLocation).first()); #else QStandardPaths::DataLocation).first()); #endif if(!QDir(path).exists()) QDir().mkpath(path); QFile errorLog(QDir().toNativeSeparators(path + QDir::separator() + "errorLog.txt")); if(!errorLog.open(QIODevice::Append)) return; QTextStream str(&errorLog); str << QDateTime::currentDateTime().toString("yyyy/MM/dd hh:mm:ss") << ": " << processArgs->first() << ":" << Qt::endl << (string.isEmpty() ? "Unknown error. No such program?" : string) << Qt::endl << Qt::endl; errorLog.close(); } //next(); } void Gui::showLogs(){ if(!outputProcess.isEmpty() || !errProcess.isEmpty()){ logBox->setPlainText(""); if(!outputProcess.isEmpty()) logBox->append(outputProcess); if(!errProcess.isEmpty()) logBox->append(errProcess); logBox->show(); } else{ messages->setWindowTitle(tr("Information")); messages->setIcon(QMessageBox::Information); messages->setInformativeText(tr("No Output!
" "There is still no data in the output or error stream")); messages->setWindowModality(Qt::NonModal); messages->setWindowFlags(Qt::WindowStaysOnTopHint); singleShot = new QTimer(this); singleShot->setSingleShot(true); connect(singleShot, SIGNAL(timeout()), messages, SLOT(hide())); singleShot->start(10000); messages->show(); } } void Gui::shutdown_or_message(){ countdown->stop(); countdown->disconnect(); updCountdown->stop(); updCountdown->disconnect(); countdownInt = 0; statusBar()->clearMessage(); cleanUp(false); if(comboBox->currentIndex() > 0) { saveSettings(); switch(comboBox->currentIndex()){ case 1: //shutdown switch(pref->shutdownCB->currentIndex()){ //shutdown method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::kde = true; break; case 4: Power::hal_ = true; break; case 5: Power::consolekit = true; break; case 6: Power::sudo = true; break; //case 7: // Power::user = true; // Power::myShutdown = pref->myShutdown; // break; default:; } Power::shutdown(); break; case 2: //reboot switch(pref->rebootCB->currentIndex()){ //reboot method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::kde = true; break; case 4: Power::hal_ = true; break; case 5: Power::consolekit = true; break; case 6: Power::sudo = true; break; //case 7: // Power::user = true; // Power::myReboot = pref->myReboot; // break; default:; } Power::reboot(); break; case 3: //sleep switch(pref->suspendCB->currentIndex()){ //sleep method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::hal_ = true; break; case 4: Power::upower_ = true; break; case 5: Power::devicekit = true; break; //case 6: // Power::user = true; // Power::mySuspend = pref->mySuspend; // break; default:; } Power::lockMyScreen = true; Power::suspend(); break; case 4: //hibernate switch(pref->hibernateCB->currentIndex()){ //hibernate method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::hal_ = true; break; case 4: Power::upower_ = true; break; case 5: Power::devicekit = true; break; //case 6: // Power::user = true; // Power::myHibernate = pref->myHibernate; // break; default:; } Power::lockMyScreen = true; Power::hibernate(); break; default:; } } if(quitCheckBox->isChecked() || comboBox->currentIndex() > 0){ qApp->quit(); } } void Gui::message(){ const QProcess *p = processes->first(); if(!aborted){ if(p->exitCode()==0 && p->exitStatus()==0 && p->error()==QProcess::UnknownError){ messages->setWindowTitle(tr("Information")); messages->setIcon(QMessageBox::Information); messages->setInformativeText(tr("process finished!")); } if(p->exitCode()!=0 || p->error()!=QProcess::UnknownError){ messages->setWindowTitle(tr("Error")); messages->setIcon(QMessageBox::Critical); if(p->error()==0){ messages->setInformativeText(tr("Failed to start!
" "No such program or command.")); /*if(loggingCheckBox->isChecked()){ QString path = QDir().toNativeSeparators( QStandardPaths::standardLocations( QStandardPaths::DataLocation).first()); if(!QDir(path).exists()) QDir().mkpath(path); QFile errorLog(QDir().toNativeSeparators(path + QDir::separator() + "errorLog.txt")); if(!errorLog.open(QIODevice::Append)) return; QTextStream err(&errorLog); err << QDateTime::currentDateTime().toString("yyyy/MM/dd hh:mm:ss") << ": " << processArgs->first() << ":" << Qt::endl << tr("\"%1\": Failed to start! No such program or " "command.\n").arg(plainTextEdit->toPlainText()) << Qt::endl; errorLog.close(); }*/ } else if(p->error()==1 || p->exitCode()==1) messages->setInformativeText(tr("process crashed!
" "This could be caused by invalid parameters or options.")); else messages->setInformativeText(tr("Unknown error!
" "This could be caused by invalid parameters or options.")); } messages->setWindowModality(Qt::NonModal); messages->setWindowFlags(Qt::WindowStaysOnTopHint); singleShot = new QTimer(this); singleShot->setSingleShot(true); connect(singleShot, SIGNAL(timeout()), messages, SLOT(hide())); singleShot->start(10000); messages->show(); } } void Gui::showHistory(){ QJsonDocument json = QJsonDocument::fromJson(pref->settings->value("History/text", QString()).toByteArray()); QJsonArray jsonArr = json.array(); history->historyList->clear(); for(int i = 0; i < jsonArr.size(); i++){ history->historyList->addItem(jsonArr[i].toString().replace(QString("\n"), QString("\\n"))); } history->show(); } void Gui::replaceEditorContent(QListWidgetItem *item){ plainTextEdit->setPlainText(item->text().replace(QString("\\n"), QString("\n"))); } void Gui::saveHistory(){ QJsonDocument json = QJsonDocument::fromJson(pref->settings->value("History/text", QString()).toByteArray()); QJsonArray jsonArr = json.array(); jsonArr.prepend(plainTextEdit->toPlainText()); int max = pref->settings->value("History/max", 10).toInt(); while(jsonArr.size() >= max) jsonArr.removeLast(); pref->settings->setValue("History/text", QJsonDocument(jsonArr).toJson(QJsonDocument::Compact)); } void Gui::saveData(){ pref->settings->setValue("Text/text", plainTextEdit->toPlainText()); messages->setWindowTitle(tr("Information")); messages->setIcon(QMessageBox::Information); messages->setInformativeText(tr("Content saved for future startups.")); messages->setWindowModality(Qt::NonModal); messages->setWindowFlags(Qt::WindowStaysOnTopHint); singleShot = new QTimer(this); singleShot->setSingleShot(true); connect(singleShot, SIGNAL(timeout()), messages, SLOT(hide())); singleShot->start(10000); messages->show(); } void Gui::saveSettings(){ pref->settings->setValue("CheckBoxes/atDate", atDateCheckBox->isChecked()); pref->settings->setValue("CheckBoxes/logging", loggingCheckBox->isChecked()); pref->settings->setValue("CheckBoxes/shutdown", comboBox->currentIndex()); pref->settings->setValue("CheckBoxes/quitWithLastProcess", quitCheckBox->isChecked()); } void Gui::loadSettings(){ atDateCheckBox->setChecked(pref->settings->value("CheckBoxes/atDate").toBool()); loggingCheckBox->setChecked(pref->settings->value("CheckBoxes/logging").toBool()); comboBox->setCurrentIndex(pref->settings->value("CheckBoxes/shutdown").toInt()); quitCheckBox->setChecked(pref->settings->value("CheckBoxes/quitWithLastProcess").toBool()); plainTextEdit->setPlainText(pref->settings->value("Text/text").toString()); } hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/gui.h000066400000000000000000000060031515201227200237410ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef GUI_H #define GUI_H #include "ui_gui.h" #include #include #include #include #include #include class Preferences; class History; class Gui : public QMainWindow, public Ui::Gui { Q_OBJECT // important for creating own singals and slots public: Gui(); ~Gui(); void loadSettings(); private: Preferences *pref; QTimer *dateTimeTimer, *timer, *singleShot, *countdown, *updCountdown; int countdownInt; //remaining seconds QList *processes; QDateTime nextDate, timeInTheFuture; double secondsToTimeInTheFuture; QTextEdit *hintMsgBox, *logBox; QString shell, file, errProcess, outputProcess; QStringList *processArgs; QString program; bool aborted; QTextStream *myOutput; QMessageBox *messages; History *history; private slots: void currentDateAndTime(); //for the current minimum date and time void check(); //checks if the time that was set is reached void getProgram(); void run(); //runs the process void abortProcesses(); //aborts all running processes void output(); //prints output into a file if loggingCheckBox is checked void errorOutput(); //prints errorOutput into a file if loggingCheckBox is checked void message(); //shows a messageBox if the process is finished, or if errors occured void next(); void shutdown_or_message(); //either shuts down the system or shows if the process is finished void info_hint(); //shows a InfoMessageBox void saveData(); void saveSettings(); void showLogs(); void showHistory(); void saveHistory(); void replaceEditorContent(QListWidgetItem *item); void setQuit(int idx); void displayCountdown(); void cleanUp(bool force); void handleMessageEvent(int a); signals: void finished(); protected: virtual void closeEvent(QCloseEvent* window_close); }; #endif hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/history.cpp000066400000000000000000000017061515201227200252160ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "history.h" History::History(QWidget *parent): QDialog(parent){ setupUi(this); } History::~History(){ } hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/history.h000066400000000000000000000021171515201227200246600ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef HISTORY_H #define HISTORY_H #include "ui_history.h" class History : public QDialog, public Ui::History { Q_OBJECT public: History(QWidget *parent = 0); ~History(); //QListWidget *historyList; }; #endif //HISTORY_H hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/main.cpp000066400000000000000000000037741515201227200244500ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "gui.h" #include #include #include #include int main (int argc, char *argv[]){ QApplication app(argc, argv); app.setApplicationName("qprogram-starter"); app.setOrganizationName("shutdown_qapps"); QSettings::setDefaultFormat(QSettings::IniFormat); //Qt translations QTranslator qtTranslator; #if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)) bool qtLanguageLoaded = qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::path(QLibraryInfo::TranslationsPath)); #else bool qtLanguageLoaded = qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath)); #endif app.installTranslator(&qtTranslator); Q_UNUSED(qtLanguageLoaded); //My translations QTranslator translator; QString trDir = "/usr/share/qprogram-starter/translations/"; bool languageLoaded = translator.load(trDir + "qprogram-starter-" + QLocale::system().name()); app.installTranslator(&translator); Q_UNUSED(languageLoaded); Gui window; window.loadSettings(); window.show(); return app.exec(); } hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/pixmap/000077500000000000000000000000001515201227200243035ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/pixmap/icon.ico000066400000000000000000000042761515201227200257400ustar00rootroot00000000000000 ¨( @ "#&689:?AEFP[`ou‚„ˆ‰‘•—™› ¡¢£ª¬­±³´µ¸¹º½¾ÀÁÂÃÆÉÊÑßæëñóôõøúûüýþÿ &PPPPPPPPPPPPPPPPPPPPPPPPP PPOPPPPPPPPPPPPPPPPPPPPPPPNP +POPPPPPPPPPPPPPPPPPPPPPPPPOO/POPPPPPPP!!!!!!!!!!!PPPPPP%PPPPPPPPPPP=PPPPPP%PPPPPPPPPPP=PPPPPP%PPPPPPPPPPP=PPPPPP%PPPPPPPPOPP=PPPPPP%PPPOOOPOPOP=PPPPPP%POPPNGKPNPO=PPPPPP%POPA2PNP=PPPPPP%PP0'OP=PPPPPP%PIDO=PPPPPP"P489;6> #P:PPPPPP5PPPPPP<?6667#PPPPPPPPPPPP.PKPOONCPOONPPPPPPP)PNONP@$PPNOPPPPPPP,POOOPB EPNPNPPPPPPP1POPPPPHPNOPOPPPPPPP(PMONPOOOOOPPPPPPP.POPPPOPOLPPPPPP/PPOOOLPPPPPPP-POOOPPPPPPP*POPPPPPPP(FPPPPPPPOP3POPPPPPPPPPPPPPPPPPPPPPPPPJP7 POPPPPPPPPPPPPPPPPPPPPPPPOOPPPPPPPPPPPPPPPPPPPPPPPPPP8ÿÿÿÿÀ€€€€€€€€€€€€€€€€€€€€€€€€€€€€Àÿÿÿÿhakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/pixmap/qprogram-starter.xpm000066400000000000000000000046151515201227200303510ustar00rootroot00000000000000/* XPM */ static char * qprogram_starter_xpm[] = { "32 32 82 1", " c None", ". c #1A0000", "+ c #FF0000", "@ c #BA0000", "# c #260000", "$ c #150000", "% c #FE0000", "& c #1D0000", "* c #B30000", "= c #F80000", "- c #B90000", "; c #000000", "> c #1F0000", ", c #970000", "' c #F10000", ") c #360000", "! c #9B0000", "~ c #190000", "{ c #A20000", "] c #220000", "^ c #AA0000", "/ c #FB0000", "( c #020000", "_ c #A30000", ": c #410000", "< c #010000", "[ c #FC0000", "} c #FD0000", "| c #460000", "1 c #070000", "2 c #AD0000", "3 c #F40000", "4 c #380000", "5 c #A10000", "6 c #D10000", "7 c #6F0000", "8 c #500000", "9 c #EB0000", "0 c #230000", "a c #990000", "b c #C90000", "c c #080000", "d c #880000", "e c #FA0000", "f c #DF0000", "g c #3A0000", "h c #B50000", "i c #C10000", "j c #C60000", "k c #B80000", "l c #130000", "m c #840000", "n c #450000", "o c #820000", "p c #B40000", "q c #BD0000", "r c #C00000", "s c #C30000", "t c #140000", "u c #BE0000", "v c #890000", "w c #F50000", "x c #100000", "y c #0B0000", "z c #E60000", "A c #C20000", "B c #AC0000", "C c #0A0000", "D c #950000", "E c #CA0000", "F c #600000", "G c #390000", "H c #B10000", "I c #F30000", "J c #3F0000", "K c #750000", "L c #5B0000", "M c #A00000", "N c #160000", "O c #180000", "P c #910000", "Q c #170000", " ", " .+++++++++++++++++++++++++@# ", " $+%+++++++++++++++++++++++%%+& ", " *+%++++++++++++++++++++++++=+- ", " +++;;;;;;;;;;;;>;;;;;;;;;;;+%+ ", " +++;;;;;;;;;;;,');;;;;;;;;;+++ ", " +++;;;;;;;;;;!+%+~;;;;;;;;;+++ ", " +++;;;;;;;;;{+%%%+];;;;;;;;+++ ", " +++;;;;;;;;^++%%%/+](;;;;;;+++ ", " +++;;;;;;;_+%+++%+%/:<;;;;;+++ ", " +++;;;;;;,+[%}+%%%%%+|1;;;;+++ ", " +++;;;;;2+%++++3+}%+%+4;;;;+++ ", " +++;;;;5+%%%+67;89+}+}+0;<;+++ ", " +++;;;a+}%}+bc;;;;;;;; * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ /* INFO: For Windows hibernate has to be activated: Please note that this only works if the hardware supports it and enough RAM is available. - powercfg -a #prints aviable sleep states - powercfg -hibernate on - powercfg -hibernate off */ #ifndef POWER_H #define POWER_H #if defined(Q_OS_LINUX) #include #endif #if defined(Q_OS_WIN32) #include "suspend_win.h" #endif #include #include namespace Power{ bool verbose = true; QString shell = ""; QTextStream oput(stdout); bool lockMyScreen; bool automatic = false; bool login1 = false; bool gnome = false; bool kde = false; bool hal_ = false; bool consolekit = false; bool sudo = false; bool upower_ = false; bool devicekit = false; bool user = false; QString myShutdown, myReboot, mySuspend, myHibernate; void shutdown(){ QStringList args; args << "-c" << myShutdown; #if defined(Q_OS_LINUX) QDBusMessage response; //variables for automatic mode bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface gnomeSessionManager("org.gnome.SessionManager", "/org/gnome/SessionManager", "org.gnome.SessionManager", QDBusConnection::sessionBus()); QDBusInterface kdeSessionManager("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface", QDBusConnection::sessionBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopConsoleKit("org.freedesktop.ConsoleKit", "/org/freedesktop/ConsoleKit/Manager", "org.freedesktop.ConsoleKit.Manager", QDBusConnection::systemBus()); #endif if(automatic){ #if defined(Q_OS_WIN32) QProcess::startDetached("shutdown", QStringList() << "-s" << "-f" << "-t" << "00"); // Windows command to shutdown immediately } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to shut down"); } #elif defined(Q_OS_LINUX) if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "poweroff")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "shutdown"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "shutdown"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd, gnome-power-cmd.sh and gnome-session-quit didn't work" << Qt::endl; else if(g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("PowerOff", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("RequestShutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = kdeSessionManager.call("logout", 0, 2, 2); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopConsoleKit.call("Stop"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; if(QProcess::startDetached("sudo", QStringList() << "shutdown" << "-P" << "now")) return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-h" << "-P" << "now"); } //end of automatic else if(login1){ response = freedesktopLogin1.call("PowerOff", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "shutdown"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "shutdown"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd, gnome-power-cmd.sh and gnome-session-quit didn't work" << Qt::endl; if(g_pwr1 || g_pwr2) return; response = gnomeSessionManager.call("RequestShutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(kde){ response = kdeSessionManager.call("logout", 0, 2, 2); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(hal_){ response = freedesktopHal.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(consolekit){ response = freedesktopConsoleKit.call("Stop"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(sudo){ if(QProcess::startDetached("sudo", QStringList() << "/usr/bin/systemctl" << "poweroff")) return; if(QProcess::startDetached("sudo", QStringList() << "shutdown" << "-P" << "now")) return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-h" << "-P" << "now"); } #endif else if(user) if(!shell.isEmpty()) QProcess::startDetached(shell, args); //resetting variables automatic = false; login1 = false; gnome = false; kde = false; hal_ = false; consolekit = false; sudo = false; user = false; } void reboot(){ QStringList args; args << "-c" << myReboot; #if defined(Q_OS_LINUX) QDBusMessage response; bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface gnomeSessionManager("org.gnome.SessionManager", "/org/gnome/SessionManager", "org.gnome.SessionManager", QDBusConnection::sessionBus()); QDBusInterface kdeSessionManager("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface", QDBusConnection::sessionBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopConsoleKit("org.freedesktop.ConsoleKit", "/org/freedesktop/ConsoleKit/Manager", "org.freedesktop.ConsoleKit.Manager", QDBusConnection::systemBus()); #endif if(automatic){ #if defined(Q_OS_WIN32) QProcess::startDetached("shutdown", QStringList() << "-r" << "-f" << "-t" << "00"); // Windows command to reboot immediately } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to restart"); } #elif defined(Q_OS_LINUX) if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "reboot")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "reboot"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "reboot"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; else if(g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("Reboot", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("RequestReboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; QDBusInterface kdeSessionManager("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface", QDBusConnection::sessionBus()); response = kdeSessionManager.call("logout", 0, 2, 1); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Reboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopConsoleKit.call("Restart"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-r" << "now"); } //end of automatic else if(login1){ response = freedesktopLogin1.call("Reboot", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "reboot"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "reboot"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; if(g_pwr1 || g_pwr2) return; response = gnomeSessionManager.call("RequestReboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(kde){ response = kdeSessionManager.call("logout", 0, 2, 1); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(hal_){ response = freedesktopHal.call("Reboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(consolekit){ response = freedesktopConsoleKit.call("Restart"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(sudo){ if(QProcess::startDetached("sudo", QStringList() << "/usr/bin/systemctl" << "reboot")) return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-r" << "now"); } #endif else if(user) if(!shell.isEmpty()) QProcess::startDetached(shell, args); //resetting variables automatic = false; login1 = false; gnome = false; kde = false; hal_ = false; consolekit = false; sudo = false; user = false; } void suspend(){ QStringList args; args << "-c" << mySuspend; #if defined(Q_OS_LINUX) QDBusMessage response; bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopUPower("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.UPower", QDBusConnection::systemBus()); QDBusInterface freedesktopDeviceKit("org.freedesktop.DeviceKit.Power", "/org/freedesktop/DeviceKit/Power", "org.freedesktop.DeviceKit.Power", QDBusConnection::systemBus()); if(lockMyScreen){ bool lock_works = false; QDBusInterface screenlock("org.gnome.ScreenSaver", "/org/gnome/ScreenSaver", "org.gnome.ScreenSaver", QDBusConnection::systemBus()); response = screenlock.call("Lock"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else lock_works = true; if(!lock_works){ if(!QProcess::startDetached("gnome-screensaver-command", QStringList() << "-l")){ if(verbose) oput << "W: gnome-screensaver-command -l didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("qdbus", QStringList() << "org.freedesktop.ScreenSaver" << "/ScreenSaver Lock")){ if(verbose) oput << "W: qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("dcop", QStringList() << "kdesktop" << "KScreensaverIface" << "lock")){ if(verbose) oput << "W: dcop kdesktop KScreensaverIface lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("xscreensaver-command", QStringList() << "-lock")){ if(verbose) oput << "W: xscreensaver-command -lock didn't work" << Qt::endl; } else lock_works = true; } } #endif if(automatic){ #if defined(Q_OS_WIN32) windowsSuspend(); } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to sleep"); } #elif defined(Q_OS_LINUX) if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "suspend")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "suspend"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "suspend"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; else if(g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("Suspend", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Suspend",0); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopUPower.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopDeviceKit.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } //end of automatic else if(login1){ response = freedesktopLogin1.call("Suspend", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "suspend"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "suspend"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; } else if(hal_){ response = freedesktopHal.call("Suspend",0); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(upower_){ response = freedesktopUPower.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(devicekit){ response = freedesktopDeviceKit.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } #endif else if(user) if(!shell.isEmpty()) //QProcess::startDetached(shell, args); QProcess::startDetached(mySuspend); //resetting variables automatic = false; login1 = false; gnome = false; hal_ = false; upower_ = false; devicekit = false; user = false; } void hibernate(){ QStringList args; args << "-c" << myHibernate; #if defined(Q_OS_LINUX) QDBusMessage response; bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopUPower("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.UPower", QDBusConnection::systemBus()); QDBusInterface freedesktopDeviceKit("org.freedesktop.DeviceKit.Power", "/org/freedesktop/DeviceKit/Power", "org.freedesktop.DeviceKit.Power", QDBusConnection::systemBus()); if(lockMyScreen){ bool lock_works = false; QDBusInterface screenlock("org.gnome.ScreenSaver", "/org/gnome/ScreenSaver", "org.gnome.ScreenSaver", QDBusConnection::systemBus()); response = screenlock.call("Lock"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else lock_works = true; if(!lock_works){ if(!QProcess::startDetached("gnome-screensaver-command", QStringList() << "-l")){ if(verbose) oput << "W: gnome-screensaver-command -l didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("qdbus", QStringList() << "org.freedesktop.ScreenSaver" << "/ScreenSaver" << "Lock")){ if(verbose) oput << "W: qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("dcop", QStringList() << "kdesktop" << "KScreensaverIface" << "lock")){ if(verbose) oput << "W: dcop kdesktop KScreensaverIface lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("xscreensaver-command", QStringList() << "-lock")){ if(verbose) oput << "W: xscreensaver-command -lock didn't work" << Qt::endl; } else lock_works = true; } } #endif if(automatic){ #if defined (Q_OS_WIN32) QProcess::startDetached("powercfg", QStringList() << "-hibernate" << "on"); // enable hibernate QProcess::startDetached("rundll32", QStringList() << "powrprof.dll,SetSuspendState"); } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to sleep"); } #else if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "hibernate")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "hibernate"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "hibernate"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; else if (g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("Hibernate", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopUPower.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopDeviceKit.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } // end of automatic else if(login1){ response = freedesktopLogin1.call("Hibernate", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "hibernate"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "hibernate"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; } else if(hal_){ response = freedesktopHal.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(upower_){ response = freedesktopUPower.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(devicekit){ response = freedesktopDeviceKit.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } #endif else if(user) if(!shell.isEmpty()) QProcess::startDetached(shell, args); //resetting variables automatic = false; login1 = false; gnome = false; hal_ = false; upower_ = false; devicekit = false; user = false; } } #endif //POWER_H hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/preferences.cpp000066400000000000000000000134671515201227200260250ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "preferences.h" #include #include #include #include Preferences::Preferences(QWidget *parent): QDialog(parent){ setupUi(this); QString file; settings = new QSettings(this); setupMsgBoxes(); loadSettings(); connect(buttonBox, SIGNAL(accepted()), this, SLOT(saveToConfFile())); connect(clearHistBtn, SIGNAL(clicked(bool)), this, SLOT(clearHistory())); } Preferences::~Preferences(){ delete settings; } void Preferences::setupMsgBoxes(){ msgBox = new QMessageBox(this); msgBox->setWindowTitle(tr("Error")); msgBox->setIcon(QMessageBox::Warning); msgBox->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); msgBox->setInformativeText(tr("The File \"%1\" is not writable!\n" "Maybe you just don't have the permissions to do so.").arg(settings->fileName())); if(settings->value("first_start", true).toBool()) { infoBox = new QMessageBox(this); infoBox->setWindowTitle(tr("Please read this carefully!")); infoBox->setIcon(QMessageBox::Information); infoBox->setInformativeText(tr("Welcome to qprogram-starter!\n" "If you want qprogram-starter to automatically shutdown the system " "and you are using the Gnome Shell, then you are likely to get a " "shutdown dialog from there. If you want a direct shutdown, then " "please consider going into the preferences and setting the shutdown " "method to ConsoleKit or something else.\n\nPlease feel free to visit " "https://launchpad.net/~hakaishi to report bugs or for anything " "concerning translations.")); infoBox->setStandardButtons(QMessageBox::Ok); } } void Preferences::showEvent(QShowEvent* show_pref){ if(!settings->isWritable()) { QTimer::singleShot(15000, msgBox, SLOT(close())); msgBox->show(); } loadSettings(); QDialog::showEvent(show_pref); } void Preferences::loadSettings(){ if(settings->value("first_start", true).toBool()) { infoBox->show(); settings->setValue("first_start", false); } if(!settings->contains("shutdown_method")) settings->setValue("shutdown_method", 0); if(!settings->contains("reboot_method")) settings->setValue("reboot_method", 0); if(!settings->contains("suspend_method")) settings->setValue("suspend_method", 0); if(!settings->contains("hibernate_method")) settings->setValue("hibernate_method", 0); if(!settings->contains("countdown_before_action")) settings->setValue("countdown_before_action", 10); if(!settings->contains("CheckBoxes/atDate")) settings->setValue("CheckBoxes/atDate", false); if(!settings->contains("CheckBoxes/logging")) settings->setValue("CheckBoxes/logging", false); if(!settings->contains("CheckBoxes/shutdown")) settings->setValue("CheckBoxes/shutdown", false); if(!settings->contains("CheckBoxes/no_quit_action_or_shutdown_on_error")) settings->setValue("CheckBoxes/no_quit_action_or_shutdown_on_error", false); if(!settings->contains("CheckBoxes/quitWithLastProcess")) settings->setValue("CheckBoxes/quitWithLastProcess", false); if(!settings->contains("Text/text")) settings->setValue("Text/text", QString()); if(!settings->contains("History/max")) settings->setValue("History/max", 10); //read settings shutdownCB->setCurrentIndex(settings->value("shutdown_method", 0).toInt()); rebootCB->setCurrentIndex(settings->value("reboot_method", 0).toInt()); suspendCB->setCurrentIndex(settings->value("suspend_method", 0).toInt()); hibernateCB->setCurrentIndex(settings->value("hibernate_method", 0).toInt()); maxHistSpin->setValue(settings->value("History/max", 10).toInt()); countdownSpin->setValue(settings->value("countdown_before_action", 10).toInt()); noActionCB->setChecked(settings->value("CheckBoxes/no_quit_action_or_shutdown_on_error", false).toBool()); } void Preferences::saveToConfFile(){ settings->setValue("shutdown_method",shutdownCB->currentIndex()); settings->setValue("reboot_method",rebootCB->currentIndex()); settings->setValue("suspend_method",suspendCB->currentIndex()); settings->setValue("hibernate_method",hibernateCB->currentIndex()); settings->setValue("History/max", maxHistSpin->value()); settings->setValue("countdown_before_action", countdownSpin->value()); settings->setValue("CheckBoxes/no_quit_action_or_shutdown_on_error", noActionCB->isChecked()); } void Preferences::clearHistory(){ settings->setValue("History/text", QString()); histBox = new QMessageBox(this); histBox->setWindowTitle(tr("Information")); histBox->setIcon(QMessageBox::Information); histBox->setInformativeText(tr("History cleared!")); histBox->setWindowModality(Qt::NonModal); histBox->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); QTimer::singleShot(10000, histBox, SLOT(close())); histBox->show(); } hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/preferences.h000066400000000000000000000026571515201227200254710ustar00rootroot00000000000000/* qprogram-starter, a program to start programs or commands, with the option to log output and errors and to shutdown the system. * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef PREFERENCES_H #define PREFERENCES_H #include "ui_preferences.h" #include #include class Preferences : public QDialog, public Ui::Preferences { Q_OBJECT public: Preferences(QWidget *parent = 0); ~Preferences(); QSettings *settings; private: QMessageBox *msgBox; QMessageBox *infoBox; QMessageBox *histBox; private slots: void setupMsgBoxes(); void loadSettings(); void saveToConfFile(); void clearHistory(); protected: virtual void showEvent(QShowEvent* show_pref); }; #endif //PREFERENCES_H hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/suspend_win.h000066400000000000000000000063561515201227200255260ustar00rootroot00000000000000#ifndef SUSPEND_WIN_H #define SUSPEND_WIN_H /* * external source code based on a blog post by Diomidis Spinellis * * correctly suspends Windows without going into hibernate */ /* * Copyright (c) 2008, Diomidis Spinellis * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * */ #include #include /* Return as a string the error description for err */ static char * wstrerror(LONG err) { static LPVOID lpMsgBuf; if (lpMsgBuf) LocalFree(lpMsgBuf); FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language (LPTSTR) &lpMsgBuf, 0, NULL); return (char*)lpMsgBuf; } int windowsSuspend() { HANDLE tok; TOKEN_PRIVILEGES priv; if (OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &tok) == 0) { fprintf(stderr, "OpenProcessToken: %s\n", wstrerror(GetLastError())); return (1); } // Get the LUID for shutdown privilege. if (LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &priv.Privileges[0].Luid) == 0) { fprintf(stderr, "LookupPrivilegeValue: %s\n", wstrerror(GetLastError())); return (1); } // Enable AdjustTokenPrivileges. priv.PrivilegeCount = 1; priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; if (AdjustTokenPrivileges(tok, FALSE, &priv, 0, (PTOKEN_PRIVILEGES)NULL, 0) == 0 || GetLastError() != ERROR_SUCCESS) { fprintf(stderr, "AdjustTokenPrivileges: %s\n", wstrerror(GetLastError())); return (1); } // Force suspend if (SetSystemPowerState(TRUE, TRUE) == 0) { fprintf(stderr, "SetSystemPowerState: %s\n", wstrerror(GetLastError())); return (1); } return (0); } #endif // SUSPEND_WIN_H hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/000077500000000000000000000000001515201227200255265ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-ast.ts000066400000000000000000000261271515201227200322050ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd-MMM-yyyy Sho&w Logs Amosar re&xistros S&hutdown Apa&gar &Hints &Gabitos Quits qprogram-starter when the last command finished Colar de qprogram-starter en acabando l'últimu comandu &Quit with last command &Colar col últimu comandu &Logging &Rexistrar Shutdown the computer after all commands finished Apagar l'ordenador en acabando l'últimu comandu The contents will be restored on every start of qprogram-starter El conteníu restauraráse con cada arranque de qprogram-starter &Start &Aniciar &Abort &Encaboxar Browse... Esaminar… Save text editors &contents Guardar el &conteníu de los editores de testu Start the commands to this time and date Llanzar los comandos esta hora y data A&t date and time: A &hora y data Select a program Escoyer un programa The first text edit is empty! ¡La primera edición de testu ta balera! Information InformacioÌn Processes aborted Procesos encaboxaos <b>process 1 finished!</b> <b>¡finó'l procesu 1!</b> <b>process 1 & 2 finished!</b> <b>¡finaron los procesos 1 y 2!</b> Error Error <b>Failed to start!</b><br/>No such program or command. <b>¡Nun pudo llanzase!</b><br/>Nun esiste esi programa o comandu. <b>process 1 crashed!</b><br/>This could be caused by invalid parameters or options. <b>¡el procesu 1 frañó!</b><br/>Esto pue debese a parámetros o opciones inválides. <b>process 2 crashed!</b><br/>This could be caused by invalid parameters or options. <b>¡el procesu 2 frañó!</b><br/>Esto pue debese a parámetros o opciones inválides. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>¡Error desconocíu!</b><br/>Esto pue debese a parámetros o opciones inválidos. "%1": Failed to start! No such program or command. "%1": ¡Nun pudo arrancar! Nun esiste esi programa o comandu. The command in the second text editor (if there is any) will be executed after the first one. The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occure for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/>make examples:<br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/>About Errors:<br/>Because almost every program gives a different error code, it is impossible to say what happend. So just log the output and see what kind of error occured. The output files can be found at <i>~/.qprogram-starter/</i>.<br/><br/>If the shutdown won't work, it means that "sudo shutdown -P now" is used. This needs root permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname.<br/><br/>The configuration-file can be found at <i>~/.qprogram-starter/</i>. El comandu del segundu editor de testu (si lu hai) executaráse dempués del primeru. Los cuadros de mensaxe zarraránse dempués de 10 segundos.<br/>P'aniciar un programa sólo tien que escribir p.ex. «firefox» o «firefox www.google.com» y, darréu, calcar Llanzar. Los comandos, etc. puen encadenase con «&&» etc. <br/><br/>Si'l procesu ta «fináu», anque inda tea executandose, pruebe la opción «--nofork» (p.ex. kopete --nofork). Tenga en cuenta qu'esto tamién asocederá con dellos programes como gedit, firefox o gnome-terminal si tá tan executandose.<br/><br/>Cuando quiera aniciar un programa o comandu con sudo, use por exemplu gksu(do) o kdesu(do).<br/><br/>Exemplos con «make»:<br/>&nbsp;make -C /camín/al/proyeutu<br/>&nbsp;make clean -C /camín/al/proyeutu<br/><br/>Tocante a los errores:<br/>Como casi cada programa devuelve un códigu d'error diferente, ye imposible dicir qué ye lo que pasó. Poro, namái tien que ver el rexistru de salida pa ver que tipu d'error asocedió. Los ficheros de salida puen alcontrase'n <i>~/.qprogram-starter/</i>.<br/><br/>Si l'apagáu nun funciona, quier dicir que ta usando «sudo shutdown-P now». Esto necesita permisu de root. Pue facer lo siguiente:<br/><br/>Apegue lo siguiente nun terminal:<pre>EDITOR=nano sudo -E visudo</pre> y amieste esta llinia:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> onde * sustituye al nome d'usuariu o al nome de grupu.<br/><br/>El ficheru de configuración pue alcontrase'n <i>~/.qprogram-starter/</i>. &File &Ficheru &Settings Preferencie&s &Help A&yuda &Quit Co&lar &Configure &Configurar Version Versión Ctrl+Q Ctrl+L Ctrl+P Ctrl+P Ctrl+H Ctrl+Y Preferences Preferences Preferencies automatic automáticu Gnome session Sesión de Gnome KDE session Sesión de KDE Shutdown Method: Métodu d'apagáu: The File "%1" is not writable! Maybe you just don't have the permissions to do so. ¡El ficheru "%1" nun pue escribise! Seique nun tenga permisos pa facelo. Error Error Please read this carefully! ¡Por favor, llea esto con atención! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. ¡Bienveníu a qprogram-starter! Si quier que qprogram-starter apague'l sistema de mou automáticu y ta usando Gnome Shell, posiblemente recibirá un diálogu d'apagáu de la mesma. Si quier un apagáu direutu, por favor, considere entrar nes preferencies y configurar el métodu d'apagáu a ConsoleKit o daqué distinto. Visite con total llibertá https://launchpad.net/~hakaishi si quier informar de fallos o de cualquier cosa tocante a les traducciones. hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-bs.ts000066400000000000000000000271331515201227200320200ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Savjeti Quits qprogram-starter when the last command finished Zatvara qprogram-starter nakon izvrÅ¡avanja posljednje komande &Quit with last command &Zatvori nakon posljednje komande &Logging &Bilježenje &Start &Pokreni Browse... Pretraži... Start the commands to this time and date Pokreni komande u ovo vrijeme A&t date and time: Da&tum i vrijeme: Select a program Odaberite program Information Informacije Processes aborted Proces je prekinut Error GreÅ¡ka <b>Failed to start!</b><br/>No such program or command. <b>Neuspjelo pokretanje!</b><br/>Ne postoji takav program ili komanda. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Nepoznata greÅ¡ka!</b><br/>Moguće je da je ovo prouzrokovano netaÄnim parametrima ili opcijama. &File &Datoteka &Settings &Postavke &Help &Pomoć &Quit &IzaÄ‘i &Configure &Podesi Version Verzija Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Postavke automatic automatski Shutdown Method: Metoda gaÅ¡enja: The File "%1" is not writable! Maybe you just don't have the permissions to do so. U datoteku "%1" se ne može zapisivati! Možda nemate potrebnu dozvolu za zapisivanje. Error GreÅ¡ka Please read this carefully! Molimo vas da ovo pažljivo proÄitate! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Dobro doÅ¡li u qprogram-starter! Ako želite da qprogram-starter vrÅ¡i automatsko gaÅ¡enje vaÅ¡eg sistema a koristite Gnome Shell, onda je vrlo vjerovatno da će vam se tamo prikazati dijaloÅ¡ki okvir. Ako želite izvrÅ¡iti direktno gaÅ¡enje, onda vas molimo da otvorite opcije i podesite metodu gaÅ¡enja na ConsoleKit ili neÅ¡to drugo. Prijave i primjedbe za greÅ¡ke i prijevode možete izvrÅ¡iti na https://launchpad.net/~hakaishi Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Informacije History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-de.ts000066400000000000000000000341501515201227200320010ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Hinweise Quits qprogram-starter when the last command finished Beendet qprogram-starter wenn der letzte Befehl fertig ist &Quit with last command Mit dem letzten &Befehl beenden &Logging &Protokollieren &Start &Start Browse... Durchsuchen … Start the commands to this time and date Starte die Befehle zu diesem Termin A&t date and time: Starte die Befehle zu diesem Termin Select a program Wähle ein Programm Information Information Processes aborted Prozesse abgebrochen Error Fehler <b>Failed to start!</b><br/>No such program or command. <b>Start fehlgeschlagen!</b><br/>Unbekannter Befehl oder unbekanntes Programm. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Unbekannter Fehler!</b><br/>Dies könnte durch unzulässige Parameter oder Optionen verursacht worden sein. &File &Datei &Settings &Einstellungen &Help &Hilfe &Quit &Beenden &Configure &Konfigurieren Version Version Ctrl+Q Strg+Q Ctrl+P Strg+P Ctrl+H Strg+H Shutdown Herunterfahren Reboot Neustarten Suspend Standby Hibernate Ruhezustand History Verlauf Info Info The text edit is empty! Der Texteditor ist leer! <b>process finished!</b> <b>Prozess beendet!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. <b>Der Prozess ist abgestürzt!</b><br/>Die Ursache könnten ungültige Parameter oder Optionen sein. Save errors and output into files Speichere Fehlermeldungen und Ausgaben in Dateien No Action Keine Aktion Browse commands and insert into the text editor Durchsuche Kommandos und füge sie in den Texteditor ein &Kill Processes &Töte Prozesse &Display Output &Zeige Ausgaben Display and restore previously executed commands Zeige ausgeführte Befehle und stelle sie wieder her The current text will be the default value for all future starts Der gegenwärtige Text wird als Standard für alle künftigen Starts eingestellt Set text editor content as default Speichere den Texteditor-Inhalt als Standard Log Protokoll No running processes Keine laufenden Prozesse <b>No Output!</b><br/>There is still no data in the output or error stream <b>Kein Output!</b><br/>Es gibt noch keine Daten im Output- oder Error-Stream Content saved for future startups. Inhalt für künftige starts gespeichert. Displays all output & errors in a separate window Zeigt sämtliche Ausgaben & Fehler in einem separaten Fenster an <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. <b>Allgemein:</b><br/>Jede Zeile im Texteditor wird als ein separater Prozess ausgeführt. Stelle ein Backslash an das Zeilenende um ein mehrzeiligen Befehl als einen Prozess auszuführen.<br/><br/>Die Hinweisfenster werden sich nach 10 Sekunden selbst beenden.<br/>Um ein Programm zu starten, gib einfach z.B. \"firefox\" oder \"firefox www.google.de\" ein und klicke dann auf Start. Befehle etc. können mit \"&&\" etc. verkettet werden.<br/><br/>Wenn der Prozess \"beendet\" ist, obwohl er noch läuft, probiere die --nofork Option (z.B. kopete --nofork). Beachte, dass dies auch bei einigen Programmen wie gedit, firefox oder gnome-terminal auftritt, wenn sie bereits laufen.<br/><br/>Wenn man ein Programm oder ein Kommando mit sudo starten möchte, benutze bitte z.B. gksu(do) oder kdesu(do).<br/><br/><b>Dateien:</b><br/>Die Konfigurationsdatei befindet sich hier <i>%2</i>.<br/>Die Protokolle befinden sich hier <i>%1</i>.<br/><b>make Beispiele:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>Über die Fehler:</b><br/>Weil fast jedes Programm unterschiedliche Fehlerkodes ausgeben, ist es unmöglich zu sagen was passiert ist. Protokolliere also einfach die Ausgaben und sieh was für eine Art Fehler aufgetreten ist. Die Ausgabedateien kann man unter <i>%1</i> finden.<br/><br/>Falls der Shutdown nich funktioniert, bedeutet das, dass \"sudo shutdown -P now\" benutzt wird. Dies benötigt Root-Rechte. Dies kann man machen:<br/><br/>Füge das Folgende in ein Terminal ein:<pre>EDITOR=nano sudo -E visudo</pre>und füge diese Zeile hinzu:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>wobei * den Benutzernamen oder %Gruppennamen ersetzt. History History Verlauf Double click restores item to the text editor. Doppelklick stellt den Texteditor-Inhalt wieder her. Preferences Preferences Einstellungen automatic automatisch Shutdown Method: Methode für das Herunterfahren: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Die Datei "%1" ist nicht beschreibbar! Vielleicht haben Sie dazu einfach keine Rechte. Error Fehler Please read this carefully! Bitte lesen Sie dies sorgfältig! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Willkommen bei qprogram-starter! Wenn Sie möchten, das qprogram-starter das System herunterfährt und Sie die Gnome Shell benuten, dann ist es wahrscheinlich, dass ein Shutdown-Dialog erscheint. Wenn Sie einen direkten Shutdown möchten, dann ziehen Sie bitte in Betracht in die Einstellungen zu gehen und die Shutdown-Methode auf ConsoleKit oder ähnliches zu stellen. Sie können gerne jederzeit https://launchpad.net/~hakaishi besuchen um Bugs oder alles was die Übersetzungen betrifft besuchen. Suspend Method: Methode für den Standby: Reboot Method: Methode für den Neustart: Maximum History saved: Maximaler Verlauf: Hibernate Method: Methode für den Ruhezustand: Clear History Verlauf löschen Don't quit or shutdown on error Bei Fehlern nicht beenden oder herunterfahren Countdown before action: Countdown vor der Aktion: Information Information History cleared! Verlauf gelöscht! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-de_DE.ts000066400000000000000000000341501515201227200323510ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Hinweise Quits qprogram-starter when the last command finished Beendet qprogram-starter wenn der letzte Befehl fertig ist &Quit with last command Mit dem letzten &Befehl beenden &Logging &Protokollieren &Start &Start Browse... Durchsuchen … Start the commands to this time and date Starte die Befehle zu diesem Termin A&t date and time: Starte die Befehle zu diesem Termin Select a program Wähle ein Programm Information Information Processes aborted Prozesse abgebrochen Error Fehler <b>Failed to start!</b><br/>No such program or command. <b>Start fehlgeschlagen!</b><br/>Unbekannter Befehl oder unbekanntes Programm. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Unbekannter Fehler!</b><br/>Dies könnte durch unzulässige Parameter oder Optionen verursacht worden sein. &File &Datei &Settings &Einstellungen &Help &Hilfe &Quit &Beenden &Configure &Konfigurieren Version Version Ctrl+Q Strg+Q Ctrl+P Strg+P Ctrl+H Strg+H Shutdown Herunterfahren Reboot Neustarten Suspend Standby Hibernate Ruhezustand History Verlauf Info Info The text edit is empty! Der Texteditor ist leer! <b>process finished!</b> <b>Prozess beendet!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. <b>Der Prozess ist abgestürzt!</b><br/>Die Ursache könnten ungültige Parameter oder Optionen sein. Save errors and output into files Speichere Fehlermeldungen und Ausgaben in Dateien No Action Keine Aktion Browse commands and insert into the text editor Durchsuche Kommandos und füge sie in den Texteditor ein &Kill Processes &Töte Prozesse &Display Output &Zeige Ausgaben Display and restore previously executed commands Zeige ausgeführte Befehle und stelle sie wieder her The current text will be the default value for all future starts Der gegenwärtige Text wird als Standard für alle künftigen Starts eingestellt Set text editor content as default Speichere den Texteditor-Inhalt als Standard Log Protokoll No running processes Keine laufenden Prozesse <b>No Output!</b><br/>There is still no data in the output or error stream <b>Kein Output!</b><br/>Es gibt noch keine Daten im Output- oder Error-Stream Content saved for future startups. Inhalt für künftige starts gespeichert. Displays all output & errors in a separate window Zeigt sämtliche Ausgaben & Fehler in einem separaten Fenster an <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. <b>Allgemein:</b><br/>Jede Zeile im Texteditor wird als ein separater Prozess ausgeführt. Stelle ein Backslash an das Zeilenende um ein mehrzeiligen Befehl als einen Prozess auszuführen.<br/><br/>Die Hinweisfenster werden sich nach 10 Sekunden selbst beenden.<br/>Um ein Programm zu starten, gib einfach z.B. \"firefox\" oder \"firefox www.google.de\" ein und klicke dann auf Start. Befehle etc. können mit \"&&\" etc. verkettet werden.<br/><br/>Wenn der Prozess \"beendet\" ist, obwohl er noch läuft, probiere die --nofork Option (z.B. kopete --nofork). Beachte, dass dies auch bei einigen Programmen wie gedit, firefox oder gnome-terminal auftritt, wenn sie bereits laufen.<br/><br/>Wenn man ein Programm oder ein Kommando mit sudo starten möchte, benutze bitte z.B. gksu(do) oder kdesu(do).<br/><br/><b>Dateien:</b><br/>Die Konfigurationsdatei befindet sich hier <i>%2</i>.<br/>Die Protokolle befinden sich hier <i>%1</i>.<br/><b>make Beispiele:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>Über die Fehler:</b><br/>Weil fast jedes Programm unterschiedliche Fehlerkodes ausgeben, ist es unmöglich zu sagen was passiert ist. Protokolliere also einfach die Ausgaben und sieh was für eine Art Fehler aufgetreten ist. Die Ausgabedateien kann man unter <i>%1</i> finden.<br/><br/>Falls der Shutdown nich funktioniert, bedeutet das, dass \"sudo shutdown -P now\" benutzt wird. Dies benötigt Root-Rechte. Dies kann man machen:<br/><br/>Füge das Folgende in ein Terminal ein:<pre>EDITOR=nano sudo -E visudo</pre>und füge diese Zeile hinzu:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>wobei * den Benutzernamen oder %Gruppennamen ersetzt. History History Verlauf Double click restores item to the text editor. Doppelklick stellt den Texteditor-Inhalt wieder her. Preferences Preferences Einstellungen automatic automatisch Shutdown Method: Methode für das Herunterfahren: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Die Datei "%1" ist nicht beschreibbar! Vielleicht haben Sie dazu einfach keine Rechte. Error Fehler Please read this carefully! Bitte lesen Sie dies sorgfältig! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Willkommen bei qprogram-starter! Wenn Sie möchten, das qprogram-starter das System herunterfährt und Sie die Gnome Shell benuten, dann ist es wahrscheinlich, dass ein Shutdown-Dialog erscheint. Wenn Sie einen direkten Shutdown möchten, dann ziehen Sie bitte in Betracht in die Einstellungen zu gehen und die Shutdown-Methode auf ConsoleKit oder ähnliches zu stellen. Sie können gerne jederzeit https://launchpad.net/~hakaishi besuchen um Bugs oder alles was die Übersetzungen betrifft besuchen. Suspend Method: Methode für den Standby: Reboot Method: Methode für den Neustart: Maximum History saved: Maximaler Verlauf: Hibernate Method: Methode für den Ruhezustand: Clear History Verlauf löschen Don't quit or shutdown on error Bei Fehlern nicht beenden oder herunterfahren Countdown before action: Countdown vor der Aktion: Information Information History cleared! Verlauf gelöscht! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-en_AU.ts000066400000000000000000000331271515201227200324030ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Hints Quits qprogram-starter when the last command finished Quits qprogram-starter when the last command finished &Quit with last command &Quit with last command &Logging &Logging &Start &Start Browse... Browse... Start the commands to this time and date Start the commands to this time and date A&t date and time: A&t date and time: Select a program Select a program Information Information Processes aborted Processes aborted Error Error <b>Failed to start!</b><br/>No such program or command. <b>Failed to start!</b><br/>No such program or command. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. &File &File &Settings &Settings &Help &Help &Quit &Quit &Configure &Configure Version Version Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Shutdown Reboot Reboot Suspend Suspend Hibernate Hibernate History History Info Info The text edit is empty! The text edit is empty! <b>process finished!</b> <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files Save errors and output into files No Action No Action Browse commands and insert into the text editor Browse commands and insert into the text editor &Kill Processes &Kill Processes &Display Output &Display Output Display and restore previously executed commands Display and restore previously executed commands The current text will be the default value for all future starts The current text will be the default value for all future starts Set text editor content as default Set text editor content as default Log Log No running processes No running processes <b>No Output!</b><br/>There is still no data in the output or error stream <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Content saved for future startups. Displays all output & errors in a separate window Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History History Double click restores item to the text editor. Double click restores item to the text editor. Preferences Preferences Preferences automatic automatic Shutdown Method: Shut down Method: The File "%1" is not writable! Maybe you just don't have the permissions to do so. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Error Please read this carefully! Please read this carefully! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Welcome to qprogram-starter! If you want qprogram-starter to automatically shut down the system and you are using the Gnome Shell, then you are likely to get a shut down dialogue from there. If you want a direct shut down, then please consider going into the preferences and setting the shut down method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Suspend Method: Suspend Method: Reboot Method: Reboot Method: Maximum History saved: Maximum History saved: Hibernate Method: Hibernate Method: Clear History Clear History Don't quit or shutdown on error Don't quit or shut down on error Countdown before action: Countdown before action: Information Information History cleared! History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-en_GB.ts000066400000000000000000000333051515201227200323640ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Hints Quits qprogram-starter when the last command finished Quits qprogram-starter when the last command finishes &Quit with last command &Quit with last command &Logging &Logging &Start &Start Browse... Browse... Start the commands to this time and date Start the commands at this date and time A&t date and time: A&t date and time: Select a program Select a program Information Information Processes aborted Processes aborted Error Error <b>Failed to start!</b><br/>No such program or command. <b>Failed to start!</b><br/>No such program or command. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. &File &File &Settings &Settings &Help &Help &Quit &Quit &Configure &Configure Version Version Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Shutdown Reboot Reboot Suspend Suspend Hibernate Hibernate History History Info Info The text edit is empty! The text editor is empty! <b>process finished!</b> <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files Save errors and output into files No Action No Action Browse commands and insert into the text editor Browse commands and insert into the text editor &Kill Processes &Kill Processes &Display Output &Display Output Display and restore previously executed commands Display and restore previously-executed commands The current text will be the default value for all future starts The current text will be the default value for all future starts Set text editor content as default Set text editor content as default Log Log No running processes No running processes <b>No Output!</b><br/>There is still no data in the output or error stream <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Content saved for future startups. Displays all output & errors in a separate window Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type e.g. \"firefox\" or \"firefox www.google.com\" and then click on Start. Commands etc. can be linked by \"&&\" etc. <br/><br/>If the process is \"finished\" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this may also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened, so just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that \"sudo shutdown -P now\" is used which needs admin permissions. You can grant admin privileges and allow this to work without the need to request an admin password by doing this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> where the * symbol can be replaced with a username or %groupname. History History History Double click restores item to the text editor. Double click restores item to the text editor. Preferences Preferences Preferences automatic automatic Shutdown Method: Shutdown Method: The File "%1" is not writable! Maybe you just don't have the permissions to do so. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Error Please read this carefully! Please read this carefully! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using Gnome Shell, then you are likely to get a shutdown dialogue from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Suspend Method: Suspend Method: Reboot Method: Reboot Method: Maximum History saved: Maximum History saved: Hibernate Method: Hibernate Method: Clear History Clear History Don't quit or shutdown on error Don't quit or shutdown on error Countdown before action: Countdown before action: Information Information History cleared! History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-es.ts000066400000000000000000000257731515201227200320330ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints Quits qprogram-starter when the last command finished Salir de qprogram-starter después de ejecutar la última orden &Quit with last command &Salir con la última orden &Logging &Registro &Start &Iniciar Browse... Examinar… Start the commands to this time and date A&t date and time: A esta hora y fecha: Select a program Seleccionar un programa Information Información Processes aborted Procesos interrumpidos Error Error <b>Failed to start!</b><br/>No such program or command. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. &File &Archivo &Settings &Configuración &Help Ay&uda &Quit &Salir &Configure &Configurar Version Versión Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Preferencias automatic automático Shutdown Method: Método de apagado: The File "%1" is not writable! Maybe you just don't have the permissions to do so. El archivo «%1» no es escribible. Quizá no tiene los permisos para hacerlo. Error Error Please read this carefully! Lea esto cuidadosamente. Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Información History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-fr.ts000066400000000000000000000352751515201227200320310ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Conseils Quits qprogram-starter when the last command finished Quitte qprogram-starter lorsque la dernière commande est terminée &Quit with last command &Quitter avec la dernière commande &Logging &Journalisation &Start &Démarrer Browse... Parcourir... Start the commands to this time and date Lancer les commandes à cette heure et à cette date A&t date and time: À ce&tte date et heure : Select a program Sélectionner un programme Information Informations Processes aborted Processus abandonnés Error Erreur <b>Failed to start!</b><br/>No such program or command. <b>Impossible de démarrer !</b><br/> Aucun programme ou commande de ce type. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Erreur inconnue !</b><br/> Cela peut être dû à des paramètres ou des options non valides. &File &Fichier &Settings &Paramètres &Help &Aide &Quit &Quitter &Configure &Configurer Version Version Ctrl+Q Ctrl + Q Ctrl+P Ctrl + P Ctrl+H Ctrl + H Shutdown Éteindre Reboot Redémarrer Suspend Mettre en veille Hibernate Mettre en veille prolongée History Historique Info Informations The text edit is empty! L'édition de texte est vide ! <b>process finished!</b> <b>processus terminé !</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. <b>processus planté !</b><br/> Cela peut être dû à des paramètres ou des options invalides. Save errors and output into files Enregistrer les erreurs et les sorties dans des fichiers No Action Aucun action Browse commands and insert into the text editor Parcourir les commandes et les insérer dans l'éditeur de texte &Kill Processes &Tuer les processus &Display Output &Afficher la sortie Display and restore previously executed commands Afficher et restaurer les commandes précédemment exécutées The current text will be the default value for all future starts Le texte actuel sera la valeur par défaut pour tous les démarrages futurs Set text editor content as default Définir le contenu de l'éditeur de texte par défaut Log Journal No running processes Aucun processus en cours <b>No Output!</b><br/>There is still no data in the output or error stream <b>Aucune sortie !</b><br/> Il n'y a toujours pas de données dans le flux de sortie ou d'erreur Content saved for future startups. Contenu enregistré pour les futures démarrages. Displays all output & errors in a separate window Affiche toutes les sorties et les erreurs dans une fenêtre séparée <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. <b>Général :</b><br/>Chaque ligne de l'éditeur de texte sera exécutée comme un processus distinct. Mettez une barre oblique inversée à la fin de la ligne pour une commande multiligne.<br/><br/>Les boîtes de message se fermeront après 10 secondes.<br/>Pour démarrer un programme, tapez simplement, par exemple, « firefox Â» ou « firefox www.google.com Â», puis cliquez sur Démarrer. Les commandes etc. peuvent être liées par « && Â» etc.<br/><br/>Si le processus est « terminé Â» bien qu'il soit toujours en cours d'exécution, essayez l'option --nofork (c'est-à-dire kopete --nofork). Notez que cela se produira également pour certains programmes comme gedit, firefox ou gnome-terminal s'ils sont déjà en cours d'exécution.<br/><br/>Lorsque vous souhaitez démarrer un programme ou une commande avec sudo, veuillez utiliser par exemple gksu (do) ou kdesu (do).<br/><br/><b>Fichiers :</b><br/>le fichier de configuration se trouve sur <i>%2</i>.<br/>Les fichiers journaux se trouvent sur <i>%1</i>.<br/><br/><b>exemples make :</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>À propos des erreurs :</b><br/>Parce que presque chaque programme donne un code d'erreur différent, il est impossible de dire ce qui s'est passé. Il suffit donc de consigner la sortie et de voir quel type d'erreur s'est produit. Les fichiers de sortie se trouvent sur <i>%1</i>.<br/><br/>Si l'arrêt ne fonctionne pas, cela peut signifier que « sudo shutdown -P now Â» est utilisé. Cela nécessite des autorisations d'administrateur. Vous pouvez faire ce qui suit.<br/><br/>Copiez les informations suivantes dans un terminal :<pre>EDITOR=nano sudo -E visudo</pre> et ajoutez cette ligne :<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> où que * remplace le nom d'utilisateur ou %groupname. History History Historique Double click restores item to the text editor. Le double clic restaure l'élément dans l'éditeur de texte. Preferences Preferences Préférences automatic automatique Shutdown Method: Méthode d'arrêt : The File "%1" is not writable! Maybe you just don't have the permissions to do so. Le fichier « %1 Â» n'est pas accessible en écriture ! Peut-être que vous n'avez tout simplement pas les autorisations pour le faire. Error Erreur Please read this carefully! Veuillez lire ceci attentivement ! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Bienvenue sur qprogram-starter ! Si vous voulez que qprogram-starter arrête automatiquement le système et que vous utilisez Gnome Shell, vous obtiendrez probablement une boîte de dialogue d'arrêt. Si vous souhaitez un arrêt direct, veuillez vous rendre dans les préférences et définir la méthode d'arrêt sur ConsoleKit ou autre. N'hésitez pas à visiter https://launchpad.net/~hakaishi pour signaler des bogues ou pour tout ce qui concerne les traductions. Suspend Method: Méthode de mise en veille : Reboot Method: Méthode de redémarrage : Maximum History saved: Historique maximum enregistré : Hibernate Method: Méthode de mise en veille prolongée : Clear History Effacer l'historique Don't quit or shutdown on error Ne pas quitter ou arrêter en cas d'erreur Countdown before action: Compte à rebours avant l'action : Information Informations History cleared! Historique effacé ! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-gl.ts000066400000000000000000000270771515201227200320250ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Consellos Quits qprogram-starter when the last command finished Saír de qprogram-starter cando remate a última orde &Quit with last command &Saír coa última orde &Logging &Acceso &Start &Iniciar Browse... Examinar... Start the commands to this time and date Iniciar as ordes nesta hora e data A&t date and time: &Nesta hora e data Select a program Seleccione un programa Information Información Processes aborted Proceso interrompido Error Erro <b>Failed to start!</b><br/>No such program or command. <b>Produciuse un fallo no inicio!</b><br/>Non hai tal programa ou orde. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Produciuse un erro descoñecido!</b><br/>Isto pode ser por mor de parámetros ou opcións incorrectas. &File &Ficheiro &Settings &Configuracións &Help &Axuda &Quit &Saír &Configure &Configurar Version Versión Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Preferencias automatic automático Shutdown Method: Método de apagado: The File "%1" is not writable! Maybe you just don't have the permissions to do so. O ficheiro «%1» non é escribíbel. E probábel que non teña permisos para facelo. Error Erro Please read this carefully! Por favor, lea isto detidamente! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Benvido a qprogram-starter! Se quere que qprogram-starter apague automaticamente o sistema e emprega o Gnome Shell, entón é probábel que obteña un diálogo de apagado. Se quere dspor dun apagado directo, vaia ás preferencias e estableza o método de apagado para ConsoleKit ou outro. Non dubide en visitar https://launchpad.net/~hakaishi para informar de erros, ou calquera outra cousa sobre as traducións. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Información History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-hr.ts000066400000000000000000000262661515201227200320330ustar00rootroot00000000000000 Gui HH:mm:ss SS:mm:ss dddd dd.MM.yyyy dddd dd.MM.gggg &Hints &Savjeti Quits qprogram-starter when the last command finished Prekida qprogram-starter kad zavrÅ¡i provoÄ‘enje zadnje naredbe &Quit with last command &Prekida sa zanjom naredbom &Logging &Prijavljivanje &Start &Start Browse... Pregled... Start the commands to this time and date Pokrenite naredbe na ovaj datum i u ovo vrijeme A&t date and time: N&a datum i vrijeme: Select a program Odaberite program Information Informacija Processes aborted Prekinuti su procesi Error GreÅ¡ka <b>Failed to start!</b><br/>No such program or command. <b>Neuspjelo pokretanje!</b><br/>Nema takvog programa ili naredbe. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Nepoznata greÅ¡ka!</b><br/>To bi moglo biti uzrokovano nevažećim parametrima ili opcijama. &File &Datoteka &Settings &Postavke &Help &Pomoć &Quit &Prestanak &Configure &PodeÅ¡avanje Version InaÄica Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Postavke automatic automatski Shutdown Method: Metoda GaÅ¡enja: The File "%1" is not writable! Maybe you just don't have the permissions to do so. U Datoteku "%1" nije dopuÅ¡teno pisanje! Možda naprosto nemate dopuÅ¡tenja za to. Error GreÅ¡ka Please read this carefully! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Informacija History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-it.ts000066400000000000000000000262641515201227200320340ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy ddd d MMM yyyy &Hints S&uggerimenti Quits qprogram-starter when the last command finished Esce da qprogram-starter al termine dell'ultimo comando &Quit with last command &Uscire dopo l'ultimo comando &Logging Re&gistrazione &Start A&vvia Browse... Esplora... Start the commands to this time and date Lancia i comandi alla data e ora stabiliti A&t date and time: Avvia in data e ora: Select a program Seleziona programma Information Informazioni Processes aborted Elaborazione interrotta Error Errore <b>Failed to start!</b><br/>No such program or command. <b>Impossibile avviare.</b><br/>Nessun programma o comando specificati. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Errore sconosciuto.</b><br/>Questo può dipendere da opzioni o parametri non validi. &File &File &Settings Impo&stazioni &Help A&iuto &Quit &Esci &Configure &Configura Version Versione Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Preferenze automatic automatico Shutdown Method: Metodo di arresto: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Il file «%1» non è scrivibile. Forse non si hanno i permessi per eseguire l'operazione. Error Errore Please read this carefully! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Informazioni History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-mnw.ts000066400000000000000000000270731515201227200322200ustar00rootroot00000000000000 Gui HH:mm:ss dddd dd.MM.yyyy &Hints ကေုာံ ဒမြိပ်မြော် Quits qprogram-starter when the last command finished á€á€«á€› အမိášá€º လက်ကရဴအိုá€á€ºá€‚ှ်á€á€¯á€²á€™á€¹á€‚း á€á€­á€á€ºá€”ူ ပရိုဂရာမ် á€á€™á€ºá€Šá€­ &Quit with last command á€á€¯á€²á€’ှ်ကဵု အမိášá€ºá€œá€€á€ºá€€á€›á€´á€¡á€­á€¯á€á€ºá€Šá€­ &Logging ကေုာံ လုပ် &Start á€á€¯á€² စ Browse... ဂá á€­á€¯á€€á€ºá€‚á á€¬á€² Start the commands to this time and date စ အမိášá€º နူအá€á€­ášá€ºá€á€¹ášá€²á€á€¶ A&t date and time: Select a program ရုဲ ပရိုဂရာမ်မွဲညိ Information Processes aborted အစဳဇန် လီုအာယျ Error <b>Failed to start!</b><br/>No such program or command. <b>စဟွံဂွံ!</b><br/>ပရိုဂရာမ်ကေုာံ အမိášá€ºá€‚ှ်ဟွံမွဲ <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>á€ášá€ºá€—á á€±á€á€ºá€™á€¾á€¬á€Ÿá€½á€¶á€€á á€­á€¯á€Ÿá€º!</b><br/>This could be caused by invalid parameters or options. &File á€á€¾á€¬ášá€º &Settings ဒážá€«á€²á€•လေá€á€ºá€•လေá€á€º &Help အရိုဗášá€º &Quit á€á€­á€á€º &Configure Version Ctrl+Q Ctrl+P Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences automatic Shutdown Method: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Please read this carefully! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-ms.ts000066400000000000000000000270131515201227200320300ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints Pem&bayang Quits qprogram-starter when the last command finished Keluar qprogram-starter bila perintah terakhir selesai &Quit with last command &Keluar dengan perintah terakhir &Logging Pen&gelogan &Start &Mula Browse... Layar... Start the commands to this time and date Mula perintah pada masa dan tarikh ini A&t date and time: &Pada tarikh dan masa: Select a program Pilih satu program Information Maklumat Processes aborted Proses dihenti paksa Error Ralat <b>Failed to start!</b><br/>No such program or command. <b>Gagal dimulakan!</b><br/>Tiada program atau perintah sebegitu. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Ralat tidak diketahui!</b><br/>Ia disebabkan oleh parameter atau pilihan tidak sah. &File &Fail &Settings &Tetapan &Help &Bantuan &Quit &Keluar &Configure Konfi&gur Version Versi Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Keutamaan automatic automatik Shutdown Method: Kaedah Matikan: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Fail "%1" tidak boleh ditulis! Mungkin anda tidak mempunyai keizinan membuatnya. Error Ralat Please read this carefully! Sila baca dengan teliti! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Selamat datang ke qprogram-starter! Jika anda mahu qprogram-starter matikan sistem secara automatik dan anda menggunakan Shell Gnome, maka anda perlu dapatkan dialog matikan disana. Jika anda mahu matikan secara terus, maka peergi ke keutamaan dan tetapkan kaedah matikan ke ConsoleKit atau yang lain. Sila lawati https://launchpad.net/~hakaishi untuk laporkan pepijat atau lain-lain berkenaan terjemahan. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Maklumat History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-pl.ts000066400000000000000000000271101515201227200320220ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Podpowiedzi Quits qprogram-starter when the last command finished Zamyka qprogram-starter po wykonaniu ostatniego polecenia &Quit with last command &ZakoÅ„cz z ostatnim poleceniem &Logging &Dziennik &Start &Start Browse... PrzeglÄ…daj... Start the commands to this time and date Wykonaj polecenie o danej godzinie danego dnia A&t date and time: &O czasie: Select a program Wybierz program Information Informacja Processes aborted Procesy przerwane Error Błąd <b>Failed to start!</b><br/>No such program or command. <b>Uruchomienie nie powiodÅ‚o siÄ™!</b><br/>Brak takiego programu bÄ…dź polecenia. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Nieznany błąd!</b><br/>Może być spowodowany niewÅ‚aÅ›ciwymi parametrami lub opcjami. &File &Plik &Settings &Ustawienia &Help &Pomoc &Quit &Wyjdź &Configure &Konfiguruj Version Wersja Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences Preferencje automatic automatyczna Shutdown Method: Metoda zamkniÄ™cia: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Plik "%1" jest niezapisywalny! Być może nie masz po prostu uprawnieÅ„ do wykonania tej akcji. Error Błąd Please read this carefully! ProszÄ™ przeczytać to uważnie! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Witaj w qprogram-starter! JeÅ›li chcesz by qprogram-starter automatycznie zamykaÅ‚ system i używasz Gnome Shell, prawdopodobnie uzyskasz stÄ…d dialog zamkniÄ™cia. JeÅ›li chcesz bezpoÅ›redniego zamkniÄ™cia, rozważ ustawienie metody zamkniÄ™cia w preferencjach na ConsoleKit lub coÅ› innego. Odwiedź https://launchpad.net/~hakaishi w celu zgÅ‚oszenia błędów lub w sprawach dotyczÄ…cych tÅ‚umaczeÅ„. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information Informacja History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-ro.ts000066400000000000000000000272721515201227200320400ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd dd.MM.yyyy &Hints &Sugestii Quits qprogram-starter when the last command finished ÃŽnchide qprogram-starter, atunci când ultima comandă s-a încheiat &Quit with last command ÃŽn&chide cu ultima comandă &Logging &Jurnalizare &Start &PorneÈ™te Browse... RăsfoieÅŸte... Start the commands to this time and date ÃŽncepeÈ›i comenzile la această dată È™i oră A&t date and time: &La data È™i ora: Select a program Selectează un program Information InformaÈ›ii Processes aborted Procese întrerupte Error Eroare <b>Failed to start!</b><br/>No such program or command. <b>nu a reuÈ™it să porneasca!</b><br/>Nu există un astfel de program sau comanda. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Eroare necunosctă!</b><br/>Acest lucru ar putea fi cauzat de parametri sau opÈ›iuni invalide. &File &FiÈ™ier &Settings &Setări &Help &Ajutor &Quit &IeÈ™ire &Configure &Configurare Version Versiunea Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Reboot Suspend Hibernate History Info The text edit is empty! <b>process finished!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. Save errors and output into files No Action Browse commands and insert into the text editor &Kill Processes &Display Output Display and restore previously executed commands The current text will be the default value for all future starts Set text editor content as default Log No running processes <b>No Output!</b><br/>There is still no data in the output or error stream Content saved for future startups. Displays all output & errors in a separate window <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. History History Double click restores item to the text editor. Preferences Preferences PreferinÈ›e automatic automat Shutdown Method: Metodă de închidere The File "%1" is not writable! Maybe you just don't have the permissions to do so. FiÈ™ierul „%1†nu poate fi scris! Poate nu aveÈ›i permisiune de scriere. Error Eroare Please read this carefully! CitiÈ›i aceasta cu atenÈ›ie! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Bun venit la qprogram-starter! Dacă doriÈ›i qprogram-starter să oprească automat sistemul È™i utilizaÈ›i Gnome Shell, atunci vă sunt susceptibile de a primi un dialog de oprire de acolo. Dacă doriÈ›i o închidere directă, atunci vă rugăm să luaÈ›i în considerare de a merge în preferinÈ›ele È™i stabilirea metodei de închidere pentru ConsoleKit sau altceva. Vă rugăm să nu ezitaÈ›i să vizitaÈ›i https://launchpad.net/~hakaishi pentr a raporta buguri sau pentru orice cu privire la traduceri. Suspend Method: Reboot Method: Maximum History saved: Hibernate Method: Clear History Don't quit or shutdown on error Countdown before action: Information InformaÈ›ii History cleared! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/translations/qprogram-starter-uk.ts000066400000000000000000000411011515201227200320220ustar00rootroot00000000000000 Gui HH:mm:ss HH:mm:ss dddd dd.MM.yyyy dddd, dd.MM.yyyy &Hints П&ідказки Quits qprogram-starter when the last command finished Завершує роботу qprogram-starter, щойно буде виконано оÑтанню команду &Quit with last command Ви&йти піÑÐ»Ñ Ð¾Ñтанньої команди &Logging &Журнал &Start &ЗапуÑтити Browse... Вибрати... Start the commands to this time and date ЗапуÑтити команду у вказаний Ñ‡Ð°Ñ Ð²ÐºÐ°Ð·Ð°Ð½Ð¾Ñ— дати A&t date and time: Да&та Ñ– Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку: Select a program Виберіть програму Information ВідомоÑті Processes aborted Роботу процеÑів перервано Error Помилка <b>Failed to start!</b><br/>No such program or command. <b>Ðе вдалоÑÑ Ð·Ð°Ð¿ÑƒÑтити!</b><br/>Ðемає такої програми або команди. <b>Unknown error!</b><br/>This could be caused by invalid parameters or options. <b>Ðевідома помилка!</b><br/>Це може бути Ñпричинено некоректними параметрами або аргументами. &File &Файл &Settings П&араметри &Help &Довідка &Quit Ви&йти &Configure &Ðалаштувати Version ВерÑÑ–Ñ Ctrl+Q Ctrl+Q Ctrl+P Ctrl+P Ctrl+H Ctrl+H Shutdown Вимкнути Reboot Перезавантажити Suspend Призупинити Hibernate ПриÑпати History Журнал Info ВідомоÑті The text edit is empty! Поле Ð´Ð»Ñ Ñ€ÐµÐ´Ð°Ð³ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту Ñ” порожнім! <b>process finished!</b> <b>Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ð² роботу!</b> <b>process crashed!</b><br/>This could be caused by invalid parameters or options. <b>аварійне Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾Ñ†ÐµÑу!</b><br/>Це може бути Ñпричинено некоректними параметрами або аргументами. Save errors and output into files Зберігати помилки Ñ– виводити Ñ—Ñ… до файлів No Action Без дій Browse commands and insert into the text editor ÐÐ°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°Ð¼Ð¸ Ñ– вÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ текÑтового редактора &Kill Processes Ð’&бити процеÑи &Display Output По&казати Ð²Ð¸Ð²ÐµÐ´ÐµÐ½Ð½Ñ Display and restore previously executed commands Показувати Ñ– відновлювати попередньо виконані команди The current text will be the default value for all future starts Поточний текÑÑ‚ буде типовим Ð´Ð»Ñ ÑƒÑÑ–Ñ… наÑтупних запуÑків Set text editor content as default Ð’Ñтановити вміÑÑ‚ текÑтового Ð¿Ð¾Ð»Ñ Ñк типовий Log Журнал No running processes Ðемає запущених процеÑів <b>No Output!</b><br/>There is still no data in the output or error stream <b>Ðемає виведених даних!</b><br/>Ðемає даних у потоці повідомлень та помилок Content saved for future startups. Дані збережено Ð´Ð»Ñ Ð½Ð°Ñтупних запуÑків. Displays all output & errors in a separate window Показувати уÑÑ– виведені Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ– помилки в окремому вікні <b>General:</b><br/>Each line in the text editor will be executed as one separate process. Put a backslash at the end of the line for a multiline command.<br/><br/>The message boxes will close themselves after 10 seconds.<br/>To start a program just type i.e. "firefox" or "firefox www.google.com" and then click on Start. Commands etc. can be linked by "&&" etc. <br/><br/>If the process is "finished" although it is still running, then try the --nofork option (i.e. kopete --nofork). Note that this will also occur for some programs like gedit, firefox or gnome-terminal if they are already running.<br/><br/>When you want to start a program or command with sudo, please use for example gksu(do) or kdesu(do).<br/><br/><b>Files:</b><br/>The configuration-file can be found at <i>%2</i>.<br/>The log files can be found at <i>%1</i>.<br/><br/><b>make examples:</b><br/>&nbsp;make -C /path/to/project<br/>&nbsp;make clean -C /path/to/project<br/><br/><b>About Errors:</b><br/>Because almost every program gives a different error code, it is impossible to say what happened. So just log the output and see what kind of error occurred. The output files can be found at <i>%1</i>.<br/><br/>If the shutdown won't work, it might mean that "sudo shutdown -P now" is used. This needs admin permissions. You can do the this:<br/><br/>Post the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre> and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> whereas * replaces the username or %groupname. <b>Загальне:</b><br/>Кожен Ñ€Ñдок у текÑтовому редакторі буде виконано Ñк окремий процеÑ. БагаторÑдкову команду можна запиÑати за допомогою Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð½Ð°Ð¿Ñ€Ð¸ÐºÑ–Ð½Ñ†Ñ– Ñ€Ñдка Ñимвол зворотної похилої риÑки.<br/><br/>Вікна повідомлень закриватимутьÑÑ Ð·Ð° 10 Ñекунд.<br/>Щоб запуÑтити програму, проÑто введіть, наприклад, «firefox» або «firefox www.google.com», а потім клацніть на кнопці «ЗапуÑтити». Команди можна поєднувати за допомогою «&&». <br/><br/>Якщо Ð¿Ñ€Ð¾Ñ†ÐµÑ Â«Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ð² роботу», хоча вÑе ще працює, Ñпробуйте параметр --nofork (наприклад, kopete --nofork). Зауважте, що таке траплÑєтьÑÑ Ð´Ð»Ñ Ð´ÐµÑких програм, зокрема gedit, firefox та gnome-terminal, Ñкщо Ñ—Ñ… вже запущено.<br/><br/>Якщо ви хочете запуÑтити програму або команду з sudo, будь лаÑка, викориÑтовуйте gksu(do) або kdesu(do).<br/><br/><b>Файли:</b><br/>Файл налаштувань зберігаєтьÑÑ Ñƒ <i>%2</i>.<br/>Файли журналів можна знайти у <i>%1</i>.<br/><br/><b>Приклади з make:</b><br/>&nbsp;make -C /шлÑÑ…/до/проєкту<br/>&nbsp;make clean -C /шлÑÑ…/до/проєкту<br/><br/><b>Про помилки:</b><br/>ОÑкільки майже у кожної програми Ñ” влаÑні коди помилок, майже неможливо визначити, що Ñаме ÑталоÑÑ. Тому запишіть до журналу виведені Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ– ознайомтеÑÑ Ð· ними Ð´Ð»Ñ Ð²Ð¸ÑÐ²Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸Ñ‡Ð¸Ð½Ð¸ помилки. Виведені файли буде запиÑано до <i>%1</i>.<br/><br/>Якщо Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð½Ðµ працює, це може значати, що викориÑтано «sudo shutdown -P now». Така команда потребує прав доÑтупу адмініÑтратора. Ðалаштувати ці права доÑтупу можна так:<br/><br/>Ð’Ñтавте таку команду до термінала:<pre>EDITOR=nano sudo -E visudo</pre> Ñ– допишіть такий Ñ€Ñдок:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>, оÑкільки * замінює ім'Ñ ÐºÐ¾Ñ€Ð¸Ñтувача або %groupname. History History Журнал Double click restores item to the text editor. Подвійне ÐºÐ»Ð°Ñ†Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÑŽÑ” Ð·Ð°Ð¿Ð¸Ñ Ñƒ текÑтовому редакторі. Preferences Preferences ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ automatic автоматичне Shutdown Method: СпоÑіб вимиканнÑ: The File "%1" is not writable! Maybe you just don't have the permissions to do so. Файл «%1» Ñ” непридатним до запиÑу! Ймовірно, ви не маєте належних прав доÑтупу до цього файла. Error Помилка Please read this carefully! Будь лаÑка, ознайомтеÑÑ Ð· цією інформацією! Welcome to qprogram-starter! If you want qprogram-starter to automatically shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. Вітаємо у qprogram-starter! Якщо ви хочете ÑкориÑтатиÑÑ qprogram-starter Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ÑиÑтеми Ñ– викориÑтовуєте Gnome Shell, ймовірно, діалогове вікно Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð±ÑƒÐ´Ðµ показано прÑмо зараз Якщо ви хочете вимикати ÑиÑтему безпоÑередньо, будь лаÑка, відкрийте вікно налаштувань Ñ– вÑтановіть у пункті ÑпоÑобу Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ConsoleKit або щоÑÑŒ інше. Щоб повідомити про ваду у програмі або перекладі, ÑкориÑтайтеÑÑ Ñторінкою https://launchpad.net/~hakaishi Suspend Method: СпоÑіб призупинки: Reboot Method: СпоÑіб перезавантаженнÑ: Maximum History saved: МакÑимальний розмір журналу: Hibernate Method: СпоÑіб приÑиплÑннÑ: Clear History Спорожнити журнал Don't quit or shutdown on error Ðе виходити Ñ– не вимикати при помилці Countdown before action: Відлік перед дією: Information ВідомоÑті History cleared! Журнал Ñпорожнено! hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/ui/000077500000000000000000000000001515201227200234225ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/ui/gui.ui000066400000000000000000000226061515201227200245530ustar00rootroot00000000000000 Gui 0 0 554 293 qprogram-starter :/pix:/pix false HH:mm:ss Qt::Horizontal 40 15 Save errors and output into files &Logging Quits qprogram-starter when the last command finished &Quit with last command No Action Shutdown Reboot Suspend Hibernate 0 0 Browse commands and insert into the text editor Browse... 75 true &Start true 75 true &Kill Processes true Displays all output & errors in a separate window &Display Output Start the commands to this time and date A&t date and time: false dddd dd.MM.yyyy true The current text will be the default value for all future starts Set text editor content as default 0 0 Display and restore previously executed commands History true 0 0 554 23 &File &Settings &Help &Quit Ctrl+Q &Configure Ctrl+P &Hints Ctrl+H atDateCheckBox dateEdit timeEdit browse historyBtn loggingCheckBox quitCheckBox saveButton startB abortB showLogsButton plainTextEdit atDateCheckBox toggled(bool) dateEdit setEnabled(bool) 81 46 247 47 atDateCheckBox toggled(bool) timeEdit setEnabled(bool) 81 46 387 47 action_Quit triggered(bool) Gui close() -1 -1 271 210 quitCheckBox toggled(bool) comboBox setDisabled(bool) 276 157 456 157 hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/ui/history.ui000066400000000000000000000016361515201227200254700ustar00rootroot00000000000000 History 0 0 600 400 History :/pix:/pix Double click restores item to the text editor. hakaishi-shutdown-qapps-543a9ee/qprogram-starter/src/ui/preferences.ui000066400000000000000000000160241515201227200262650ustar00rootroot00000000000000 Preferences 0 0 368 329 Preferences :/pix:/pix automatic login1 Gnome session KDE session HAL ConsoleKit sudo shutdown -P now Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok automatic login1 Gnome session HAL UPower DeviceKit Suspend Method: Reboot Method: automatic login1 Gnome session KDE session HAL ConsoleKit sudo shutdown -r now Qt::Vertical 20 40 Maximum History saved: Hibernate Method: automatic login1 Gnome session HAL UPower DeviceKit Shutdown Method: Clear History Don't quit or shutdown on error Countdown before action: 300 buttonBox accepted() Preferences accept() 248 254 157 274 buttonBox rejected() Preferences reject() 316 260 286 274 hakaishi-shutdown-qapps-543a9ee/qshutdown.qrc000066400000000000000000000007221515201227200214500ustar00rootroot00000000000000 version.txt qshutdown/src/pixmap/red_glasses.xpm qshutdown/src/pixmap/red_glasses.png qshutdown/src/pixmap/info.svg qshutdown/src/pixmap/warn.svg qshutdown/src/pixmap/running.svg hakaishi-shutdown-qapps-543a9ee/qshutdown/000077500000000000000000000000001515201227200207405ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qshutdown/COPYING000066400000000000000000001043741515201227200220040ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . hakaishi-shutdown-qapps-543a9ee/qshutdown/NEWS000066400000000000000000000224741515201227200214500ustar00rootroot00000000000000Changes in Release 1.9.0 ========================= - move to Qt 6 - fix suspend for windows Changes in Release 1.8.0 ========================= - increased time-skip-check to 30 seconds. If your system goes to sleep etc. please wait 30 seconds until you wakeup or start your system again. - changed default settings and log file location. See the info window for more information. - added default value instead of "0" - added custom icons for system tray (because of heavy trouble under Ubuntu/Xubuntu etc.) - disable "warnings on" as default - added option to remember last used settings Changes in Release 1.7.3 ========================= - fixed bug for shutdown/reboot/suspend/hibernate settings caused by previous update. Changes in Release 1.7.2 ========================= - code optimations - fixed small bugs in calendar and "weekly" - added DBus Interface method for starting qshutdown from scripts or other programs. (Looking for a way to restart countdown after sleep...) Changes in Release 1.7.1 ========================= - fixed: "Weekly" not disabled eventhough the countdown is running. - fixed: From time to time strage behaviour causing countdown to abbort (issue with two different time types). Changes in Release 1.7.0 ========================= - time is now displayed immediately when OK is pressed - added new shutdown/reboot/suspend/hibernate command (possibly working on most debian based systems, if supported/activated) - code cleanup - added weekly to the calendar - fixed resizing problems in config menu - fixed issues after manual/automatic standby mode (not caused by qshutdown) - added option to hide the system tray icon - updated Galician, Ukrainian, Asturian, Malay - added Russian Changes in Release 1.6.8 ========================= - added systemctl command in "automatic" and "sudo" - complete Turkish translation - added Indonesian - added Czech Changes in Release 1.6.7 ========================= - updated Japanese translations - fixed sudo shutdown command - fixed bug relating to environment (#716194) Changes in Release 1.6.6 ========================= - revisited power.h - added welcome dialog with informations Changes in Release 1.6.5 ========================= - minor fix for the preferences, the password and the about dialog - reviewed shutdown commands - new translations for: English (Australian), Galician, Croatian, Burmese, Romanian Changes in Release 1.6.4 ========================= - new (and bigger) qshutdown symbol - many new translations - fix for intern reset: now independent from QTimer - fix for not keeping proportions at startup - fix for discarding changes and passwords when escaping preferences and password dialogs - removed version text label from the main window - added version text message to the statusbar - simplified the creation of the config file Changes in Release 1.6.3 ========================= - added advanced settings for specifying or choosing a shutdown/reboot/ suspend/hibernate command. - added checkBox for qshutdown to quit after countdown ended - added gnome-session-quit command - changed config file format - fix for enabling "hide qshudown at startup" - save and ok of the editor now updates the preferences window's settings Changes in Release 1.6.2 ========================= - replaced all qDebug(), qWarning() and qCritical() - added "About Qt" - reworked QSettings - added hideEvent and showEvent because of minimize/restore Action of the System Tray Icon Changes in Release 1.6.1 ========================= - for first start fonts weren't correctly initialized -> fixed. Changes in Release 1.6.0 ========================= - tool tips updated and new ones - new design with more features - added: "About" - new warning method: System tray icon message. - removed spacers and LCD from the source code since it's more convenient to leave this to the ui. - more precise display of the time displayed with the LCD - removed most global variables and thus restructured many functions and classes - removed qApp-quit() from Gui::finished_() -> shutdown works again under Ubuntu Natty and so on. Added Gui::saveLog() instead to resolve the problem from version 1.5.2 (instead of the solution from version 1.5.3) Changes in Release 1.5.6 ========================= - bugfix: minimize and restore button didn't work correctly on all systems. - added: more information about hotkeys (removed old ones) Changes in Release 1.5.5 ========================= - bugfix: autostart entry is written or deleted when confirming with OK. (the function was called at the wrong place) Changes in Release 1.5.4 ========================= - added: restore and minimize Button to the system tray icon (also because the left click will not work with Unity on Ubuntu). Changes in Release 1.5.3 ========================= - fixed: No log entry for shutdown events (gui.cpp -> before_quit()) - fixed: When pressing Enter in the password prompt line Edit the message box reappeared twice (passwd.cpp) Changes in Release 1.5.2 ========================= - fixed timer problem (minor). Changes in Release 1.5.1 ========================= - saving the edited configuration file will now also update the preferences window. - the editor got an additional button and won't quit after saving, if Ok hasn't been clicked. - the main window won't rise into the foreground if the calendar, the password promt or the editor is open. - removed line for minimizing Window after OK has been clicked. Changes in Release 1.5.0 ========================= - added a password gui and editor to access qshutdown.conf, removing a possible security vulnerability (in "admin mode" only). - added a button in preferences to edit qshutdown.conf - revised the way of how the autostart works and added an option to the preferences. Changes in Release 1.4.9 ========================= - fixed translation (de) for info box: qshutdown_script.sh -> qshutdown_script Changes in Release 1.4.8 ========================= Changes in Release 1.4.7 ========================= - fixed: missing line in power.cpp at hibernate() - integrated dbus command for locking screen Changes in Release 1.4.6 ========================= - simplified some calculations (gui.cpp) - removed redundant funktion starter() - added lock screen for suspend and hibernate - added option to hide qshutdown at startup if "Start countdown" is enabled. Changes in Release 1.4.5 ========================= - new path for .qm translation files - implemented UPower (for suspend and hibernate) - implemented shortcut Shift + E to edit ~/.qshutdown/qshutdown.conf with gksu(do)/kdesu(do) - revised "admin mode" (Lock_all) - made some code cleanups Changes in Release 1.4.4 ========================= - fixed: if no date was set and the clock turned 12:00 AM qshutdown stopped working because the date was intern set to the current day. - .ui files had wrong .qrc path (fixed) Changes in Release 1.4.3 ========================= - new version control - and some minor changes Changes in Release 1.3.6 ========================= - fix for timeEdit Changes in Release 1.3.4 ========================= - fix for toolButton - bugfix for spinBox Changes in Release 1.3.3 ========================= - new layout for preferences Changes in Release 1.3.2 ========================= - fixed and modified many things Changes in Release 1.3.1 ========================= - adjusted some things in the calendar widget - corrected quite a lot things - made some code cleanups Changes in Release 1.3.0 ========================= - new features: added a calendar and the changes of the font settings take immediantly effect in the main window Changes in Release 1.2.5 ========================= - bugfix: Programwindow didn't reappear when starting twice Changes in Release 1.2.4 ========================= - new feature: start countdown at startup - scrollable area for preferences Changes in Release 1.2.3 ========================= - bugfix for "Lock_all": timeEdit was not disabled at startup. - other minor changes related to Lock_all - the size of the log file is now adjustable Changes in Release 1.2.2 ========================= - "Reset settings" won't save changes directly anymore. The settings will be loaded by each showEvent. Changes in Release 1.2.1 ========================= - bug fixed: window shifted down by each show and hide event Changes in Release 1.2.0 ========================= - improved tray-icon-contextmenu - fixed shutdown/reboot/suspend/hibernate functions - replaced info message box with a QPlainTextEdit Object - added a combo box and shortcuts - qshutdown now accepts arguments - added a preferences dialog Changes in Release 1.1.0 ========================= - added tray-icon-contextmenus for shutdown/reboot/standby/hibernate - pixmap now in .xpm format - added DeviceKit in the shutdown option Changes in Release 1.0.2 ========================= - bugfix: if local time is not continual and skips certain seconds, qshutdown might have not shutdown the system or shown it self 3 times even if there were less than 70 seconds left. *now fixed* Changes in Release 1.0.1 ========================= - Initial Release hakaishi-shutdown-qapps-543a9ee/qshutdown/README.md000066400000000000000000000053701515201227200222240ustar00rootroot00000000000000# qshutdown ## INSTALL: Dependencies: qt6-base-dev, qt6-tools-dev-tools, qmake6, build-essential If you want to install from source, open a terminal and change into this folder. To install type: `qmake` `sudo make install distclean` For admins: You can enable "parental lock" for every user if you do the following: `sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/` now add the following line to the sudoers (for example with "EDITOR=nano sudo -E visudo"): `* ALL = NOPASSWD:/usr/bin/qshutdown` the * replaces the username or %groupname (Don't forget the % if it's a group). And one more thing: Edit the qshutdown settings file (after starting qshutdown once as root) and set the option Lock_all to true. (path to file can be seen in the qshutdown info window) If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings file. ## UNINSTALL: To uninstall type: `qmake` (if the Makefile has been removed) `sudo make deinstall` (please note that the users settings and log files won't be removed) ## KNOWN ISSUES: In case you want to use the sudo shutdown command and you have set the rights in the sudoers, but it still doesn't work, please specify your own command in the preferences and try if `sudo shutdown -hP now` works. For most systems using the Gnome Shell a certain DBus method has been removed, thus a shutdown dialog will be likely to appear if qshutdown's methods have been set to automatic or to Gnome session. If you do not want this shutdown dialog to appear, please use ConsoleKit or something else. ## HINTS ON USAGE: One can not close qshutdown, but only quit it using the sytem tray icon (indicator) or the key combination Ctrl+Q (see shortcuts). If you want qshutdown to stop bugging you, just remove the hook from warnings on? ## HOTKEYS: |Sequence|Function| | :--- | :--- | |Ctrl+I|information window| |Ctrl+Q|Quit| |Ctrl+P|Prefereces| |Ctrl+L|write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)| |Ctrl+S|set to shutdown| |Ctrl+R|set to restart| |Ctrl+U|set to suspend to RAM| |Ctrl+H|set to hibernate| |Ctrl+E|stop timer (only if the countdown has started and the admin didn't restrict the access)| |Shift+E|to edit the config file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).| ## LICENES: The Debian distribution is licensed under GPLv3. The Windows binaries include suspend_win.h which is licensed under BSD-2-clause. Note that either of them includes Qt sources which are licensed under various licenses depending on the modules used. See [here](https://doc.qt.io/qt-6/licensing.html) for details. hakaishi-shutdown-qapps-543a9ee/qshutdown/autostart/000077500000000000000000000000001515201227200227665ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qshutdown/autostart/99qshutdown000077500000000000000000000000361515201227200251310ustar00rootroot00000000000000#!/bin/sh sudo -H qshutdown & hakaishi-shutdown-qapps-543a9ee/qshutdown/autostart/qshutdown.desktop000077500000000000000000000002671515201227200264250ustar00rootroot00000000000000[Desktop Entry] Name=qshutdown Name[de_DE]=qshutdown Exec=qshutdown Terminal=false Type=Application Icon=red_glasses Categories=Utility; Comment=qshutdown - An advanced shutdown tool hakaishi-shutdown-qapps-543a9ee/qshutdown/icon.rc000066400000000000000000000001051515201227200222120ustar00rootroot00000000000000IDI_ICON1 ICON DISCARDABLE "src/pixmap/icon.ico"hakaishi-shutdown-qapps-543a9ee/qshutdown/qshutdown.pro000066400000000000000000000056051515201227200235240ustar00rootroot00000000000000linux{ QT += dbus } TEMPLATE = app TARGET = bin/qshutdown DEPENDPATH = . src src/translations INCLUDEPATH = . src OBJECTS_DIR = build MOC_DIR = build UI_DIR = build RCC_DIR = build win32 { RC_FILE += icon.rc HEADERS += src/suspend_win.h } QT += widgets gui system($$[QT_HOST_BINS]/lrelease qshutdown.pro) QMAKE_DISTCLEAN = src/translations/*.qm # Input HEADERS += src/gui.h src/power.h src/info.h\ src/calendar.h src/preferences.h\ src/ch_passwd.h src/passwd.h src/editor.h\ src/about.h src/weekday.h src/weekdayitem.h SOURCES += src/gui.cpp src/main.cpp src/info.cpp\ src/preferences.cpp src/calendar.cpp\ src/ch_passwd.cpp src/passwd.cpp\ src/editor.cpp src/about.cpp src/weekday.cpp\ src/weekdayitem.cpp RESOURCES += ../qshutdown.qrc TRANSLATIONS += src/translations/qshutdown-ast.ts\ src/translations/qshutdown-bg.ts\ src/translations/qshutdown-bs.ts\ src/translations/qshutdown-cs.ts\ src/translations/qshutdown-de.ts\ src/translations/qshutdown-de_DE.ts\ src/translations/qshutdown-en_AU.ts\ src/translations/qshutdown-en_GB.ts\ src/translations/qshutdown-eo.ts\ src/translations/qshutdown-es.ts\ src/translations/qshutdown-fr.ts\ src/translations/qshutdown-gl.ts\ src/translations/qshutdown-he.ts\ src/translations/qshutdown-hr.ts\ src/translations/qshutdown-id.ts\ src/translations/qshutdown-it.ts\ src/translations/qshutdown-ja.ts\ src/translations/qshutdown-ms.ts\ src/translations/qshutdown-my.ts\ src/translations/qshutdown-ro.ts\ src/translations/qshutdown-ru.ts\ src/translations/qshutdown-tr.ts\ src/translations/qshutdown-ug.ts\ src/translations/qshutdown-uk.ts\ src/translations/qshutdown-uz.ts\ src/translations/qshutdown-zh_CN.ts\ src/translations/qshutdown-zh_TW.ts FORMS += src/ui/gui.ui src/ui/preferences.ui\ src/ui/calendar.ui src/ui/ch_passwd.ui\ src/ui/passwd.ui src/ui/editor.ui\ src/ui/about.ui linux{ # install target.path = /usr/bin icon.files = src/pixmap/red_glasses.xpm icon.path = /usr/share/icons/hicolor/32x32/apps translation.files = src/translations/*.qm translation.path = /usr/share/qshutdown/translations autostart1.files = autostart/qshutdown.desktop autostart1.path = /usr/share/applications autostart2.files = autostart/99qshutdown autostart2.path = /usr/share/qshutdown/autostart INSTALLS = target icon translation autostart1 autostart2 deinstall.depends = uninstall FORCE deinstall.commands = rm -R /usr/share/qshutdown QMAKE_EXTRA_TARGETS = deinstall } OTHER_FILES += \ icon.rc \ src/pixmap/icon.ico hakaishi-shutdown-qapps-543a9ee/qshutdown/src/000077500000000000000000000000001515201227200215275ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qshutdown/src/about.cpp000066400000000000000000000057511515201227200233550ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "about.h" #include #include About::About(QWidget *parent): QDialog(parent){ setupUi(this); textBrowser->setOpenExternalLinks(true); textBrowser_2->setHtml(tr("

Special thanks to:

" "

Fabian Deuchler for helping here and " "there.

And Brian Nelson & Dr. Tobias Quathamer for " "sponsoring the uploads to Debian.

" "As well as to Miquel Banchs i Piqué for the idea of " "implementing a routine allowing custom settings for " "each day of the week.

")); textBrowser->setText(tr("

qshutdown, a time and countdown based shutdown tool

" "

Author: Christian Metscher <hakaishi@web.de>

" "

Copyright © 2010-2023, by Christian Metscher

" "

" "https://launchpad.net/~hakaishi

" "

Please use https://bugs.launchpad.net/qt-shutdown-p" " or " "http://www.debian.org/Bugs/Reporting" " to report bugs.

")); //Versioning QFile versionFile(":version"); versionFile.open(QIODevice::ReadOnly | QIODevice::Text); QTextStream in(&versionFile); QString string = in.readLine(); version->setText(tr("Version ") + string); versionFile.close(); icon = QIcon(":red_glasses_image"); QPixmap pixmap = icon.pixmap(QSize(60,60), QIcon::Normal, QIcon::On); label->setPixmap(pixmap); } About::~About(){ } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/about.h000066400000000000000000000020071515201227200230110ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef ABOUT_H #define ABOUT_H #include "ui_about.h" #include class About : public QDialog, public Ui::About { Q_OBJECT public: About(QWidget *parent = 0); ~About(); private: QIcon icon; }; #endif //ABOUT_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/calendar.cpp000066400000000000000000001027141515201227200240110ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "calendar.h" #include #include #include Calendar::Calendar(QWidget *parent): QDialog(parent){ setupUi(this); isClosed = true; timeRunning = false; setWindowFlags(Qt::Window); settings = new QSettings(this); calendarWidget->setMinimumDate(QDate::currentDate()); mondayItems = new QList; tuesdayItems = new QList; wednesdayItems = new QList; thursdayItems = new QList; fridayItems = new QList; saturdayItems = new QList; sundayItems = new QList; mon = new WeekDay(this); mon->label->setText(QLocale::system().dayName(Qt::Monday, QLocale::LongFormat)); mon1 = new WeekDayItem(this); mon2 = new WeekDayItem(this); mon3 = new WeekDayItem(this); mon4 = new WeekDayItem(this); mon5 = new WeekDayItem(this); *mondayItems << mon1 << mon2 << mon3 << mon4 << mon5; tue = new WeekDay(this); tue->label->setText(QLocale::system().dayName(Qt::Tuesday, QLocale::LongFormat)); tue1 = new WeekDayItem(this); tue2 = new WeekDayItem(this); tue3 = new WeekDayItem(this); tue4 = new WeekDayItem(this); tue5 = new WeekDayItem(this); *tuesdayItems << tue1 << tue2 << tue3 << tue4 << tue5; wed = new WeekDay(this); wed->label->setText(QLocale::system().dayName(Qt::Wednesday, QLocale::LongFormat)); wed1 = new WeekDayItem(this); wed2 = new WeekDayItem(this); wed3 = new WeekDayItem(this); wed4 = new WeekDayItem(this); wed5 = new WeekDayItem(this); *wednesdayItems << wed1 << wed2 << wed3 << wed4 << wed5; thu = new WeekDay(this); thu->label->setText(QLocale::system().dayName(Qt::Thursday, QLocale::LongFormat)); thu1 = new WeekDayItem(this); thu2 = new WeekDayItem(this); thu3 = new WeekDayItem(this); thu4 = new WeekDayItem(this); thu5 = new WeekDayItem(this); *thursdayItems << thu1 << thu2 << thu3 << thu4 << thu5; fri = new WeekDay(this); fri->label->setText(QLocale::system().dayName(Qt::Friday, QLocale::LongFormat)); fri1 = new WeekDayItem(this); fri2 = new WeekDayItem(this); fri3 = new WeekDayItem(this); fri4 = new WeekDayItem(this); fri5 = new WeekDayItem(this); *fridayItems << fri1 << fri2 << fri3 << fri4 << fri5; sat = new WeekDay(this); sat->label->setText(QLocale::system().dayName(Qt::Saturday, QLocale::LongFormat)); sat1 = new WeekDayItem(this); sat2 = new WeekDayItem(this); sat3 = new WeekDayItem(this); sat4 = new WeekDayItem(this); sat5 = new WeekDayItem(this); *saturdayItems << sat1 << sat2 << sat3 << sat4 << sat5; sun = new WeekDay(this); sun->label->setText(QLocale::system().dayName(Qt::Sunday, QLocale::LongFormat)); sun1 = new WeekDayItem(this); sun2 = new WeekDayItem(this); sun3 = new WeekDayItem(this); sun4 = new WeekDayItem(this); sun5 = new WeekDayItem(this); *sundayItems << sun1 << sun2 << sun3 << sun4 << sun5; verticalLayout_3->addWidget(mon,0,Qt::AlignTop); foreach(WeekDayItem *item, *mondayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->addWidget(tue,0,Qt::AlignTop); foreach(WeekDayItem *item, *tuesdayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->addWidget(wed,0,Qt::AlignTop); foreach(WeekDayItem *item, *wednesdayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->addWidget(thu,0,Qt::AlignTop); foreach(WeekDayItem *item, *thursdayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->addWidget(fri,0,Qt::AlignTop); foreach(WeekDayItem *item, *fridayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->addWidget(sat,0,Qt::AlignTop); foreach(WeekDayItem *item, *saturdayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->addWidget(sun,0,Qt::AlignTop); foreach(WeekDayItem *item, *sundayItems){ verticalLayout_3->addWidget(item,0,Qt::AlignTop); item->setVisible(false); item->setEnabled(false); } verticalLayout_3->setSpacing(0); connect(calendarWidget, SIGNAL(clicked(QDate)), this, SLOT(getDate(QDate))); connect(weekly, SIGNAL(toggled(bool)), scrollAreaWidgetContents, SLOT(setEnabled(bool))); connect(buttonBox->button(QDialogButtonBox::Ok), SIGNAL(clicked(bool)), this, SLOT(setDate())); connect(buttonBox->button(QDialogButtonBox::Ok), SIGNAL(clicked(bool)), this, SLOT(saveToConfFile())); connect(mon->spin, SIGNAL(valueChanged(int)), this, SLOT(monday_addTimeEditAndActionBox(int))); connect(tue->spin, SIGNAL(valueChanged(int)), this, SLOT(tuesday_addTimeEditAndActionBox(int))); connect(wed->spin, SIGNAL(valueChanged(int)), this, SLOT(wednesday_addTimeEditAndActionBox(int))); connect(thu->spin, SIGNAL(valueChanged(int)), this, SLOT(thursday_addTimeEditAndActionBox(int))); connect(fri->spin, SIGNAL(valueChanged(int)), this, SLOT(friday_addTimeEditAndActionBox(int))); connect(sat->spin, SIGNAL(valueChanged(int)), this, SLOT(saturday_addTimeEditAndActionBox(int))); connect(sun->spin, SIGNAL(valueChanged(int)), this, SLOT(sunday_addTimeEditAndActionBox(int))); if(!QFile::exists(file)) saveToConfFile(); else loadSettings(); } Calendar::~Calendar(){ delete settings; } void Calendar::getDate(QDate date){ calendarDate.setDate(date); } void Calendar::setDate(){ if(calendarWidget->selectedDate() != QDate::currentDate()) calendarDate.setDate(calendarWidget->selectedDate()); if(!weekly->isChecked() && calendarDate.isValid() && calendarDate.date() != QDate::currentDate()) //if a day was selected setCalendarDate = calendarDate; //don't touch calendarDate! else setCalendarDate = QDateTime(); if(weekly->isChecked()) getSortedAndActivatedDays(); else setWeeklyDate = QDateTime(); aDateWasSet(); } void Calendar::getSortedAndActivatedDays(){ int activatedDays[7] = {0, 0, 0, 0, 0, 0, 0}; //note that each day has at least the value 0! if(mon->spin->value() > 0) //check if an item is available for each day. activatedDays[0] = Qt::Monday; //Qt::Monday is int 1 etc. if(tue->spin->value() > 0) activatedDays[1] = Qt::Tuesday; if(wed->spin->value() > 0) activatedDays[2] = Qt::Wednesday; if(thu->spin->value() > 0) activatedDays[3] = Qt::Thursday; if(fri->spin->value() > 0) activatedDays[4] = Qt::Friday; if(sat->spin->value() > 0) activatedDays[5] = Qt::Saturday; if(sun->spin->value() > 0) activatedDays[6] = Qt::Sunday; int todaysDayOfWeek = QDate::currentDate().dayOfWeek(); QList calculatedDay; for(int i=0; i < 7; i++){ if(activatedDays[i] != 0){ // if zero, then there were no items! int x = activatedDays[i] - todaysDayOfWeek; if(x < 0) x += 7; calculatedDay << x; } } //note that all calculated days are in the future. Only if it is today, the time can be in the past! if(calculatedDay.isEmpty()){ setWeeklyDate = QDateTime(); aDateWasSet(); return; } std::sort(calculatedDay.begin(), calculatedDay.end()); setWeeklyDate = QDateTime::currentDateTime().addDays(calculatedDay[0]); getNearestTime(calculatedDay); } void Calendar::getNearestTime(QList calculatedDay){ QList times = getSortedTimes(); if(QDateTime(setWeeklyDate.date(),times[0]) > QDateTime::currentDateTime()) setWeeklyDate.setTime(times[0]); else{ int i = 0; //first index for the list of the sorted times while((QDateTime(setWeeklyDate.date(),times[i]) <= QDateTime::currentDateTime()) && (i < times.count())){ //as long as we have a next position and the time is in the past: i+1 ++i; } //at this point we have either a matching time or nothing. Nothing would be bad... if(i < times.count()) //there has been a matching time... setWeeklyDate.setTime(times[i]); if(i >= times.count()){ //there was no matching time, but there still might be one on another day. if(calculatedDay.count() > 1){ //if there is at least another day... setWeeklyDate = QDateTime::currentDateTime().addDays(calculatedDay[1]); //take another day... times = getSortedTimes(); //and get the new times list. setWeeklyDate.setTime(times[0]); //the first time setting will do. } else{ // there is no other day => +7 setWeeklyDate = QDateTime::currentDateTime().addDays(7); setWeeklyDate.setTime(times[0]); } } } } QList Calendar::getSortedTimes(){ QList times; if(setWeeklyDate.date().dayOfWeek() == Qt::Monday){ //Which day of week is the choosen day? foreach(WeekDayItem *item, *mondayItems){ if(item->isEnabled()){ //get all items if they are visible/enabled. times << item->timeEdit->time(); } } } if(setWeeklyDate.date().dayOfWeek() == Qt::Tuesday){ foreach(WeekDayItem *item, *tuesdayItems){ if(item->isEnabled()){ times << item->timeEdit->time(); } } } if(setWeeklyDate.date().dayOfWeek() == Qt::Wednesday){ foreach(WeekDayItem *item, *wednesdayItems){ if(item->isEnabled()){ times << item->timeEdit->time(); } } } if(setWeeklyDate.date().dayOfWeek() == Qt::Thursday){ foreach(WeekDayItem *item, *thursdayItems){ if(item->isEnabled()){ times << item->timeEdit->time(); } } } if(setWeeklyDate.date().dayOfWeek() == Qt::Friday){ foreach(WeekDayItem *item, *fridayItems){ if(item->isEnabled()){ times << item->timeEdit->time(); } } } if(setWeeklyDate.date().dayOfWeek() == Qt::Saturday){ foreach(WeekDayItem *item, *saturdayItems){ if(item->isEnabled()){ times << item->timeEdit->time(); } } } if(setWeeklyDate.date().dayOfWeek() == Qt::Sunday){ foreach(WeekDayItem *item, *sundayItems){ if(item->isEnabled()){ times << item->timeEdit->time(); } } } for(int i=0; i < times.count()-1; i++){ //sort all available times for(int x=0; x < times.count()-1; x++){ if(times[x] > times[x+1]){ times.swapItemsAt(x,x+1); } } } return times; } void Calendar::showEvent(QShowEvent* show_calendar){ isClosed = false; starting(); loadSettings(); QDialog::showEvent(show_calendar); } void Calendar::closeEvent(QCloseEvent* close_calendar){ isClosed = true; finishing(); QDialog::closeEvent(close_calendar); } bool Calendar::getClosed(){ return isClosed; } void Calendar::monday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << mon1 << mon2 << mon3 << mon4 << mon5; break; case 1: addItemList << mon1; removeItemList << mon2 << mon3 << mon4<< mon5; break; case 2: addItemList << mon1 << mon2; removeItemList << mon3 << mon4 << mon5; break; case 3: addItemList << mon1 << mon2 << mon3; removeItemList << mon4 << mon5; break; case 4: addItemList << mon1 << mon2 << mon3 << mon4; removeItemList << mon5; break; case 5: addItemList << mon1 << mon2 << mon3 << mon4 << mon5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::tuesday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << tue1 << tue2 << tue3 << tue4 << tue5; break; case 1: addItemList << tue1; removeItemList << tue2 << tue3 << tue4<< tue5; break; case 2: addItemList << tue1 << tue2; removeItemList << tue3 << tue4 << tue5; break; case 3: addItemList << tue1 << tue2 << tue3; removeItemList << tue4 << tue5; break; case 4: addItemList << tue1 << tue2 << tue3 << tue4; removeItemList << tue5; break; case 5: addItemList << tue1 << tue2 << tue3 << tue4 << tue5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::wednesday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << wed1 << wed2 << wed3 << wed4 << wed5; break; case 1: addItemList << wed1; removeItemList << wed2 << wed3 << wed4<< wed5; break; case 2: addItemList << wed1 << wed2; removeItemList << wed3 << wed4 << wed5; break; case 3: addItemList << wed1 << wed2 << wed3; removeItemList << wed4 << wed5; break; case 4: addItemList << wed1 << wed2 << wed3 << wed4; removeItemList << wed5; break; case 5: addItemList << wed1 << wed2 << wed3 << wed4 << wed5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::thursday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << thu1 << thu2 << thu3 << thu4 << thu5; break; case 1: addItemList << thu1; removeItemList << thu2 << thu3 << thu4<< thu5; break; case 2: addItemList << thu1 << thu2; removeItemList << thu3 << thu4 << thu5; break; case 3: addItemList << thu1 << thu2 << thu3; removeItemList << thu4 << thu5; break; case 4: addItemList << thu1 << thu2 << thu3 << thu4; removeItemList << thu5; break; case 5: addItemList << thu1 << thu2 << thu3 << thu4 << thu5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::friday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << fri1 << fri2 << fri3 << fri4 << fri5; break; case 1: addItemList << fri1; removeItemList << fri2 << fri3 << fri4<< fri5; break; case 2: addItemList << fri1 << fri2; removeItemList << fri3 << fri4 << fri5; break; case 3: addItemList << fri1 << fri2 << fri3; removeItemList << fri4 << fri5; break; case 4: addItemList << fri1 << fri2 << fri3 << fri4; removeItemList << fri5; break; case 5: addItemList << fri1 << fri2 << fri3 << fri4 << fri5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::saturday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << sat1 << sat2 << sat3 << sat4 << sat5; break; case 1: addItemList << sat1; removeItemList << sat2 << sat3 << sat4<< sat5; break; case 2: addItemList << sat1 << sat2; removeItemList << sat3 << sat4 << sat5; break; case 3: addItemList << sat1 << sat2 << sat3; removeItemList << sat4 << sat5; break; case 4: addItemList << sat1 << sat2 << sat3 << sat4; removeItemList << sat5; break; case 5: addItemList << sat1 << sat2 << sat3 << sat4 << sat5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::sunday_addTimeEditAndActionBox(int i){ QList removeItemList; QList addItemList; switch(i){ case 0: removeItemList << sun1 << sun2 << sun3 << sun4 << sun5; break; case 1: addItemList << sun1; removeItemList << sun2 << sun3 << sun4<< sun5; break; case 2: addItemList << sun1 << sun2; removeItemList << sun3 << sun4 << sun5; break; case 3: addItemList << sun1 << sun2 << sun3; removeItemList << sun4 << sun5; break; case 4: addItemList << sun1 << sun2 << sun3 << sun4; removeItemList << sun5; break; case 5: addItemList << sun1 << sun2 << sun3 << sun4 << sun5; break; default:; } foreach(WeekDayItem *item, addItemList){ item->setVisible(true); item->setEnabled(true); } foreach(WeekDayItem *item, removeItemList){ item->setVisible(false); item->setEnabled(false); } } void Calendar::saveToConfFile(){ if(settings->isWritable()){ settings->setValue("Calendar/size",size()); settings->setValue("Calendar_or_weekly",tabWidget->currentIndex()); settings->setValue("Weekly_is_set",weekly->isChecked()); settings->setValue("Monday/number_of_times",mon->spin->value()); settings->setValue("Monday/time_1",mon1->timeEdit->time().toString()); settings->setValue("Monday/time_2",mon2->timeEdit->time().toString()); settings->setValue("Monday/time_3",mon3->timeEdit->time().toString()); settings->setValue("Monday/time_4",mon4->timeEdit->time().toString()); settings->setValue("Monday/time_5",mon5->timeEdit->time().toString()); settings->setValue("Monday/method_1",mon1->comboBox->currentIndex()); settings->setValue("Monday/method_2",mon2->comboBox->currentIndex()); settings->setValue("Monday/method_3",mon3->comboBox->currentIndex()); settings->setValue("Monday/method_4",mon4->comboBox->currentIndex()); settings->setValue("Monday/method_5",mon5->comboBox->currentIndex()); settings->setValue("Tuesday/number_of_times",tue->spin->value()); settings->setValue("Tuesday/time_1",tue1->timeEdit->time().toString()); settings->setValue("Tuesday/time_2",tue2->timeEdit->time().toString()); settings->setValue("Tuesday/time_3",tue3->timeEdit->time().toString()); settings->setValue("Tuesday/time_4",tue4->timeEdit->time().toString()); settings->setValue("Tuesday/time_5",tue5->timeEdit->time().toString()); settings->setValue("Tuesday/method_1",tue1->comboBox->currentIndex()); settings->setValue("Tuesday/method_2",tue2->comboBox->currentIndex()); settings->setValue("Tuesday/method_3",tue3->comboBox->currentIndex()); settings->setValue("Tuesday/method_4",tue4->comboBox->currentIndex()); settings->setValue("Tuesday/method_5",tue5->comboBox->currentIndex()); settings->setValue("Wednesday/number_of_times",wed->spin->value()); settings->setValue("Wednesday/time_1",wed1->timeEdit->time().toString()); settings->setValue("Wednesday/time_2",wed2->timeEdit->time().toString()); settings->setValue("Wednesday/time_3",wed3->timeEdit->time().toString()); settings->setValue("Wednesday/time_4",wed4->timeEdit->time().toString()); settings->setValue("Wednesday/time_5",wed5->timeEdit->time().toString()); settings->setValue("Wednesday/method_1",wed1->comboBox->currentIndex()); settings->setValue("Wednesday/method_2",wed2->comboBox->currentIndex()); settings->setValue("Wednesday/method_3",wed3->comboBox->currentIndex()); settings->setValue("Wednesday/method_4",wed4->comboBox->currentIndex()); settings->setValue("Wednesday/method_5",wed5->comboBox->currentIndex()); settings->setValue("Thursday/number_of_times",thu->spin->value()); settings->setValue("Thursday/time_1",thu1->timeEdit->time().toString()); settings->setValue("Thursday/time_2",thu2->timeEdit->time().toString()); settings->setValue("Thursday/time_3",thu3->timeEdit->time().toString()); settings->setValue("Thursday/time_4",thu4->timeEdit->time().toString()); settings->setValue("Thursday/time_5",thu5->timeEdit->time().toString()); settings->setValue("Thursday/method_1",thu1->comboBox->currentIndex()); settings->setValue("Thursday/method_2",thu2->comboBox->currentIndex()); settings->setValue("Thursday/method_3",thu3->comboBox->currentIndex()); settings->setValue("Thursday/method_4",thu4->comboBox->currentIndex()); settings->setValue("Thursday/method_5",thu5->comboBox->currentIndex()); settings->setValue("Friday/number_of_times",fri->spin->value()); settings->setValue("Friday/time_1",fri1->timeEdit->time().toString()); settings->setValue("Friday/time_2",fri2->timeEdit->time().toString()); settings->setValue("Friday/time_3",fri3->timeEdit->time().toString()); settings->setValue("Friday/time_4",fri4->timeEdit->time().toString()); settings->setValue("Friday/time_5",fri5->timeEdit->time().toString()); settings->setValue("Friday/method_1",fri1->comboBox->currentIndex()); settings->setValue("Friday/method_2",fri2->comboBox->currentIndex()); settings->setValue("Friday/method_3",fri3->comboBox->currentIndex()); settings->setValue("Friday/method_4",fri4->comboBox->currentIndex()); settings->setValue("Friday/method_5",fri5->comboBox->currentIndex()); settings->setValue("Saturday/number_of_times",sat->spin->value()); settings->setValue("Saturday/time_1",sat1->timeEdit->time().toString()); settings->setValue("Saturday/time_2",sat2->timeEdit->time().toString()); settings->setValue("Saturday/time_3",sat3->timeEdit->time().toString()); settings->setValue("Saturday/time_4",sat4->timeEdit->time().toString()); settings->setValue("Saturday/time_5",sat5->timeEdit->time().toString()); settings->setValue("Saturday/method_1",sat1->comboBox->currentIndex()); settings->setValue("Saturday/method_2",sat2->comboBox->currentIndex()); settings->setValue("Saturday/method_3",sat3->comboBox->currentIndex()); settings->setValue("Saturday/method_4",sat4->comboBox->currentIndex()); settings->setValue("Saturday/method_5",sat5->comboBox->currentIndex()); settings->setValue("Sunday/number_of_times",sun->spin->value()); settings->setValue("Sunday/time_1",sun1->timeEdit->time().toString()); settings->setValue("Sunday/time_2",sun2->timeEdit->time().toString()); settings->setValue("Sunday/time_3",sun3->timeEdit->time().toString()); settings->setValue("Sunday/time_4",sun4->timeEdit->time().toString()); settings->setValue("Sunday/time_5",sun5->timeEdit->time().toString()); settings->setValue("Sunday/method_1",sun1->comboBox->currentIndex()); settings->setValue("Sunday/method_2",sun2->comboBox->currentIndex()); settings->setValue("Sunday/method_3",sun3->comboBox->currentIndex()); settings->setValue("Sunday/method_4",sun4->comboBox->currentIndex()); settings->setValue("Sunday/method_5",sun5->comboBox->currentIndex()); } } void Calendar::loadSettings(){ resize(settings->value("MainWindow/size",QSize(325,360)).toSize()); tabWidget->setCurrentIndex(settings->value("Calendar_or_weekly",0).toInt()); weekly->setChecked(settings->value("Weekly_is_set", false).toBool()); if(!timeRunning) scrollAreaWidgetContents->setEnabled(weekly->isChecked()); mon->spin->setValue(settings->value("Monday/number_of_times",0).toInt()); mon1->timeEdit->setTime(QTime::fromString(settings->value("Monday/time_1","22:00:00").toString(), "hh:mm:ss")); mon2->timeEdit->setTime(QTime::fromString(settings->value("Monday/time_2","22:00:00").toString(), "hh:mm:ss")); mon3->timeEdit->setTime(QTime::fromString(settings->value("Monday/time_3","22:00:00").toString(), "hh:mm:ss")); mon4->timeEdit->setTime(QTime::fromString(settings->value("Monday/time_4","22:00:00").toString(), "hh:mm:ss")); mon5->timeEdit->setTime(QTime::fromString(settings->value("Monday/time_5","22:00:00").toString(), "hh:mm:ss")); mon1->comboBox->setCurrentIndex(settings->value("Monday/method_1",0).toInt()); mon2->comboBox->setCurrentIndex(settings->value("Monday/method_2",0).toInt()); mon3->comboBox->setCurrentIndex(settings->value("Monday/method_3",0).toInt()); mon4->comboBox->setCurrentIndex(settings->value("Monday/method_4",0).toInt()); mon5->comboBox->setCurrentIndex(settings->value("Monday/method_5",0).toInt()); tue->spin->setValue(settings->value("Tuesday/number_of_times",0).toInt()); tue1->timeEdit->setTime(QTime::fromString(settings->value("Tuesday/time_1","22:00:00").toString(), "hh:mm:ss")); tue2->timeEdit->setTime(QTime::fromString(settings->value("Tuesday/time_2","22:00:00").toString(), "hh:mm:ss")); tue3->timeEdit->setTime(QTime::fromString(settings->value("Tuesday/time_3","22:00:00").toString(), "hh:mm:ss")); tue4->timeEdit->setTime(QTime::fromString(settings->value("Tuesday/time_4","22:00:00").toString(), "hh:mm:ss")); tue5->timeEdit->setTime(QTime::fromString(settings->value("Tuesday/time_5","22:00:00").toString(), "hh:mm:ss")); tue1->comboBox->setCurrentIndex(settings->value("Tuesday/method_1",0).toInt()); tue2->comboBox->setCurrentIndex(settings->value("Tuesday/method_2",0).toInt()); tue3->comboBox->setCurrentIndex(settings->value("Tuesday/method_3",0).toInt()); tue4->comboBox->setCurrentIndex(settings->value("Tuesday/method_4",0).toInt()); tue5->comboBox->setCurrentIndex(settings->value("Tuesday/method_5",0).toInt()); wed->spin->setValue(settings->value("Wednesday/number_of_times",0).toInt()); wed1->timeEdit->setTime(QTime::fromString(settings->value("Wednesday/time_1","22:00:00").toString(), "hh:mm:ss")); wed2->timeEdit->setTime(QTime::fromString(settings->value("Wednesday/time_2","22:00:00").toString(), "hh:mm:ss")); wed3->timeEdit->setTime(QTime::fromString(settings->value("Wednesday/time_3","22:00:00").toString(), "hh:mm:ss")); wed4->timeEdit->setTime(QTime::fromString(settings->value("Wednesday/time_4","22:00:00").toString(), "hh:mm:ss")); wed5->timeEdit->setTime(QTime::fromString(settings->value("Wednesday/time_5","22:00:00").toString(), "hh:mm:ss")); wed1->comboBox->setCurrentIndex(settings->value("Wednesday/method_1",0).toInt()); wed2->comboBox->setCurrentIndex(settings->value("Wednesday/method_2",0).toInt()); wed3->comboBox->setCurrentIndex(settings->value("Wednesday/method_3",0).toInt()); wed4->comboBox->setCurrentIndex(settings->value("Wednesday/method_4",0).toInt()); wed5->comboBox->setCurrentIndex(settings->value("Wednesday/method_5",0).toInt()); thu->spin->setValue(settings->value("Thursday/number_of_times",0).toInt()); thu1->timeEdit->setTime(QTime::fromString(settings->value("Thursday/time_1","22:00:00").toString(), "hh:mm:ss")); thu2->timeEdit->setTime(QTime::fromString(settings->value("Thursday/time_2","22:00:00").toString(), "hh:mm:ss")); thu3->timeEdit->setTime(QTime::fromString(settings->value("Thursday/time_3","22:00:00").toString(), "hh:mm:ss")); thu4->timeEdit->setTime(QTime::fromString(settings->value("Thursday/time_4","22:00:00").toString(), "hh:mm:ss")); thu5->timeEdit->setTime(QTime::fromString(settings->value("Thursday/time_5","22:00:00").toString(), "hh:mm:ss")); thu1->comboBox->setCurrentIndex(settings->value("Thursday/method_1",0).toInt()); thu2->comboBox->setCurrentIndex(settings->value("Thursday/method_2",0).toInt()); thu3->comboBox->setCurrentIndex(settings->value("Thursday/method_3",0).toInt()); thu4->comboBox->setCurrentIndex(settings->value("Thursday/method_4",0).toInt()); thu5->comboBox->setCurrentIndex(settings->value("Thursday/method_5",0).toInt()); fri->spin->setValue(settings->value("Friday/number_of_times",0).toInt()); fri1->timeEdit->setTime(QTime::fromString(settings->value("Friday/time_1","22:00:00").toString(), "hh:mm:ss")); fri2->timeEdit->setTime(QTime::fromString(settings->value("Friday/time_2","22:00:00").toString(), "hh:mm:ss")); fri3->timeEdit->setTime(QTime::fromString(settings->value("Friday/time_3","22:00:00").toString(), "hh:mm:ss")); fri4->timeEdit->setTime(QTime::fromString(settings->value("Friday/time_4","22:00:00").toString(), "hh:mm:ss")); fri5->timeEdit->setTime(QTime::fromString(settings->value("Friday/time_5","22:00:00").toString(), "hh:mm:ss")); fri1->comboBox->setCurrentIndex(settings->value("Friday/method_1",0).toInt()); fri2->comboBox->setCurrentIndex(settings->value("Friday/method_2",0).toInt()); fri3->comboBox->setCurrentIndex(settings->value("Friday/method_3",0).toInt()); fri4->comboBox->setCurrentIndex(settings->value("Friday/method_4",0).toInt()); fri5->comboBox->setCurrentIndex(settings->value("Friday/method_5",0).toInt()); sat->spin->setValue(settings->value("Saturday/number_of_times",0).toInt()); sat1->timeEdit->setTime(QTime::fromString(settings->value("Saturday/time_1","22:00:00").toString(), "hh:mm:ss")); sat2->timeEdit->setTime(QTime::fromString(settings->value("Saturday/time_2","22:00:00").toString(), "hh:mm:ss")); sat3->timeEdit->setTime(QTime::fromString(settings->value("Saturday/time_3","22:00:00").toString(), "hh:mm:ss")); sat4->timeEdit->setTime(QTime::fromString(settings->value("Saturday/time_4","22:00:00").toString(), "hh:mm:ss")); sat5->timeEdit->setTime(QTime::fromString(settings->value("Saturday/time_5","22:00:00").toString(), "hh:mm:ss")); sat1->comboBox->setCurrentIndex(settings->value("Saturday/method_1",0).toInt()); sat2->comboBox->setCurrentIndex(settings->value("Saturday/method_2",0).toInt()); sat3->comboBox->setCurrentIndex(settings->value("Saturday/method_3",0).toInt()); sat4->comboBox->setCurrentIndex(settings->value("Saturday/method_4",0).toInt()); sat5->comboBox->setCurrentIndex(settings->value("Saturday/method_5",0).toInt()); sun->spin->setValue(settings->value("Sunday/number_of_times",0).toInt()); sun1->timeEdit->setTime(QTime::fromString(settings->value("Sunday/time_1","22:00:00").toString(), "hh:mm:ss")); sun2->timeEdit->setTime(QTime::fromString(settings->value("Sunday/time_2","22:00:00").toString(), "hh:mm:ss")); sun3->timeEdit->setTime(QTime::fromString(settings->value("Sunday/time_3","22:00:00").toString(), "hh:mm:ss")); sun4->timeEdit->setTime(QTime::fromString(settings->value("Sunday/time_4","22:00:00").toString(), "hh:mm:ss")); sun5->timeEdit->setTime(QTime::fromString(settings->value("Sunday/time_5","22:00:00").toString(), "hh:mm:ss")); sun1->comboBox->setCurrentIndex(settings->value("Sunday/method_1",0).toInt()); sun2->comboBox->setCurrentIndex(settings->value("Sunday/method_2",0).toInt()); sun3->comboBox->setCurrentIndex(settings->value("Sunday/method_3",0).toInt()); sun4->comboBox->setCurrentIndex(settings->value("Sunday/method_4",0).toInt()); sun5->comboBox->setCurrentIndex(settings->value("Sunday/method_5",0).toInt()); } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/calendar.h000066400000000000000000000055071515201227200234600ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef CALENDAR_H #define CALENDAR_H #include "ui_calendar.h" #include #include #include "weekday.h" #include "weekdayitem.h" class Calendar : public QDialog, public Ui::Calendar { Q_OBJECT public: Calendar(QWidget *parent = 0); ~Calendar(); bool timeRunning; QDateTime setCalendarDate, calendarDate, setWeeklyDate; bool getClosed(); WeekDay *mon, *tue, *wed, *thu, *fri, *sat, *sun; WeekDayItem *mon1, *mon2, *mon3, *mon4, *mon5, *tue1, *tue2, *tue3, *tue4, *tue5, *wed1, *wed2, *wed3, *wed4, *wed5, *thu1, *thu2, *thu3, *thu4, *thu5, *fri1, *fri2, *fri3, *fri4, *fri5, *sat1, *sat2, *sat3, *sat4, *sat5, *sun1, *sun2, *sun3, *sun4, *sun5; private: QVBoxLayout *scrollArea_layout; bool isClosed; QList *mondayItems; QList *tuesdayItems; QList *wednesdayItems; QList *thursdayItems; QList *fridayItems; QList *saturdayItems; QList *sundayItems; QSettings *settings; QString file; private slots: void getDate(QDate date); void getSortedAndActivatedDays(); void getNearestTime(QList calculatedDay); QList getSortedTimes(); void loadSettings(); void saveToConfFile(); void monday_addTimeEditAndActionBox(int i); void tuesday_addTimeEditAndActionBox(int i); void wednesday_addTimeEditAndActionBox(int i); void thursday_addTimeEditAndActionBox(int i); void friday_addTimeEditAndActionBox(int i); void saturday_addTimeEditAndActionBox(int i); void sunday_addTimeEditAndActionBox(int i); public slots: void setDate(); signals: void aDateWasSet(); void starting(); void finishing(); protected: virtual void showEvent(QShowEvent* show_calendar); virtual void closeEvent(QCloseEvent* close_calendar); }; #endif //CALENDAR_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ch_passwd.cpp000066400000000000000000000055041515201227200242120ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "ch_passwd.h" #include #include ChangePassword::ChangePassword(QWidget *parent): QDialog(parent){ setupUi(this); setWindowFlags(Qt::Window); //always in front settings = new QSettings(this); if(settings->contains("Password")){ oldPasswd->setEnabled(true); oldL->setEnabled(true); } msgBox1 = new QMessageBox(this); msgBox1->setWindowTitle("Error"); msgBox1->setIcon(QMessageBox::Warning); msgBox1->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); msgBox1->setInformativeText(tr("The current password is not correct!")); msgBox2 = new QMessageBox(this); msgBox2->setWindowTitle("Error"); msgBox2->setIcon(QMessageBox::Warning); msgBox2->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); msgBox2->setInformativeText(tr("The retyped password doesn't match!")); connect(buttonBox, SIGNAL(accepted()), this, SLOT(checkOldPW())); } ChangePassword::~ChangePassword(){ delete settings; } void ChangePassword::checkOldPW(){ if(settings->contains("Password")){ if(settings->value("Password").toByteArray() == QCryptographicHash::hash(oldPasswd->text().toUtf8(), QCryptographicHash::Sha1)) checkNewPW(); else msgBox1->exec(); } else checkNewPW(); } void ChangePassword::checkNewPW(){ if(newPasswd->text() == retypedNewPasswd->text()){ savePW(); accept(); } else msgBox2->exec(); } void ChangePassword::savePW(){ settings->setValue("Password", QCryptographicHash::hash(retypedNewPasswd->text().toUtf8(), QCryptographicHash::Sha1)); updatePasswordGui(); if(settings->contains("Password")){ oldPasswd->setEnabled(true); oldL->setEnabled(true); } oldPasswd->clear(); newPasswd->clear(); retypedNewPasswd->clear(); } void ChangePassword::closeEvent(QCloseEvent* close_ch_pw){ oldPasswd->clear(); newPasswd->clear(); retypedNewPasswd->clear(); QDialog::closeEvent(close_ch_pw); } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ch_passwd.h000066400000000000000000000025541515201227200236610ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef CH_PASSWD_H #define CH_PASSWD_H #include "ui_ch_passwd.h" #include #include class ChangePassword : public QDialog, public Ui::ChangePassword { Q_OBJECT public: ChangePassword(QWidget *parent = 0); ~ChangePassword(); signals: void updatePasswordGui(); private: QSettings *settings; QString file; QMessageBox *msgBox1, *msgBox2; private slots: void checkOldPW(); void checkNewPW(); void savePW(); protected: virtual void closeEvent(QCloseEvent* close_ch_pw); }; #endif //CH_PASSWD_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/editor.cpp000066400000000000000000000062511515201227200235250ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "editor.h" #include #include #include Editor::Editor(QWidget *parent): QDialog(parent){ setupUi(this); isClosed = true; setWindowFlags(Qt::Window); //always in front confFile = new QFile(QSettings().fileName()); plainTextEdit->setFocus(); connect(buttonBox->button(QDialogButtonBox::Ok), SIGNAL(clicked(bool)), this, SLOT(saveChanges())); connect(buttonBox->button(QDialogButtonBox::Ok), SIGNAL(clicked(bool)), this, SLOT(close())); connect(buttonBox->button(QDialogButtonBox::Save), SIGNAL(clicked(bool)), this, SLOT(saveChanges())); connect(buttonBox->button(QDialogButtonBox::Cancel), SIGNAL(clicked(bool)), this, SLOT(close())); connect(this, SIGNAL(rejected()), this, SLOT(close())); } Editor::~Editor(){ delete confFile; } void Editor::showEvent(QShowEvent* show_editor){ isClosed = false; if(!confFile->open(QIODevice::ReadWrite | QIODevice::Text)){ QTextStream myOutput(stdout); myOutput << "E: Can not open qshutdown settings file!" << Qt::endl; return; } QString text; //reading content of qshutdown settings QTextStream in(confFile); text = in.readAll(); plainTextEdit->setPlainText(text); confFile->close(); starting(); QDialog::showEvent(show_editor); } void Editor::closeEvent(QCloseEvent* close_editor){ isClosed = true; finishing(); QDialog::closeEvent(close_editor); } bool Editor::getClosed(){ return isClosed; } bool Editor::getLockAll(){ QSettings settings(this); return settings.value("Lock_all").toBool(); } void Editor::keyPressEvent(QKeyEvent *kEvent){ if((kEvent->modifiers() == Qt::ControlModifier) && (kEvent->key() == Qt::Key_S)) saveChanges(); if(((kEvent->modifiers() == Qt::ControlModifier) && (kEvent->key() == Qt::Key_Q)) || (kEvent->key() == Qt::Key_Escape)) reject(); } void Editor::saveChanges(){ if(!confFile->open(QIODevice::ReadWrite | QIODevice::Text)){ QTextStream myOutput(stdout); myOutput << "E: Can not open qshutdown settings file!"; return; } QString newContent; //writing content of editor to qshutdown settings newContent = plainTextEdit->toPlainText(); QTextStream out(confFile); out << newContent; confFile->close(); saved(); //Signal that changes have been saved } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/editor.h000066400000000000000000000027121515201227200231700ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef EDITOR_H #define EDITOR_H #include "ui_editor.h" #include #include class Editor : public QDialog, public Ui::Editor { Q_OBJECT public: Editor(QWidget *parent = 0); ~Editor(); bool getClosed(); signals: void saved(); void starting(); void finishing(); private: QFile *confFile; QSettings *settings; bool isClosed; private slots: void saveChanges(); public slots: bool getLockAll(); protected: virtual void showEvent(QShowEvent* show_editor); virtual void closeEvent(QCloseEvent* close_editor); void keyPressEvent(QKeyEvent* kEvent); }; #endif //EDITOR_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/gui.cpp000066400000000000000000001172651515201227200230330ustar00rootroot00000000000000/* qshutdown, a program to shutdown the shutdown/reboot/suspend/hibernate * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "gui.h" #include "preferences.h" #include "info.h" #include "calendar.h" #include "passwd.h" #include "editor.h" #include "about.h" #include "power.h" #include #include #include Gui::Gui(){ setupUi(this); //init lcd lcd->display("----"); //Seconds won't be recognized, thus removing them (just in case). QString timeEditFormat; timeEditFormat = timeEdit->displayFormat(); if(timeEditFormat.contains(":ss")) timeEditFormat.replace(QString(":ss"), QString("")); if(timeEditFormat.contains(":s")) timeEditFormat.replace(QString(":s"), QString("")); timeEdit->setDisplayFormat(timeEditFormat); timeRunning = false; aWeeklyTimeWasSet = false; logFileSize = 1.5; oldComboBoxIndex = comboBox->currentIndex(); oldTime = timeEdit->time(); localDatetime = QDateTime::currentDateTime(); elapsedTime.start(); //Preferences pref = new Preferences(this); //CalendarBox cal = new Calendar(this); //InfoMessageBox infoBox = new Info(this); //ChangePassword checkPassword = new PassWord(this); //Editor editor = new Editor(this); //Versioning QFile versionFile(":version"); versionFile.open(QIODevice::ReadOnly | QIODevice::Text); QTextStream in(&versionFile); statusBar()->showMessage(tr("Version ") + in.readLine(),15000); versionFile.close(); /* //Parental lock label for the statusbar parentalLockL = new QLabel(tr("locked")); parentalLockL->setFrameShape(QFrame::Box); parentalLockL->setFrameShadow(QFrame::Sunken); parentalLockL->setToolTip(tr("Parental lock is activated")); //Custom mode label for the statusbar customL = new QLabel(tr("custom")); customL->setFrameShape(QFrame::Box); customL->setFrameShadow(QFrame::Sunken); customL->setToolTip(tr("Using user defined command"));*/ //About about = new About(this); //TrayIcon icon = QPixmap(":red_glasses"); TIcon = new QSystemTrayIcon(this); TIcon->setIcon(icon); //TrayIconContextMenu menu = new QMenu(this); minimize_restore_action = new QAction(tr("&Minimize"),this); reset_action = new QAction(tr("R&eset"),this); quit_action = new QAction(tr("&Quit"),this); info_action = new QAction(tr("&Info"),this); log_action = new QAction(tr("&Logfile"),this); log_action->setCheckable(true); pref_action = new QAction(tr("&Preferences"),this); power_actions = new QActionGroup(this); shutdown_action = new QAction(tr("&Shutdown"),this); shutdown_action->setCheckable(true); reboot_action = new QAction(tr("&Reboot"),this); reboot_action->setCheckable(true); suspend_action = new QAction(tr("S&uspend"),this); suspend_action->setCheckable(true); hibernate_action = new QAction(tr("&Hibernate"),this); hibernate_action->setCheckable(true); power_actions->addAction(shutdown_action); power_actions->addAction(reboot_action); power_actions->addAction(suspend_action); power_actions->addAction(hibernate_action); menu->addAction(info_action); menu->addAction(reset_action); menu->addAction(pref_action); menu->addAction(log_action); menu->addSeparator(); menu->addAction(shutdown_action); menu->addAction(reboot_action); menu->addAction(suspend_action); menu->addAction(hibernate_action); reset_action->setEnabled(false); menu->addSeparator(); menu->addAction(minimize_restore_action); menu->addAction(quit_action); TIcon->setContextMenu(menu); //setting contextmenu for the systray //PushButton Minimize minim = new QPushButton(this); //to minimize minim->setText(tr("&Minimize!")); minim->setHidden(true); //not yet visible QSizePolicy sizePolicy6(QSizePolicy::Expanding, QSizePolicy::Preferred); sizePolicy6.setHorizontalStretch(0); sizePolicy6.setVerticalStretch(1); sizePolicy6.setHeightForWidth(ok->sizePolicy().hasHeightForWidth()); minim->setSizePolicy(sizePolicy6); gridLayout5->addWidget(minim,0,1,3,1); //Fonts font1 = new QFont; font1->setBold(true); font2 = new QFont; font2->setBold(true); font3 = new QFont; //Timer timer = new QTimer(this); //for updating countdown display and check if time is over ti = new QTimer(this); //for displaying the window, till the OK-Button is clicked ti->start(30000); //gives every 30 seconds a timeout()-signal //Connect signals with slots (actions with funktions) connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(power_action(int))); connect(ti, SIGNAL(timeout()), this, SLOT(showW())); //set window state for ti connect(ok, SIGNAL(clicked(bool)), this, SLOT(set())); //starts timers and time calculations connect(timer, SIGNAL(timeout()), this, SLOT(updateT())); //runs updateT() every second connect(now, SIGNAL(clicked(bool)), this, SLOT(finished_()));//closes the program & starts the shutdown immediately connect(minim, SIGNAL(clicked(bool)), this, SLOT(showMinimized())); //minimizes window connect(TIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(iconActivated(QSystemTrayIcon::ActivationReason))); //handles systray-symbol connect(power_actions, SIGNAL(triggered(QAction*)), this, SLOT(power(QAction*))); connect(reset_action, SIGNAL(triggered()), this, SLOT(reset())); connect(action_Reset, SIGNAL(triggered()), this, SLOT(reset())); connect(qApp, SIGNAL(aboutToQuit()), this, SLOT(beforeQuit())); //save window size / logs and unregister qshutdown connect(minimize_restore_action, SIGNAL(triggered()), this, SLOT(tray_actions())); connect(quit_action, SIGNAL(triggered()), qApp, SLOT(quit())); //contextmenu "Quit" for the systray quits Programm connect(actionQuit, SIGNAL(triggered()), qApp, SLOT(quit())); connect(action_Configure, SIGNAL(triggered()), pref, SLOT(show())); connect(pref_action, SIGNAL(triggered()), pref, SLOT(show())); connect(pref, SIGNAL(starting()), ti, SLOT(stop())); connect(pref, SIGNAL(finishing()), this, SLOT(warnings_on())); //start the QTimer ti if timeRunning == false connect(pref, SIGNAL(changeFont()), this, SLOT(getFonts())); connect(pref, SIGNAL(editConf()), checkPassword, SLOT(show())); //ask for password when button was pressed at preferences connect(pref, SIGNAL(removeTrayIcon(bool)), this, SLOT(hideTrayIcon(bool))); connect(action_Info, SIGNAL(triggered()), this, SLOT(setInfoText())); connect(action_Info, SIGNAL(triggered()), infoBox, SLOT(show())); connect(info_action, SIGNAL(triggered()), this, SLOT(setInfoText())); connect(info_action, SIGNAL(triggered()), infoBox, SLOT(show())); connect(infoBox, SIGNAL(starting()), ti, SLOT(stop())); connect(infoBox, SIGNAL(finishing()), this, SLOT(warnings_on())); connect(toolButton, SIGNAL(clicked(bool)), this, SLOT(showCalendarBox())); connect(cal, SIGNAL(aDateWasSet()), this, SLOT(setDate())); connect(cal, SIGNAL(starting()), ti, SLOT(stop())); connect(cal, SIGNAL(finishing()), this, SLOT(warnings_on())); connect(checkPassword, SIGNAL(success()), this, SLOT(showEditor())); //if correct password was entered open editor connect(checkPassword, SIGNAL(starting()), ti, SLOT(stop())); connect(checkPassword, SIGNAL(starting()), pref, SLOT(accept())); connect(checkPassword, SIGNAL(finishing()), this, SLOT(warnings_on())); connect(editor, SIGNAL(saved()), this, SLOT(updateLock())); //update to see if Lock_all was (de)activated connect(editor, SIGNAL(saved()), pref, SLOT(loadSettings())); connect(editor, SIGNAL(starting()), ti, SLOT(stop())); connect(editor, SIGNAL(finishing()), this, SLOT(warnings_on())); connect(editor, SIGNAL(finishing()), pref, SLOT(loadSettings())); connect(actionLog_file, SIGNAL(toggled(bool)), log_action, SLOT(setChecked(bool))); connect(log_action, SIGNAL(toggled(bool)), actionLog_file, SLOT(setChecked(bool))); connect(action_About, SIGNAL(triggered()), about, SLOT(show())); connect(actionAbout_Qt, SIGNAL(triggered()), qApp, SLOT(aboutQt())); connect(actionKeep_window_proportions, SIGNAL(toggled(bool)), this, SLOT(staticProportions(bool))); connect(timeEdit, SIGNAL(timeChanged(QTime)), this, SLOT(saveOldTime(QTime))); connect(comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(saveOldComboBoxIndex(int))); } Gui::~Gui(){ delete font1; delete font2; delete font3; // delete parentalLockL; // delete customL; } void Gui::showEvent(QShowEvent* show_window){ minimize_restore_action->setText(tr("&Minimize")); QMainWindow::showEvent(show_window); } void Gui::tray_actions(){ if(isMinimized() || isHidden()) //in case that the window is minimized or hidden showNormal(); else hide(); } void Gui::setInfoText(){ infoBox->setHtml(information); } void Gui::warnings_on(){ if(pref->getClosed() && cal->getClosed() && infoBox->getClosed() && checkPassword->getClosed() && editor->getClosed() && !timeRunning) ti->start(); } void Gui::saveOldTime(QTime time){ if(!aWeeklyTimeWasSet) oldTime = time; } void Gui::saveOldComboBoxIndex(int i){ if(!aWeeklyTimeWasSet) oldComboBoxIndex = i; } void Gui::setDate(){ if(!cal->weekly->isChecked() && !timeRunning) { if(cal->setCalendarDate.date() != QDate()) toolButton->setText(QLocale::system().toString(cal->setCalendarDate.date(),QLocale::ShortFormat)); } else if(!cal->setWeeklyDate.time().isNull() && !timeRunning){ toolButton->setText(cal->setWeeklyDate.date().toString("ddd")); aWeeklyTimeWasSet = true; timeEdit->setTime(cal->setWeeklyDate.time()); QDateTime myTime = cal->setWeeklyDate; //just for convenience QList item; // get the objects of the matching day if(myTime.date().dayOfWeek() == Qt::Monday) item << cal->mon1 << cal->mon2 << cal->mon3 << cal->mon4 << cal->mon5; else if(myTime.date().dayOfWeek() == Qt::Tuesday) item << cal->tue1 << cal->tue2 << cal->tue3 << cal->tue4 << cal->tue5; else if(myTime.date().dayOfWeek() == Qt::Wednesday) item << cal->wed1 << cal->wed2 << cal->wed3 << cal->wed4 << cal->wed5; else if(myTime.date().dayOfWeek() == Qt::Thursday) item << cal->thu1 << cal->thu2 << cal->thu3 << cal->thu4 << cal->thu5; else if(myTime.date().dayOfWeek() == Qt::Friday) item << cal->fri1 << cal->fri2 << cal->fri3 << cal->fri4 << cal->fri5; else if(myTime.date().dayOfWeek() == Qt::Saturday) item << cal->sat1 << cal->sat2 << cal->sat3 << cal->sat4 << cal->sat5; else if(myTime.date().dayOfWeek() == Qt::Sunday) item << cal->sun1 << cal->sun2 << cal->sun3 << cal->sun4 << cal->sun5; while(item[0]->timeEdit->time() != myTime.time()) //get the correct time from the object item.removeAt(0); //just leave the matching time if(item.count() != 0) comboBox->setCurrentIndex(item[0]->comboBox->currentIndex()); radio1->setChecked(true); radio2->setDisabled(true); radio1->setDisabled(true); timeEdit->setDisabled(true); comboBox->setDisabled(true); } if((cal->setCalendarDate == QDateTime()) && (cal->setWeeklyDate == QDateTime())) if(!timeRunning){ timeEdit->setTime(oldTime); comboBox->setCurrentIndex(oldComboBoxIndex); aWeeklyTimeWasSet = false; radio2->setDisabled(false); radio1->setDisabled(false); if(radio1->isChecked()) timeEdit->setDisabled(false); else spin->setDisabled(false); comboBox->setDisabled(false); toolButton->setText(tr("Calendar")); } } void Gui::center(){ #if QT_VERSION >= 0x060000 move(QWidget::screen()->geometry().center() - rect().center()); #else move(QApplication::desktop()->rect().center() - rect().center()); #endif } void Gui::iconActivated(QSystemTrayIcon::ActivationReason reason){ if(reason == QSystemTrayIcon::Trigger) tray_actions(); //hide or show } void Gui::power_action(int action){ QList actions = power_actions->actions(); actions[action]->setChecked(true); switch(action){ case 0: targetTime->setText(tr("Shutdown-time:")); minutes->setText(tr("Minutes till shutdown:")); break; case 1: targetTime->setText(tr("Reboot-time:")); minutes->setText(tr("Minutes till reboot:")); break; case 2: targetTime->setText(tr("Suspend-time:")); minutes->setText(tr("Minutes till suspend:")); break; case 3: targetTime->setText(tr("Hibernate-time:")); minutes->setText(tr("Minutes till hibernate:")); break; default:; } } void Gui::power(QAction *action){ if(action == shutdown_action) comboBox->setCurrentIndex(0); if(action == reboot_action) comboBox->setCurrentIndex(1); if(action == suspend_action) comboBox->setCurrentIndex(2); if(action == hibernate_action) comboBox->setCurrentIndex(3); } void Gui::showW(){ if(pref->showEndOfCountdown){ //warnings is checked if(timeRunning){ TIcon->showMessage(tr("Warning"), tr("Action imminent!"), QPixmap(":warn"), 5000); showRunningProgram(); } } if(pref->showNotRunning && !timeRunning){ TIcon->showMessage(tr("Information"), tr("Countdown is not running!"), QPixmap(":info"), 5000); } } void Gui::showRunningProgram(){ center(); if(isMinimized() || isHidden()) showNormal(); else activateWindow(); } void Gui::keyPressEvent(QKeyEvent *kEvent){ if(kEvent->modifiers() == Qt::ControlModifier){ if(!timeRunning && !editor->getLockAll()){ if(kEvent->key() == Qt::Key_S){ shutdown_action->setChecked(true); comboBox->setCurrentIndex(0); } if(kEvent->key() == Qt::Key_R){ reboot_action->setChecked(true); comboBox->setCurrentIndex(1); } if(kEvent->key() == Qt::Key_U){ suspend_action->setChecked(true); comboBox->setCurrentIndex(2); } if(kEvent->key() == Qt::Key_H){ hibernate_action->setChecked(true); comboBox->setCurrentIndex(3); } } if(!editor->getLockAll()){ if(kEvent->key() == Qt::Key_E && timeRunning) reset(); if(kEvent->key() == Qt::Key_L){ if(log_action->isChecked()){ log_action->setChecked(false); actionLog_file->setChecked(false); } else{ log_action->setChecked(true); actionLog_file->setChecked(true); } } if(kEvent->key() == Qt::Key_Q) qApp->quit(); } if(kEvent->key() == Qt::Key_I){ setInfoText(); infoBox->show(); } if(kEvent->key() == Qt::Key_P) pref->show(); } if(kEvent->modifiers() == Qt::ShiftModifier){ if(kEvent->key() == Qt::Key_E) checkPassword->show(); //ask for password to edit qshutdown settings } } void Gui::updateT(){ QDateTime myDate = QDateTime::currentDateTimeUtc(); QString tip1, tip2; if(shutdown_action->isChecked()) tip1 = (tr("shutdown in ")); else if(reboot_action->isChecked()) tip1 = (tr("reboot in ")); else if(suspend_action->isChecked()) tip1 = (tr("suspend in ")); else if(hibernate_action->isChecked()) tip1 = (tr("hibernate in ")); int dayDiff = myDate.date().daysTo(futureDateTime.date()); if(dayDiff < 0){ //reset if targeted date is already in the past. reset(); return; } //end else if(dayDiff > 1){ //if the date difference between today and the selected day //in the calendar is greater than one //if more than one year if(dayDiff > myDate.date().daysInYear()){ tip2 = (QString::number(dayDiff/myDate.date().daysInYear()) + " " + tr("years")); lcdL->setText(tr("years")); lcd->setDigitCount(4); lcd->display((double)dayDiff/myDate.date().daysInYear()); } //if more than one month else if(dayDiff > myDate.date().daysInMonth() && dayDiff <= myDate.date().daysInYear()){ tip2 = (QString::number(dayDiff/myDate.date().daysInMonth()) + " " + tr("months")); lcdL->setText(tr("months")); if((double)dayDiff/myDate.date().daysInMonth() >= 10) lcd->setDigitCount(4); else lcd->setDigitCount(3); lcd->display((double)dayDiff/myDate.date().daysInMonth()); } //if less than days in Month else if(dayDiff <= myDate.date().daysInMonth()){ tip2 = (QString::number(dayDiff) + " " + tr("days")); lcdL->setText(tr("days")); if((double)dayDiff >= 10) lcd->setDigitCount(4); else lcd->setDigitCount(3); lcd->display((double)dayDiff); } } //end of year/month else if(dayDiff == 1){ //if there is one more day to go if(!Time()) return; if(i>=86400){ //if one day and some time to go tip2 = (">= 1 " + tr("day")); lcd->setDigitCount(3); lcd->display(bigI/86400); if(lcd->value() > 1.1) lcdL->setText(tr("days")); else lcdL->setText(tr("day")); } else if(i<86400 && i>3600){ //if there is less than one day, show hours tip2 = (QString::number(i/3600) + " " + tr("hours")); lcdL->setText(tr("hours")); if(bigI/3600 >= 10) lcd->setDigitCount(4); else lcd->setDigitCount(3); lcd->display(bigI/3600); } else if(i<=3600 && i>60){ //if less than one hour tip2 = (QString::number(i/60) + " " + tr("minutes")); lcdL->setText(tr("minutes")); if(bigI/60 >= 10){ lcd->setDigitCount(4); lcd->display(bigI/60); } else lcd->setDigitCount(3); lcd->display(bigI/60); } else if(i<=60){ tip2 = (QString::number(i) + " " + tr("seconds")); lcdL->setText(tr("seconds")); lcd->display(i); } } else if(dayDiff == 0){ if(!Time()) return; if(pref->showEndOfCountdown && (((i<=100) && (i>95)) || ((i<=40) && (i>35))) && !ti->isActive()) ti->start(30000); if(i > 3600){ //Display hours and minutes tip2 = (QString::number(i/3600) + " " + tr("hours") + " + " + QString::number(i/60 - (i/3600)*60) + " " + tr("minutes")); lcdL->setText(tr("hours")); if(bigI/3600 >= 10) lcd->setDigitCount(4); else lcd->setDigitCount(3); lcd->display(bigI/3600); } else if(i<=3600 && i>=60){ //Display only minutes tip2 = (QString::number(i/60) + " " + tr("minutes")); lcdL->setText(tr("minutes")); if(bigI/60 >= 10) lcd->setDigitCount(4); else lcd->setDigitCount(3); lcd->display(bigI/60); } else if(i<=60 && i > 0){ //Display only seconds tip2 = (QString::number(i) + " " + tr("seconds")); lcdL->setText(tr("seconds")); lcd->display(i); } //this will ensure that the shutdown-type will be executed in case a few seconds were skipped else if((i<=0) && !(i<-n)) finished_(); //execute shutdown-type else reset(); } setWindowTitle(tip1 + tip2); TIcon->setToolTip(tip1 + tip2); } void Gui::set(){ TIcon->setIcon(QPixmap(":running")); QDateTime localDT = QDateTime::currentDateTime(); QDateTime localFutureDateTime = localDT; //initializing timeRunning = true; cal->timeRunning = true; ti->stop(); bool noCalendarDate = !cal->setCalendarDate.isValid(); bool noWeeklyDate = !cal->setWeeklyDate.isValid(); if(!noCalendarDate) localFutureDateTime = cal->setCalendarDate; if(!noWeeklyDate) localFutureDateTime = cal->setWeeklyDate; if(noWeeklyDate){ localFutureDateTime.setTime(localDT.time()); if(radio2->isChecked()) //if minute-countdown localFutureDateTime = localFutureDateTime.addSecs(spin->value()*60); else if(radio1->isChecked()){ //if timeEdit if(QDateTime(localFutureDateTime.date(),timeEdit->time(), Qt::LocalTime) > localDT) //set time is greater than current time localFutureDateTime = QDateTime(localFutureDateTime.date(),timeEdit->time(),Qt::LocalTime); else if(noCalendarDate && (timeEdit->time() <= localDT.time())) localFutureDateTime = QDateTime(localFutureDateTime.date().addDays(1),timeEdit->time(),Qt::LocalTime); //add 1 day } } futureDateTime = localFutureDateTime.toUTC(); //convert to UTC time in order to avoid calculating with local times updateT(); //Just updating time/interface for immediate display of remaining time. timer->start(1000); //Update time/interface every second if(lock->isChecked() || editor->getLockAll()){ //when OK-button is clicked and lock is checked QList list; list << spin << radio1 << radio2 << lock << timeEdit << comboBox << targetTime << minutes << pref->tab2 << cal->weekly << cal->scrollAreaWidgetContents; foreach(QWidget * ptr, list) ptr->setDisabled(true); power_actions->setDisabled(true); ok->hide(); minim->show(); minim->setFocus(); minim->setAutoDefault(true); //minimize-button will accept the return key } if(!editor->getLockAll()){ reset_action->setEnabled(true); action_Reset->setEnabled(true); } /* if((comboBox->currentIndex() == 0 && pref->shutdownM->currentIndex() == 6) || (comboBox->currentIndex() == 1 && pref->rebootM->currentIndex() == 6) || (comboBox->currentIndex() == 2 && pref->suspendM->currentIndex() == 5) || (comboBox->currentIndex() == 3 && pref->hibernateM->currentIndex() == 5)){ if(!customL->isVisible()) customL->show(); statusBar()->addPermanentWidget(customL); } else statusBar()->removeWidget(customL);*/ } bool Gui::Time(){ QDateTime futureDateTime10s = futureDateTime.addSecs(n); //adding n (10 seconds) in case of hardware delay. if(QDateTime::currentDateTimeUtc() > futureDateTime10s){ //if targeted time for action is //already over 10 seconds in the past. reset(); return false; } else{ i = QDateTime::currentDateTimeUtc().secsTo(futureDateTime); //the difference of the localTime and the future time bigI = i; //for more precise display with LCD return true; } } void Gui::saveLog(){ QSettings settings(this); settings.setValue("MainWindow/size",size()); settings.setValue("MainWindow/keep_proportions",actionKeep_window_proportions->isChecked()); if(log_action->isChecked()){ //if logfile is set in the icon contextmenu QString path = QDir().toNativeSeparators( QStandardPaths::standardLocations( #if QT_VERSION >= 0x060000 QStandardPaths::AppDataLocation).first()); #else QStandardPaths::DataLocation).first()); #endif if(!QDir(path).exists()) QDir().mkpath(path); QFile logfile(QDir().toNativeSeparators(path + QDir::separator() + "log.txt")); if(!logfile.open(QIODevice::ReadWrite | QIODevice::Text)){ QTextStream myOutput; myOutput << "E: Can not open log.txt!" << Qt::endl; return; } /******* writing log to log.txt *******/ QTextStream out(&logfile); while(!logfile.atEnd()) out.readLine(); out << "[" << localDatetime.toString("yyyy.MM.dd hh:mm") << "] " << 1/(60000.0/elapsedTime.elapsed()) << " minutes uptime\n"; logfile.close(); /******* if log.txt is bigger than set in preferences, delete first line *******/ bool isBigger; if(logfile.size()>logFileSize*1000) isBigger = true; else isBigger = false; while(isBigger){ logfile.open(QIODevice::ReadWrite | QIODevice::Text); QTextStream out(&logfile); out.readLine(); QString content = out.readAll(); logfile.resize(0); out << content; logfile.close(); if(logfile.size()<=logFileSize*1000) isBigger = false; } } } void Gui::saveLast(){ QSettings settings(this); if(settings.value("MainWindow/remember_last", false).toBool()){ settings.setValue("LastSetting/time_hour", timeEdit->time().hour()); settings.setValue("LastSetting/time_minute", timeEdit->time().minute()); settings.setValue("LastSetting/countdown_minutes", spin->value()); settings.setValue("LastSetting/target_time", radio1->isChecked()); settings.setValue("LastSetting/countdown", radio2->isChecked()); settings.setValue("LastSetting/lock", lock->isChecked()); settings.setValue("LastSetting/action", comboBox->currentIndex()); } } void Gui::finished_(){ saveLast(); if(!pref->quitAfterCountdown->isChecked()) reset(); switch(comboBox->currentIndex()){ case 0: //shutdown switch(pref->shutdownM->currentIndex()){ //shutdown method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::kde = true; break; case 4: Power::hal_ = true; break; case 5: Power::consolekit = true; break; case 6: Power::sudo = true; break; case 7: Power::user = true; Power::myShutdown = pref->myShutdown; break; default:; } saveLog(); Power::shutdown(); break; case 1: //reboot switch(pref->rebootM->currentIndex()){ //reboot method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::kde = true; break; case 4: Power::hal_ = true; break; case 5: Power::consolekit = true; break; case 6: Power::sudo = true; break; case 7: Power::user = true; Power::myReboot = pref->myReboot; break; default:; } saveLog(); Power::reboot(); break; case 2: //sleep switch(pref->suspendM->currentIndex()){ //sleep method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::hal_ = true; break; case 4: Power::upower_ = true; break; case 5: Power::devicekit = true; break; case 6: Power::user = true; Power::mySuspend = pref->mySuspend; break; default:; } if(pref->lockMyScreen){ Power::lockMyScreen = true; } else Power::lockMyScreen = false; Power::suspend(); break; case 3: //hibernate switch(pref->hibernateM->currentIndex()){ //hibernate method settings case 0: Power::automatic = true; break; case 1: Power::login1 = true; break; case 2: Power::gnome = true; break; case 3: Power::hal_ = true; break; case 4: Power::upower_ = true; break; case 5: Power::devicekit = true; break; case 6: Power::user = true; Power::myHibernate = pref->myHibernate; break; default:; } if(pref->lockMyScreen){ Power::lockMyScreen = true; } else Power::lockMyScreen = false; Power::hibernate(); break; default:; } if(pref->quitAfterCountdown->isChecked()) qApp->quit(); } void Gui::hideEvent(QHideEvent* window_hide){ minimize_restore_action->setText(tr("Res&tore")); QMainWindow::hideEvent(window_hide); } void Gui::closeEvent(QCloseEvent* window_close){ if(!pref->quitOnCloseMain->isChecked() && pref->disableTray->isChecked()) showMinimized(); if(!pref->quitOnCloseMain->isChecked() && !pref->disableTray->isChecked()) hide(); if(pref->quitOnCloseMain->isChecked() && !editor->getLockAll()) qApp->quit(); QMainWindow::closeEvent(window_close); } void Gui::beforeQuit(){ saveLog(); saveLast(); #if defined(Q_OS_LINUX) QDBusConnection::sessionBus().unregisterObject(OBJECT_NAME, QDBusConnection::UnregisterNode); QDBusConnection::sessionBus().unregisterService(SERVICE_NAME); #endif //Q_OS_LINUX } void Gui::loadSettings(){ /***************** create file and it's entries *****************/ QSettings settings(this); if(!settings.isWritable()){ QTextStream myOutput; myOutput << "W: qshutdown settings is not writable!" << Qt::endl; } if(!settings.contains("Lock_all")) settings.setValue("Lock_all",false); if(!settings.contains("MainWindow/keep_proportions")) settings.setValue("MainWindow/keep_proportions",true); if(!settings.contains("MainWindow/remember_last")) settings.setValue("MainWindow/remember_last",false); pref->showNotRunning = settings.value("CheckBoxes/remind_not_running",true).toBool(); #if defined(Q_OS_LINUX) QFile autostartFile(QDir::homePath() + "/.config/autostart/qshutdown.desktop"); if(autostartFile.exists()) settings.setValue("Autostart",true); else settings.setValue("Autostart",false); #endif pref->autostartFile(); #if defined(Q_OS_WIN32) QString fonts = "Times New Roman"; int fontS1 = 13; int fontS2 = 18; int fontS3 = 11; #elif defined(Q_OS_MACOS) QString fonts = "San Francisco"; int fontS1 = 13; int fontS2 = 18; int fontS3 = 11; #else QString fonts = "DejaVu Sans"; int fontS1 = 11; int fontS2 = 15; int fontS3 = 9; #endif /***************** read files entries *****************/ if(settings.value("MainWindow/remember_last",false).toBool()){ timeEdit->setTime(QTime(settings.value("LastSetting/time_hour",22).toInt(),settings.value("LastSetting/time_minute",00).toInt())); spin->setValue(settings.value("LastSetting/countdown_minutes",60).toInt()); radio1->setChecked(settings.value("LastSetting/target_time",false).toBool()); radio2->setChecked(settings.value("LastSetting/countdown",true).toBool()); lock->setChecked(settings.value("LastSetting/lock",true).toBool()); comboBox->setCurrentIndex(settings.value("LastSetting/action",0).toInt()); } else{ timeEdit->setTime(QTime(settings.value("Time/time_hour",22).toInt(),settings.value("Time/time_minute",00).toInt())); spin->setValue(settings.value("Time/countdown_minutes",60).toInt()); radio1->setChecked(settings.value("CheckBoxes/target_time",false).toBool()); radio2->setChecked(settings.value("CheckBoxes/countdown",true).toBool()); lock->setChecked(settings.value("CheckBoxes/lock",true).toBool()); comboBox->setCurrentIndex(settings.value("Power/comboBox",0).toInt()); } resize(settings.value("MainWindow/size",QSize(290,280)).toSize()); actionKeep_window_proportions->setChecked(settings.value("MainWindow/keep_proportions",true).toBool()); font1->setFamily(settings.value("Fonts/font_type",fonts).toString()); font2->setFamily(settings.value("Fonts/font_type",fonts).toString()); font3->setFamily(settings.value("Fonts/font_type",fonts).toString()); font1->setPointSize(settings.value("Fonts/font1",fontS1).toInt()); font2->setPointSize(settings.value("Fonts/font2",fontS2).toInt()); font3->setPointSize(settings.value("Fonts/font3",fontS3).toInt()); log_action->setChecked(settings.value("Logfile/logging",false).toBool()); logFileSize = settings.value("Logfile/size",1.5).toDouble(); //if(settings.contains("Weekly_is_set") && settings.value("Weekly_is_set").toBool()) cal->setDate(); if(settings.value("Time/countdown_at_startup",false).toBool()){ set(); if(settings.value("Hide_at_startup",false).toBool()) QTimer::singleShot(2000, this, SLOT(hide())); } hideTrayIcon(settings.value("CheckBoxes/Disable_tray_icon", false).toBool()); staticProportions(settings.value("MainWindow/keep_proportions",true).toBool()); lockEverything(settings.value("Lock_all",false).toBool()); QList list; list << lcdL << comboBox << targetTime << minutes << spin << timeEdit; foreach(QWidget * ptr, list) ptr->setFont(*font1); ok->setFont(*font2); minim->setFont(*font2); lock->setFont(*font3); now->setFont(*font3); toolButton->setFont(*font3); switch(settings.value("Power/comboBox").toInt()){ case 0: targetTime->setText(tr("Shutdown-time:")); minutes->setText(tr("Minutes till shutdown:")); shutdown_action->setChecked(true); break; case 1: targetTime->setText(tr("Reboot-time:")); minutes->setText(tr("Minutes till reboot:")); reboot_action->setChecked(true); break; case 2: targetTime->setText(tr("Suspend-time:")); minutes->setText(tr("Minutes till suspend:")); suspend_action->setChecked(true); break; case 3: targetTime->setText(tr("Hibernate-time:")); minutes->setText(tr("Minutes till hibernate:")); hibernate_action->setChecked(true); break; default:; } } void Gui::lockEverything(bool actual){ if(radio1->isChecked()) timeEdit->setDisabled(actual); else spin->setDisabled(actual); quit_action->setDisabled(actual); actionQuit->setDisabled(actual); log_action->setDisabled(actual); actionLog_file->setDisabled(actual); power_actions->setDisabled(actual); QList widgetList; widgetList << radio1 << radio2 << lock << comboBox << targetTime << minutes << pref->comboBox << pref->timeEdit << pref->spin << pref->radio1 << pref->radio2 << pref->quitOnCloseMain << pref->autostart << pref->lock << pref->countdown << pref->log << pref->reset << pref->spinBox << pref->tab2; foreach(QWidget * widgetPtr, widgetList) widgetPtr->setDisabled(actual); if(lock->isChecked() && timeRunning && !actual){ QList widgetList2; widgetList2 << timeEdit << spin << radio1 << radio2 << comboBox << targetTime << minutes << pref->tab2; foreach(QWidget * widgetPtr2, widgetList2) widgetPtr2->setDisabled(true); } if(timeRunning){ reset_action->setDisabled(actual); action_Reset->setDisabled(actual); } else{ reset_action->setDisabled(true); action_Reset->setDisabled(true); } if(aWeeklyTimeWasSet){ radio1->setChecked(true); radio2->setDisabled(true); radio1->setDisabled(true); timeEdit->setDisabled(true); comboBox->setDisabled(true); } /* if(actual){ if(!parentalLockL->isVisible()) parentalLockL->show(); statusBar()->addPermanentWidget(parentalLockL); } if(!actual && parentalLockL->isVisible()) statusBar()->removeWidget(parentalLockL);*/ } void Gui::reset(){ TIcon->setIcon(QPixmap(":red_glasses")); timer->stop(); cal->setWeeklyDate = QDateTime(); setWindowTitle("'qshutdown'"); if(!aWeeklyTimeWasSet) toolButton->setText(tr("Calendar")); lcd->setDigitCount(4); lcd->display("----"); TIcon->setToolTip(NULL); lcdL->setText(tr("minutes")); cal->setCalendarDate.setDate(QDate()); cal->calendarDate.setDate(QDate()); cal->weekly->setEnabled(true); cal->scrollAreaWidgetContents->setEnabled(true); showNormal(); if(!ti->isActive()) ti->start(30000); timeRunning = false; cal->timeRunning = false; minim->hide(); ok->show(); pref->tab2->setEnabled(true); if(!editor->getLockAll()) lockEverything(false); else loadSettings(); action_Reset->setDisabled(true); reset_action->setDisabled(true); //statusBar()->removeWidget(customL); } void Gui::getFonts(){ font1->setFamily(pref->fonts); font1->setPointSize(pref->fontS1); font2->setFamily(pref->fonts); font2->setPointSize(pref->fontS2); font3->setFamily(pref->fonts); font3->setPointSize(pref->fontS3); QList list; list << lcdL << comboBox << targetTime << minutes << spin << timeEdit; foreach(QWidget * ptr, list) ptr->setFont(*font1); ok->setFont(*font2); minim->setFont(*font2); lock->setFont(*font3); now->setFont(*font3); toolButton->setFont(*font3); } void Gui::showCalendarBox(){ if(cal->setCalendarDate.isNull()) cal->calendarWidget->setSelectedDate(QDate::currentDate()); else cal->calendarWidget->setSelectedDate(cal->setCalendarDate.date()); if(editor->getLockAll() || (timeRunning && lock->isChecked())) cal->calendarWidget->blockSignals(true); else cal->calendarWidget->blockSignals(false); cal->show(); } void Gui::updateLock(){ if(editor->getLockAll()) lockEverything(true); else lockEverything(false); } void Gui::showEditor(){ QTimer::singleShot(250, editor, SLOT(show())); } //using singleShot because of focus problems... void Gui::staticProportions(bool var){ if(var) frame->setSizePolicy(QSizePolicy::Fixed,QSizePolicy::Fixed); else frame->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding); } void Gui::hideTrayIcon(bool dontShowTray){ //or only minimize if not if(!dontShowTray) TIcon->show(); else TIcon->hide(); } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/gui.h000066400000000000000000000071561515201227200224750ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef GUI_H #define GUI_H #include "ui_gui.h" #include #include #if QT_VERSION < 0x060000 #include #endif #include #include #include #if defined(Q_OS_LINUX) #include #endif #define SERVICE_NAME "org.qshutdown" #define OBJECT_NAME "/org/qshutdown" class Preferences; class Info; class Calendar; class PassWord; class Editor; class About; class Gui : public QMainWindow, public Ui::Gui { Q_OBJECT // important for creating own singals and slots public: Gui(); ~Gui(); void loadSettings(); void center(); QString information; private: bool timeRunning; bool aWeeklyTimeWasSet; QPushButton *minim; QTimer *timer, *ti; QDateTime localDatetime, futureDateTime; QTime oldTime; QElapsedTimer elapsedTime; QPixmap icon; QSystemTrayIcon *TIcon; QMenu *menu; QActionGroup *power_actions; QAction *shutdown_action, *reboot_action, *suspend_action, *hibernate_action; QAction *minimize_restore_action, *quit_action, *reset_action, *info_action, *log_action, *pref_action; int i; //number of seconds left int oldComboBoxIndex; double bigI; //for more precise display const static int n = 30; //to check if i==0 was skipped QFont *font1, *font2, *font3; double logFileSize; Preferences *pref; Info *infoBox; Calendar *cal; PassWord *checkPassword; Editor *editor; About *about; //QLabel *parentalLockL, *customL; // defining signals and slots private slots: void tray_actions(); void warnings_on(); void iconActivated(QSystemTrayIcon::ActivationReason reason); void showW(); void updateT(); bool Time(); void power_action(int action); void power(QAction *action); void reset(); void finished_(); void beforeQuit(); void setInfoText(); void getFonts(); void showCalendarBox(); void saveOldTime(QTime time); void saveOldComboBoxIndex(int i); void setDate(); void lockEverything(bool actual); void updateLock(); void showEditor(); void staticProportions(bool var); void saveLog(); void saveLast(); void hideTrayIcon(bool dontShowTray); public slots: Q_SCRIPTABLE void showRunningProgram(); Q_SCRIPTABLE void set(); protected: void keyPressEvent(QKeyEvent* kEvent); virtual void closeEvent(QCloseEvent* window_close); virtual void showEvent(QShowEvent* window_show); virtual void hideEvent(QHideEvent* window_hide); }; #endif //GUI_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/info.cpp000066400000000000000000000024301515201227200231650ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "info.h" Info::Info(QWidget *parent): QTextEdit(parent){ isClosed = true; setWindowFlags(Qt::Window); setReadOnly(true); resize(500,450); setWindowTitle(tr("Info")); } Info::~Info(){ } void Info::showEvent(QShowEvent* show_Info){ isClosed = false; starting(); QWidget::showEvent(show_Info); } void Info::closeEvent(QCloseEvent* close_Info){ isClosed = true; finishing(); QWidget::closeEvent(close_Info); } bool Info::getClosed(){ return isClosed; } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/info.h000066400000000000000000000022571515201227200226410ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef INFO_H #define INFO_H #include class Info : public QTextEdit{ Q_OBJECT public: Info(QWidget *parent = 0); ~Info(); bool getClosed(); private: bool isClosed; signals: void starting(); void finishing(); protected: virtual void showEvent(QShowEvent* show_Info); virtual void closeEvent(QCloseEvent* close_Info); }; #endif //INFO_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/main.cpp000066400000000000000000000235701515201227200231660ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "gui.h" #include #include #include #include #include #include bool verbose = false; //this is a global variable needed in power.cpp QString shell; int main(int argc, char *argv[]){ // here the QT_program is created QApplication app(argc, argv); app.setApplicationName("qshutdown"); app.setOrganizationName("shutdown_qapps"); QSettings::setDefaultFormat(QSettings::IniFormat); //Qt translations QTranslator qtTranslator; #if (QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)) bool qtLanguageLoaded = qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::path(QLibraryInfo::TranslationsPath)); #else bool qtLanguageLoaded = qtTranslator.load("qt_" + QLocale::system().name(), QLibraryInfo::location(QLibraryInfo::TranslationsPath)); #endif app.installTranslator(&qtTranslator); Q_UNUSED(qtLanguageLoaded); //My translations QTranslator translator; QString trDir = "/usr/share/qshutdown/translations/"; bool languageLoaded = translator.load(trDir + "qshutdown-" + QLocale::system().name()); Q_UNUSED(languageLoaded); app.installTranslator(&translator); QTextStream myOutput(stdout); #if defined(Q_OS_LINUX) if(!QProcessEnvironment().isEmpty()) shell = QProcess::systemEnvironment().filter("SHELL").first().remove("SHELL="); if(shell.isEmpty() && QFile("/bin/bash").exists()) shell = "/bin/bash"; else myOutput << "E: No shells found! qprogram-starter might not work as expected..."; #elif defined(Q_OS_WIN32) shell = "C:\\Windows\\System32\\cmd.exe"; #elif defined(Q_OS_MACOS) if (!QProcessEnvironment().isEmpty()) { shell = QProcess::systemEnvironment().value("SHELL", "/bin/bash"); } else { shell = "/bin/bash"; } #else shell = ""; #endif QString infoStr = QString(QObject::tr("qshutdown will show itself 3 times as a warning " "if there are less than 70 seconds left.

This program uses qdbus to send a " "shutdown/reboot/suspend/hibernate request to either the gnome- or " "kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the " "command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or " "ConsoleKit, or the shutdown command is used, the Session will never be saved. If the " "shutdown command is used, the program will only be able to shutdown and reboot). So " "if nothing happens when the shutdown- or reboot-time is reached, it means that one " "lacks the rights for the shutdown command. In this case one can do the following:" "

Paste the following in a terminal:
EDITOR=nano sudo -E visudo
and " "add this line:
* ALL = NOPASSWD:/sbin/shutdown
whereas * replaces the " "user name or %group name.

The maximum Number of countdown_minutes is " "1440 (24 hours).
The configuration file is located at " "%1.
The log file is located at %2

For admins:
If you want " "qshutdown to run with \"parental lock\" for every user, you can do " "\"sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/\" " "and set the option Lock_all in the ini file to true. Note that " "qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a " "need to add the following line to the sudoers (as above):" "
* ALL = NOPASSWD:/usr/bin/qshutdown

If you should ever forget " "your set password, just remove the whole line starting with \"Password\" manually from " "the qshutdown settings.

Hints on usage:
If you want qshutdown to stop " "\"bugging\" you, just remove the hook from " "\"warnings on?\".To make that permanent, just do the same in the preferences." "

Hotkeys:" "" "" "
Ctrl+I(this)" " information window
Ctrl+QQuit
Ctrl+PPreferences
Ctrl+Lwrite the run time once into the logfile (works " "only if qshutdown quits. To make it permanent set it in the preferences.)
Ctrl+Sset to shutdown
Ctrl+Rset to restart
Ctrl+Uset to suspend to RAM
Ctrl+Hset to hibernate" "
Ctrl+Estop countdown (only if the countdown has started and the admin " "didn't restrict the access)
Shift+Eto edit the configuration file (for " "this a password is necessary. If you are a user, you can set an \"empty password\" (leave the " "password field empty)).
").arg(QSettings().fileName()) #if QT_VERSION >= 0x060000 .arg(QDir().toNativeSeparators(QStandardPaths::standardLocations(QStandardPaths::AppDataLocation).first()))); #else .arg(QDir().toNativeSeparators(QStandardPaths::standardLocations(QStandardPaths::DataLocation).first()))); #endif QTextDocumentFragment infoDoc; infoDoc = QTextDocumentFragment::fromHtml(infoStr); QString info = infoDoc.toPlainText(); //Get the arguments passed from the terminal QStringList args = QApplication::arguments(); args.removeFirst(); //this is just the program for(int i=1; i " << (iface.isValid()? "true":"false") << "\nW: " << response.errorName() << ": " << response.errorMessage() << "\nYou can ignore this.\n\n" << Qt::endl; QDBusInterface iface2(SERVICE_NAME, OBJECT_NAME, "local.Gui", QDBusConnection::sessionBus(), &window); QDBusMessage response2 = iface2.call("showRunningProgram"); if(response2.type() == QDBusMessage::ErrorMessage) myOutput << "QDBusInterface " << iface2.interface() << " seems to be valid... -> " << (iface2.isValid()? "true":"false") << "\nW: " << response2.errorName() << ": " << response2.errorMessage() << "\nPlease report this." << Qt::endl; else if(!args.empty() && ((args[0][0] == '-' && args[0].contains("s")) || args.contains("--start"))) iface2.call("set"); } else if(!args.empty() && ((args[0][0] == '-' && args[0].contains("s")) || args.contains("--start"))) iface.call("set"); } if(!args.empty() && ((args[0][0] == '-' && args[0].contains("s")) || args.contains("--start"))) myOutput << "Starting countdown!\n"; #endif //Q_OS_LINUX } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/passwd.cpp000066400000000000000000000052701515201227200235400ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "passwd.h" #include "ch_passwd.h" #include #include PassWord::PassWord(QWidget *parent): QDialog(parent){ setupUi(this); isClosed = true; setWindowFlags(Qt::Window); //always in front settings = new QSettings(this); msgBox = new QMessageBox(this); msgBox->setWindowTitle("Error"); msgBox->setIcon(QMessageBox::Warning); msgBox->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); msgBox->setInformativeText(tr("The password is not correct!")); chPW = new ChangePassword(this); update(); //enable password line if a password was set passwdLineEdit->setFocus(); connect(passwdLineEdit, SIGNAL(returnPressed()), this, SLOT(checkPW())); connect(buttonBox, SIGNAL(accepted()), this, SLOT(checkPW())); connect(changePasswdButton, SIGNAL(clicked(bool)), chPW, SLOT(show())); connect(chPW, SIGNAL(updatePasswordGui()), this, SLOT(update())); } PassWord::~PassWord(){ delete settings; } void PassWord::checkPW(){ if(settings->value("Password").toByteArray() == QCryptographicHash::hash(passwdLineEdit->text().toUtf8(), QCryptographicHash::Sha1)){ //check if the entered password matches the saved one success(); passwdLineEdit->clear(); close(); } else msgBox->show(); } void PassWord::update(){ if(settings->contains("Password")){ label->setEnabled(true); passwdLineEdit->setEnabled(true); passwdLineEdit->setFocus(); changePasswdButton->setText(tr("&Change password")); } } void PassWord::showEvent(QShowEvent* show_pw){ isClosed = false; starting(); QDialog::showEvent(show_pw); } void PassWord::closeEvent(QCloseEvent* close_pw){ passwdLineEdit->clear(); isClosed = true; finishing(); QDialog::closeEvent(close_pw); } bool PassWord::getClosed(){ return isClosed; } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/passwd.h000066400000000000000000000027431515201227200232070ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef PASSWD_H #define PASSWD_H #include "ui_passwd.h" #include #include class ChangePassword; class PassWord : public QDialog, public Ui::PassWord { Q_OBJECT public: PassWord(QWidget *parent = 0); ~PassWord(); bool getClosed(); signals: void success(); void starting(); void finishing(); private: QSettings *settings; QString file; QMessageBox *msgBox; ChangePassword *chPW; bool isClosed; private slots: void checkPW(); void update(); protected: virtual void showEvent(QShowEvent* show_pw); virtual void closeEvent(QCloseEvent* close_pw); }; #endif //PASSWD_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/pixmap/000077500000000000000000000000001515201227200230255ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qshutdown/src/pixmap/icon.ico000066400000000000000000002040761515201227200244620ustar00rootroot00000000000000€€ ((€ Sz;`ˆ‘dޱf±f±f±f±f±f±dޱdޱdޱdޱdޱdޱdޱcŒ±aбZ„‘Rx;U|?aŠ“f°g’³k˜¾|ªÞ…¶ô‹¾óÄóÆøÆúÈü’Èü’Èü’Èü’Èü’ÈüÆüÆüÄúÄøŒÀóˆºó€°ôx¤Ýh”¾cŒ³aаZ„’Qv>U|BaŠ”g’®mšº}¬ÞˆºöÄù•Ìû—Ìü™ÊýžÍþ-§Ïþ4¯Òþ4¯Òþ4¯Òþ5®Ñþ3®Ñÿ3®Ñÿ3®Ñÿ4­Ðÿ4­Ðÿ4©Ðÿ3¬Ïþ3¬Ïþ3¬Ïþ1ªÍþ*¤ÌþšÇþ•Åý ’ÅüÄû‰¼ù€°öx¤Þg’ºaŠ®Z„”QvAV~CcŒ•j–±|ªÙˆºõÆú–ËüšËý"£Îþ,«Ôþ4°Ôþ7²Õÿ9²Õÿ;²ÕÿA´ÕÿC´ÕÿC´ÕÿC´ÕÿB³ÔÿB³ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB²ÒÿB²ÒÿA­Ñÿ>¯Ðÿ:¯Ðÿ8­Îÿ6©Îÿ2§Îþ-£Éþ!šÇþ”ÄýÃü‰¼ú€°ôr¢ÙdޱZ„”QvCV~EdŽ•j–­|ªØˆºõ“ÊúšÎý!¤Ïþ.°Öþ6²Öÿ;³Õÿ=´×ÿBµÖÿC¶×ÿC¶×ÿC³×ÿEµÕÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB²ÒÿB²ÒÿA­ÑÿA­Ñÿ@¬Ðÿ?«Ïÿ<ªÎÿ7¬Íÿ3§Íÿ-£Éþ˜Åþ ’Ãý‹¾ú®õq ØdŽ­Z„•QvDV~Fg’•{¨Õ†¸ò’Èù ›Ïý!¦Ñþ-±×þ8´Øÿ=¶ÙÿA·ÙÿD·ØÿD·ØÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°Ïÿ@¬ÐÿB¯Îÿ?¯Ïÿ:ªÎÿ3§Íÿ-£Éþ˜Åþ ‘Âý‰¼ù}¬ònœÕ`ˆ”QvEW€Gh”•}¬×‰¼óžÒü¦Ôþ,²Øþ6µÚÿ>·ÚÿC¸ÙÿD¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­Ïÿ@¬ÐÿB¬Îÿ>ªÎÿ9¨Íÿ2¦Ìÿ+¡Çþ—ÆþÄü®ópžÖ`ˆ”QvFW€Hh”•}¬×ŒÀô Óü¬Õþ/³Ùþ;·ÛÿBºÜÿDºÜÿDºÜÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬Îÿ@®Îÿ=©Íÿ8«Ìÿ-£Éþ—ÄþÄü€°ópžÖ`ˆ”OtGW€Ij–”®Ö‹¾ó¡Ôü¨Öþ1µÛþ;¼ÝÿCºÝÿF»ÜÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬Îÿ@®Îÿ=©Íÿ8§Ìÿ.¢Èþ˜ÇþÃü®ópžÕ`ˆ”OtH[†I|ªÂ‹¾ð¡Öû©×þ1µÛþ=¹ÝÿE»ÝÿG¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿC±ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@«Îÿ=©Íÿ8§Ìÿ.¢Èþ–ÅþÂû}¬ðmšÁSzHY‚Jk˜”€°Ø•Æø©Úþ-µÝþ<ºÞÿE¿ÝÿG¿ÝÿI¿ÝÿI¼ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ=©Íÿ6§Ìÿ*¡Èþ•Æþƒ´øq ×`ˆ“OtI`ˆJ|ªÄŒÀð¤×ü ³Þþ7½ßÿE¿ÝÿHÀÞÿHÀÞÿH¼ÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ<¨Ìÿ3¤ÉÿžÇþÃû®ðk˜ÃSzIY‚Kmš“‚²Ö’È÷ªÜþ/·ßþA¿ßÿFÁàÿHÁàÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿC±ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ?ªÍÿ8§Ìÿ-¡Çþ•Æþƒ´÷pžÕ`ˆ’OtJ`ˆK}¬ÃŒÀí¤Ùû ²Üþ9¾ßÿFÁàÿJ¿àÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ<¨Ìÿ4¥ÊÿÆþÁû|ªímšÂRxJ`ˆK®Å•ÆõªÝý/¸ßþAÁáÿIÃáÿIÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ@«Îÿ?ªÍÿ8§Ìÿ* Æþ“Äý€°ômšÄRxJaŠK€°Ç˜Ê÷­Þþ7¿áþDÂâÿIÄãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿC±ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ<¨Ìÿ/£Éþ•Æþ‚²ömšÆSzJaŠK€°ÈšÌ÷³áþ8ÀâÿGÄãÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿC­ÏÿB¬ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ<¨Ìÿ2£Èÿ—Èþ‚²÷nœÇSzJcŒK‚²ÉÐø´àþ:ÂäÿFÄäÿIÆåÿKÆåÿKÅãÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿIÃáÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ?©Ëÿ3¤Éÿ›Çþ…¶÷nœÈSzJcŒK…¶ÉžÒø·äþ<ÂäÿGÅåÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ?©Ëÿ4¥Êÿ›Çþ†¸øpžÈSzJcŒKƒ´ÉžÒø·äþ<ÄæÿHÆæÿKÈçÿJÇæÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ@«Îÿ?ªÍÿ3§ÍÿÈþ†¸ønœÈSzJcŒKƒ´ÈžÒø¸åþ>ÄæÿIÈçÿKÈçÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA­ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ@«Îÿ?ªÍÿ3§ÍÿÈþ…¶÷nœÇSzJdŽKƒ´ÇÐ÷¸åþ<ÄæÿJÈèÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ@«Îÿ?ªÍÿ4¥ÊÿœÈþƒ´÷nœÆSzJcŒKƒ´Å›Î÷¼åþ:ÅèÿHÈèÿKÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ@«Îÿ?©Ëÿ3¤Éÿ—Èþ‚²ömšÄRxJ`ˆKƒ´Ã›Îõ¶äþ9ÆéÿIÉéÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ<¨Ìÿ2£Èÿ•Æþ€°ômšÂOtJq š˜Êï¶æý9ÆéþJÊêÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿH¾àÿH¼ÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿDºÜÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ<¨Ìÿ1¢Çþ”Æý|ªî`ˆ™fJ‹¾Ø¬ãû3ÅéþHÊêÿMËëÿMËëÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC±ÕÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ<¨Ìÿ* ÆþÁûq ×SzIaŠJ…¶Ä¡Öø$ÂêþDÊìÿLÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«ÎÿA©Ëÿ8§ÌÿÆþƒ´÷mšÃOtIv¢››Îò»ëþ?ÉëÿMÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ?ªÍÿ4¥Êÿ•Æþ®ñ`ˆšfIŒÀÛ ®ãü7ÇëþJÑîÿNÒîÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ<¨Ìÿ-¡ÇþÁüq ÚSzHcŒI…¶Â£Øø%ÅíþHÏìÿNÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿIÃáÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¬ÎÿB¬Îÿ@®Îÿ@«Îÿ:¨ÌÿžÇþƒ´ømšÁQvHx¤œ›Îñ½îþ?ÐïÿNÒîÿNÔðÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¾àÿH¼ÞÿH¼ÞÿI¿ÝÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿC­ÏÿB¬ÎÿB¬Îÿ@®Îÿ>ªÎÿ2¦Ìÿ–Èþ}¬ñ`ˆ›cŒH‹¾Ù¶éü5ÊïþLÒîÿQÓïÿQÓïÿNÔðÿNÔðÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@®Îÿ=©Íÿ+¢ÉþÂûpžØQvGx¤œ Ôô ÀîþEÑïÿOÕñÿPÔðÿPÔðÿQÓïÿQÓïÿNÔðÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ@«Îÿ8«Ìÿ˜Çþ®ó`ˆ›aŠGŒÀÚ·êü9ËïþLÕòÿPÖòÿPÖòÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿNÔðÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿB¯ÎÿB¬ÎÿB¬Îÿ=©Íÿ.¢ÈþÅüq ÙQvFx¤œ¡Öõ$ÁîþGÓñÿPÖòÿQ×óÿQÕñÿPÖòÿPÖòÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿNÔðÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿMÇåÿMÇåÿMÇåÿMÇåÿMÇåÿMÇåÿOÇåÿPÆäÿPÆäÿPÆäÿOÅãÿOÅãÿTÆâÿXÃâÿXÃâÿXÃâÿWÂáÿWÂáÿWÂáÿVÁàÿVÁàÿWÁßÿWÁßÿWÁßÿV¿ÞÿV¿ÞÿV¿ÞÿU¿ÝÿU¿ÝÿW¾ÛÿT¾ÜÿR½ÜÿN½ÜÿJ»ÜÿIºÛÿGºÛÿIºÛÿH¹ÚÿH¶ÚÿG¸ÙÿEµÙÿF·ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿB¯ÎÿB¬Îÿ@®Îÿ8§Ìÿ˜Åþ€°ô`ˆ›dŽFŒÀÚ¹ìü:ÌðþMÖóÿQ×óÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÖòÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿNÔðÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿPÍìÿRÏêÿRÌêÿPËêÿPËêÿPËêÿRÊèÿRÊèÿPÊèÿQÉçÿQÉçÿSÉçÿSÉçÿQÉçÿRÈæÿRÈæÿ_ÌçÿgÎçÿjÌèÿoÍéÿtÎèÿ‚ÐæÿˆÑæÿ€Ïæÿ~ÌæÿÏåÿ™Òåÿ›Óåÿ›ÑåÿšÒäÿšÒäÿšÎäÿšÎäÿšÎäÿ›Îãÿ™ÍãÿšÎâÿšÎâÿ˜ÌâÿšÍàÿ—Ëáÿ–Ìàÿ–Êàÿ“Ëßÿ‰Êßÿ{ÆßÿqÅÝÿoÂÝÿuÃÝÿxÃÜÿrÂÜÿj½Üÿf½ÚÿT¹ÚÿF´ØÿB±ÖÿA´ÕÿA´ÕÿBµÖÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿB³ÔÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿA­ÑÿC­ÏÿC­ÏÿB¯ÎÿB¬Îÿ>ªÎÿ/£ÉþÅüq ÙQvEy¦œ£Øô"ÃòþHÖôÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQÕñÿQÕñÿPÖòÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿNÒîÿ>Ïîÿ9Éíÿ8Èìÿ7Çëÿ8Æêÿ8Æêÿ8Æêÿ7Æéÿ<ÆèÿIÉéÿKÊéÿHÈèÿJÈèÿIÈçÿIÈçÿIÈçÿHÆæÿHÆæÿHÆæÿJÇæÿQÇåÿSÄåÿPÆäÿMÂãÿLÁâÿTÂâÿ[Äãÿ`ÂâÿeÇãÿgÄãÿlÅâÿnÅâÿkÄáÿjÃàÿoÅáÿuÄáÿwÇáÿwÇáÿxÆàÿyÅáÿ{Åáÿ~ÆàÿƒÆßÿ‡Éßÿ„Éàÿ†ÆÞÿƒÆßÿ…ÇÝÿ‚ÅÞÿÃÝÿzÂÜÿvÃÜÿqÁÛÿn¿Úÿh¾Úÿ]¼Ûÿ[ºÙÿ]ºÙÿ]ºÙÿZ¹ØÿW´×ÿT³ÖÿI¯Õÿ=®Óÿ5ªÑÿ/«Ïÿ.¦Îÿ-©Ñÿ.¬Ðÿ.¨Ðÿ.¨Ðÿ.¬Ðÿ.¬Ðÿ.¬Ðÿ/©Íÿ/¦Íÿ/¦Íÿ/§Ïÿ6©Îÿ?°ÑÿB²ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯ÎÿB¬Îÿ9¨Íÿ˜Çþ€°ô`ˆ›fEŽÂÙºïü9ÒóþN×ôÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÖòÿPÔðÿPÔðÿNÔðÿBÎìÿ9Äçÿ*±Øÿ#¦Ëÿ(®Ôÿ(¯Öÿ Êÿ“Áÿ‘¾ÿ‘¾ÿ“¿ÿ •Àÿ –Âÿ!—Ãÿ!–Áÿ"—Âÿ"—Âÿ!˜¿ÿ!”¿ÿ!”¿ÿ!”¿ÿ"•Àÿ%—Áÿ&˜Âÿ%—Áÿ$–Àÿ$–Àÿ%—Áÿ&–Àÿ(–¾ÿ(—Àÿ+—¿ÿ+—¿ÿ+—¿ÿ-”¿ÿ.”¾ÿ/•¿ÿ/•¿ÿ/•¿ÿ/•¿ÿ1”½ÿ1”½ÿ1•¿ÿ4•¾ÿ5–¿ÿ4•¾ÿ3˜½ÿ3˜½ÿ3”½ÿ4”¼ÿ4”¼ÿ2’ºÿ0‘ºÿ.¸ÿ,¸ÿ*ޏÿ'·ÿ$Š´ÿ$ˆ²ÿ#‰³ÿ#‰³ÿ#‰³ÿ"ˆ²ÿ!‹³ÿ±ÿ‰±ÿ†¯ÿ„®ÿƒ¬ÿ‚¬ÿ«ÿ€¨ÿ€¨ÿ«ÿ«ÿªÿ}¨ÿ~ªÿ}¨ÿ~«ÿ‹¶ÿ' Çÿ6¬Îÿ@±ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¯Îÿ>ªÎÿ-£ÉþÄünœØQvDr¢œ Ôó ÃòþHÖôÿPØöÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿNÔðÿ6Æêÿ*¶ÞÿÂÿf…ÿeÿw–ÿu”ÿlŒÿiˆÿd‚ÿaÿd†ÿa€ÿb‚ÿh†ÿcƒÿg…ÿg„ÿdÿcƒÿfƒÿe…ÿcƒÿa€ÿe„ÿd„ÿe…ÿc‚ÿ`ÿdƒÿdƒÿa€ÿc‚ÿc‚ÿaÿdƒÿcÿbÿd‚ÿaÿaÿd‚ÿ_|ÿ_|ÿeƒÿaÿaÿd‚ÿ^}ÿ`€ÿiˆÿbƒÿ]|ÿ`}ÿ]}ÿZyÿ^|ÿ_}ÿ[{ÿ^|ÿ^}ÿ`~ÿ^|ÿXvÿ\yÿ\zÿ\{ÿ[zÿZyÿYxÿXuÿYuÿUsÿUrÿZvÿWuÿWuÿVsÿUrÿWuÿ Qoÿ [€ÿƒ®ÿ’¾ÿ9®ÏÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­ÏÿB¬Îÿ7¬Íÿ—Æþ®ó]„›®¸°êú7ÔõþNØöÿSÙõÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿPÒòÿ>Èêÿ/³Ùÿ!¢ÇÿRkÿl‰ÿŸÿ&“²ÿ(˜¸ÿ,ŸÀÿ+‘³ÿ*°ÿ'Š«ÿ*°ÿ+ޝÿ+±ÿ*°ÿ)‰©ÿ*‹ªÿ,‘®ÿ-’³ÿ*Œ¬ÿ)‰©ÿ'†©ÿ)†©ÿ*‰¬ÿ*®ÿ)‰©ÿ)†©ÿ*Œ¬ÿ.•²ÿ,¬ÿ,Œ¬ÿ-±ÿ,Œ¬ÿ,Œ¬ÿ,°ÿ*Œ¬ÿ*‰¬ÿ+Š©ÿ+ˆ«ÿ*†¨ÿ*†¨ÿ+Š©ÿ,Ž®ÿ,Ž®ÿ+Š©ÿ)…§ÿ(„¦ÿ)ˆ§ÿ)†©ÿ&‚¤ÿ%|¡ÿ&}¢ÿ*ˆªÿ)„¥ÿ*ƒ¤ÿ*‡ªÿ(‚¤ÿ& ÿ&~žÿ"xœÿ#{›ÿ všÿ$zžÿ)…§ÿ&€¢ÿ&~žÿ#z›ÿ#y™ÿ"wšÿ#|ÿ#ÿ$}žÿ$}žÿ'£ÿ$}žÿ#y™ÿ#z›ÿ&|œÿ#y™ÿ#y™ÿmÿUvÿiÿv¡ÿ%ŸÇÿ=¬ÑÿB®ÒÿB®ÒÿB²ÒÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿC­Ïÿ>ªÎÿ+¢Éþ‹¾úd޶fC—ÈܸïýDÖöÿQÚ÷ÿSÚ÷ÿSÚ÷ÿQÚ÷ÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿKÓñÿ2¶Üÿ$ Äÿ`wÿn‹ÿ/¨ËÿFÈäÿKÏëÿLÐìÿJÉèÿGÇçÿIËçÿHÇâÿHÊæÿIÆåÿKÈçÿIÉåÿEÀßÿEÂáÿIÆåÿHÇâÿG¾áÿC¾ÝÿA·ÙÿEÀßÿFÁàÿFÃâÿC¾ÝÿC¹ÛÿG¾áÿHÁàÿGÂáÿGÂáÿGÀßÿFÁàÿFÁàÿE¿ÝÿD½àÿE¿ÝÿD¹ÚÿF¾ÜÿBºÜÿDºÜÿD½ÜÿF¿ÞÿF¿ÞÿC¼ÛÿA·ÙÿA·ÙÿA·ÙÿD·Øÿ?°Ñÿ5¥Åÿ<¯ÐÿC¶×ÿA·ÙÿC¶×ÿC´ÕÿBµÖÿ>¯Ðÿ>®Îÿ=©Íÿ9¤Çÿ6¡Äÿ=©ÍÿB²ÒÿA³Óÿ=­Íÿ;¤Çÿ<ªÊÿ;¤Çÿ>®Îÿ=­Íÿ@°Ðÿ@®ÒÿA­Ñÿ@°Ðÿ?©Ëÿ=©Íÿ?¯Ïÿ>¨Êÿ=©Íÿ-”µÿ"}žÿ`€ÿg‹ÿ„®ÿ-£Éÿ@±ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°ÏÿC­ÏÿB¬Îÿ3§Íÿ’Âýr¢ÛQvCv¢œ¤Úö)ËóþLÚøÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿQÚ÷ÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQ×óÿEÑïÿ.ªÎÿ|œÿ[pÿ.®ÎÿLÒîÿPÖòÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿB³Ôÿ5ŸÁÿ ~ ÿXwÿm”ÿŠ´ÿ7ªÏÿD²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC°Ïÿ@¬Ðÿ:ªÎÿ ™Æþ€°õ]„š‚²¼µðû;Ö÷þOÛùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿ8Æêÿ-¤Çÿc}ÿ–¹ÿIÓñÿQ×óÿQÕñÿQÕñÿPÖòÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC³Óÿ2Àÿo”ÿ Mkÿo•ÿ1¥ËÿA¯ÓÿD²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­ÑÿC­Ïÿ?¯Ïÿ,¤ÌþˆÀûfºg’A˜ÊÝÀñýEÙùÿSÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿOØõÿ1Äéÿ2¸ÿf†ÿ&³ÖÿPÖòÿQ×óÿQ×óÿQ×óÿQÕñÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿA²Óÿ)޳ÿTqÿm‘ÿ.¤ÊÿA¯ÓÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA±ÑÿA­ÑÿA­Ñÿ@¬Ðÿ4¨ÎÿŽÂýr¢ÜQvAx¤›¦Üõ)Î÷þMÛùÿUàùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿ2¿âÿ3¡½ÿr‘ÿ<ÏîÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQ×óÿQÕñÿQÕñÿPÔðÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´Õÿ6©Êÿc€ÿzŸÿ0¬ÐÿD²ÒÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA­ÑÿA­ÑÿA­Ñÿ;«Ïÿ ™Æþ‚²õ]„š®ºµðû:ØúþRàúÿSáûÿSÝûÿUàùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿHÖôÿ,Çîÿ;ÑñÿM×õÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿQÕñÿQÕñÿQÕñÿQÕñÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿOÍíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿIÃáÿJÂàÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿB³Ôÿ1¬Ïÿ(¢Êÿ<±ÒÿB³ÔÿB³ÔÿD²ÒÿD²ÒÿB²ÒÿB®ÒÿB®ÒÿA­ÑÿA­Ñÿ?¯Ïÿ-£Éþ‹¾úcŒ¸ˆºÃÀòüBÛüÿTÞüÿTÞüÿUáûÿSáûÿSÝûÿUàùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿQÚ÷ÿLØöÿPØöÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿQÕñÿQÕñÿQÕñÿPÔðÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿOÍíÿNÐìÿNÍìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿIÄãÿK¿áÿK¿áÿJÂàÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´Õÿ@³ÔÿB³ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB®ÒÿA­Ñÿ@°Ðÿ2«ÎÿÃüh”Áf?›ÎâÄôþKàûÿVãüÿTâüÿTâüÿTÞüÿUáûÿSáûÿSÝûÿUàùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQÕñÿQÕñÿQÕñÿQÕñÿQÕñÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÑíÿOÍíÿNÐìÿNÍìÿMËëÿMËëÿNËêÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿB²ÒÿA­Ñÿ8­Îÿ•Åýy¦áRx>x¤š©à÷-ÕùþQáûÿVãüÿVãüÿVãüÿTâüÿTâüÿTÞüÿUáûÿSáûÿSÝûÿUàùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQØõÿQØõÿQØõÿRÖòÿQ×óÿQ×óÿQÕñÿQÕñÿQÕñÿQÕñÿQÕñÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÑíÿOÍíÿNÍìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿJÂàÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®ÒÿA±Ñÿ<«Ðÿ#ŸÇþ‚²ö]„˜€°»¶òú<ßüþSãýÿVäþÿVäþÿVãüÿVãüÿVãüÿTâüÿTâüÿTÞüÿUáûÿUáûÿSÝûÿUàùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿQØõÿQØõÿRÖòÿRÖòÿRÖòÿQÕñÿQÕñÿQÕñÿQÕñÿQÕñÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿOÍíÿNÍìÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿC±ÕÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿB®Òÿ@°Ðÿ.¤Êþ‹¾úcŒºƒ´¾½øüFàüþUåÿÿUåÿÿVäþÿVäþÿVäþÿVãüÿVãüÿVãüÿTâüÿTâüÿTÞüÿUáûÿUáûÿUÝûÿUàùÿUàùÿUàùÿSÜùÿSÜùÿSÜùÿSÜùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿSÙõÿSÙõÿQØõÿQØõÿQØõÿRÖòÿRÖòÿRÖòÿRÖòÿQÕñÿQÕñÿQÕñÿQÕñÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿPÎîÿOÑíÿOÍíÿNÍìÿNÍìÿMËëÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿD²ÒÿB®ÒÿA­Ñÿ3¨Ïþ’Çûd޼ŒÀÇÄ÷ýHâþÿWåÿÿWåÿÿUåÿÿUåÿÿUåÿÿVäþÿVäþÿVäþÿVãüÿVãüÿVãüÿTâüÿTÞüÿTÞüÿUáûÿUáûÿUÝûÿUÜùÿUàùÿUÜùÿSÜùÿSÜùÿSÜùÿSÜùÿSÜùÿSÜùÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿSÙõÿSÙõÿSÙõÿS×óÿS×óÿQØõÿRÖòÿRÖòÿRÖòÿRÖòÿRÖòÿQÕñÿQÕñÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿPÎîÿOÑíÿOÍíÿNÍìÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿB²ÒÿB²Òÿ7ªÏÿ “Åýj–Åj–;žÒá!Ç÷þKãÿÿWåÿÿWåÿÿWåÿÿWåÿÿUåÿÿUåÿÿUåÿÿVäþÿVäþÿVäþÿVãüÿVãüÿVãüÿTâüÿTâüÿTÞüÿUáûÿUáûÿUÝûÿUÜùÿUÜùÿUÜùÿUÜùÿUÜùÿSÜùÿSÜùÿSÜùÿSÜùÿSÜùÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿSÙõÿS×óÿS×óÿS×óÿRÖòÿRÖòÿRÖòÿRÖòÿQÕñÿQÕñÿQÓïÿQÓïÿPÒîÿPÒîÿPÒîÿOÑíÿOÑíÿNÍìÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿE¶×ÿE¶×ÿE¶×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²ÒÿD²ÒÿB²Òÿ9®Ïÿ”Äþy¦àRx;{¨—¯âõ,ÔþþQäÿÿYæÿÿYæÿÿYæÿÿWåÿÿWåÿÿWåÿÿWåÿÿUåÿÿUåÿÿVäþÿVäþÿVäþÿVãüÿVãüÿVãüÿVãüÿVãüÿVãüÿTÞüÿUáûÿUáûÿUÝûÿUÜùÿUÜùÿUÜùÿUÜùÿUÜùÿUÜùÿUÜùÿUÛ÷ÿUÛ÷ÿUÛ÷ÿUÛ÷ÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÚ÷ÿSÚ÷ÿTØôÿTØôÿSÙõÿS×óÿS×óÿS×óÿRÖòÿRÖòÿRÖòÿQÕñÿQÕñÿQÓïÿSÒíÿPÒîÿPÒîÿPÎîÿOÑíÿOÍíÿNÍìÿNÍìÿMËëÿNËêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿEµÙÿD·ØÿD·ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿB³ÔÿD²ÒÿD²Òÿ;°ÑÿšÇþ‚²ô[†–‚²½½ôó?ÝÿþWåÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿUåÿÿVäþÿVäþÿVäþÿVãüÿVãüÿVãüÿVãüÿVãüÿVãüÿVßüÿUÝûÿUÝûÿUÝûÿUÝûÿWÝùÿWÝùÿWÝùÿVÜøÿVÜøÿVÜøÿUÜùÿUÛ÷ÿUÛ÷ÿUÛ÷ÿUÛ÷ÿUÛ÷ÿUÛ÷ÿUÙõÿSÚ÷ÿTØôÿTØôÿTØôÿS×óÿS×óÿS×óÿRÖòÿRÖòÿQÕñÿQÓïÿQÓïÿSÒíÿPÒîÿPÒîÿPÐìÿOÍíÿNÍìÿNÍìÿMËëÿMËëÿNËêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿD²ÒÿD²Òÿ@±Òÿ,¤Ìþ‰¼ócŒ»…¶½ÅýóIãÿþ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿYæÿÿYæÿÿYæÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿVäþÿVäþÿVäþÿVäþÿWãýÿWãýÿWãýÿWãýÿWâûÿWâûÿWÞûÿWÞûÿWÞûÿWÞûÿWÝùÿWÝùÿWÝùÿWÝùÿWÝùÿVÜøÿVÜøÿVÜøÿVÜøÿVÜøÿVÜøÿUÛ÷ÿUÛ÷ÿUÙõÿUÙõÿTØôÿTØôÿTØôÿS×óÿS×óÿSÕñÿQÕñÿQÕñÿQÓïÿQÓïÿSÎíÿPÒîÿPÎîÿOÑíÿNÍìÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿE¸ÙÿD·ØÿD³ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿD´ÔÿB³ÔÿD²ÒÿB²Òÿ3¬ÏþÄòdŽ»†¸½ÆþøKãÿþ]æÿÿ]æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿWåÿÿVäþÿVäþÿVäþÿVäþÿWãýÿWãýÿWßýÿYâûÿYâûÿYÝùÿYÝùÿYÝùÿYâûÿYÝùÿWÞûÿWÞûÿWÝùÿWÝùÿWÝùÿWÝùÿWÝùÿWÝùÿVÜøÿVÜøÿVÚöÿUÙõÿUÙõÿUÙõÿTØôÿTØôÿS×óÿS×óÿSÕñÿQÕñÿQÕñÿQÓïÿSÒíÿPÒîÿPÎîÿOÑíÿOÍíÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿEµÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿB³ÔÿD²Òÿ4­ÐþÈ÷dŽ»ˆº½ÇþûKãÿþ]æÿÿ]æÿÿ]æÿÿ]æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿYæÿÿWåÿÿWåÿÿWåÿÿXäþÿXäþÿXáþÿZãüÿZãüÿYâûÿYâûÿYâûÿZãüÿZãüÿZãüÿYâûÿYÝùÿYÝùÿYÝùÿYÝùÿYÝùÿYÝùÿYÝùÿWÝùÿWÝùÿWÛ÷ÿVÚöÿVÚöÿUÙõÿUÙõÿTØôÿTØôÿS×óÿSÕñÿRÖòÿQÕñÿQÓïÿSÒíÿPÒîÿPÒîÿPÐìÿOÍíÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿIÃáÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿH¼ÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¸ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿD´ÔÿD´ÔÿD²Òÿ4­Ðþ’Èúf»ˆº½ ÍþýMäÿþ_çÿÿ_çÿÿ_çÿÿ_çÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿ[æÿÿYåÿÿYåÿÿYåÿÿYåÿÿYåÿÿXäþÿXäþÿZãýÿZãüÿZãüÿZåþÿZåþÿZåþÿZãüÿYâûÿYâûÿZãüÿZãüÿ[ãûÿYâûÿZâúÿZÞúÿYÝùÿYÝùÿWÝùÿWÛ÷ÿWÛ÷ÿVÚöÿVÚöÿUÙõÿTØôÿTØôÿS×óÿSÕñÿQÕñÿSÓïÿQÓïÿSÎíÿPÒîÿPÐìÿOÍíÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿK¿áÿJÂàÿJ¿àÿJ¿àÿH¾àÿH¾àÿHÀÞÿI¿ÝÿI¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿGºÛÿDºÜÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¶ÙÿD·ØÿD·ØÿD³ØÿE¶×ÿE¶×ÿEµÕÿEµÕÿE²ÕÿC´ÕÿC´ÕÿD´ÔÿB³Ôÿ3ªÑþŽÊüf»ˆº½ ÏÿýOèÿÿ_çÿÿaçÿÿaçÿÿ_çÿÿ_çÿÿ_çÿÿ_çÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ]æÿÿ[æÿÿ[æÿÿZæÿÿWåÿÿTåÿÿSåÿÿTåÿÿTæÿÿUåÿÿVäþÿVäþÿWäþÿWãýÿXãýÿXâüÿYãüÿZãýÿZäýÿ[åþÿ\äýÿ[ãüÿ[äüÿ\åýÿ\åþÿ\äüÿ\äüÿ\äüÿZãüÿ[ãûÿZâúÿZÞúÿYÝùÿWÝùÿWÛ÷ÿWÛ÷ÿVÚöÿUÙõÿUÙõÿTØôÿTÖòÿSÕñÿQÕñÿQÕñÿQÓïÿSÎíÿPÒîÿPÐìÿOÍíÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿKÆåÿKÆåÿKÅãÿHÄãÿEÂâÿDÁáÿFÃâÿGÂàÿHÁàÿJ¿àÿH¾àÿH¾àÿG¿ßÿG¾ÞÿG½ÝÿF¼ÝÿF»ÜÿG¼ÝÿG¼ÝÿF»ÜÿF»ÜÿF»ÜÿDºÜÿCºÜÿE¹ÚÿF¹ÚÿF¹ÚÿF¹ÚÿE¸ÙÿE¶ÙÿD·ØÿD·ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿC´ÕÿB³Ôÿ4¯Òÿ“Êýg’»ˆº½ ÏÿýQäÿÿaçÿÿaçÿÿaçÿÿaçÿÿaçÿÿaçÿÿaçÿÿ_çÿÿ_çÿÿ_çÿÿ_çÿÿ_çÿÿ_çÿÿ_çÿÿ^çÿÿ]æÿÿYåÿÿUåÿÿOãþÿJáýÿGàüÿGáýÿFáýÿEáþÿGáýÿIàýÿLàüÿMßûÿOÞûÿQÞúÿRÝúÿRÝúÿPÝûÿOßûÿPàüÿRâýÿRãþÿRâþÿQãþÿRãþÿUäÿÿWåÿÿXåþÿZåþÿ\åýÿ\äüÿ\äüÿ[ãûÿZàúÿZÞøÿWÝùÿWÛ÷ÿWÛ÷ÿVÚöÿUÙõÿU×óÿTÖòÿSÕñÿRÖòÿQÕñÿQÓïÿSÎíÿPÒîÿPÐìÿOÍíÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿMÇåÿJÇæÿKÆåÿIÆåÿIÅäÿFÄãÿBÂâÿ@Ááÿ?¿áÿ>¿àÿ<¾àÿ=¿ßÿ<¾Þÿ;½Þÿ<¼Üÿ>»Üÿ?ºÛÿAºÜÿB¹ÛÿA¹Ûÿ?¸Ûÿ=¹Ûÿ:¸Ûÿ8·Ûÿ6·Ûÿ7¶Úÿ:¶Úÿ>·Ùÿ?·ÙÿA¸ÙÿA·ÙÿC¸ÙÿE¶ÙÿD·ØÿD·ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´ÕÿB³Ôÿ4¯ÒÿŽÊýf»Ž¼½ ÏÿýSéÿÿcçÿÿcçÿÿcçÿÿcçÿÿcçÿÿcçÿÿcçÿÿaçÿÿaçÿÿaçÿÿaçÿÿ_æþÿ[ãüÿUÞ÷ÿTÜöÿRÜöÿPÛöÿKÙöÿGÔðÿ?Èãÿ:¿Ûÿ9¼Øÿ:¾Úÿ;Äßÿ<Èäÿ<Åãÿ;Àßÿ:»Úÿ;·×ÿ=¹Úÿ?ÁáÿAÈçÿEÏîÿGÖòÿHÛøÿIÞûÿJàüÿKáþÿKãÿÿNãÿÿRäÿÿVåÿÿYæÿÿ[æÿÿ\æþÿ]æþÿ]åþÿ]åýÿ\äýÿ[ãûÿZàúÿZÞøÿWÝùÿWÛ÷ÿVÚöÿVÚöÿUÙõÿTØôÿS×óÿSÕñÿQÕñÿQÓïÿSÒíÿPÒîÿPÐìÿOÍíÿNÍìÿMËëÿMËëÿNËêÿLÊêÿMÊéÿLÉèÿLÉèÿKÈçÿJÈçÿHÇæÿGÅåÿFÂâÿA¿ßÿ=»Ûÿ:¸×ÿ7´Ôÿ4±Óÿ3±Óÿ2³Õÿ2´×ÿ1¶Ùÿ1·Úÿ/µØÿ.­Ðÿ,¥Çÿ*œ¿ÿ)”¸ÿ)”¹ÿ*š¾ÿ,ŸÄÿ,¥Êÿ-ªÏÿ.¯Ôÿ0³×ÿ2´Øÿ5µØÿ8¶Ùÿ:¶Úÿ<·Ùÿ>·ÙÿA¸ÙÿC¸ÙÿD·ØÿD¶ØÿE¶×ÿE¶×ÿE³×ÿEµÕÿEµÕÿC´ÕÿC´Õÿ3¯Óÿ“Êýf»‹¾½ÏÿýUéÿÿeëÿÿeëÿÿcçÿÿcçÿÿcçÿÿcçÿÿcçÿÿcçÿÿcçÿÿ`åþÿZâûÿRÚôÿIÏéÿAÁÛÿ;¸Òÿ6µÐÿ2ªÆÿ,›¸ÿ&ˆ¦ÿu“ÿf…ÿaÿ_~ÿaÿ_ÿPkÿAZÿ5Lÿ*>ÿ9PÿMjÿ[xÿe…ÿ$x–ÿ,­ÿ3¢¿ÿ4¦Äÿ4¤Áÿ5ªÉÿ9¸×ÿ>ÄáÿCÎìÿKÙôÿRàúÿWãüÿZäýÿ\åþÿ]æÿÿ^æþÿ]åýÿ\äüÿ\âûÿ[áúÿYßùÿYÝ÷ÿWÛ÷ÿVÚöÿUÙõÿTØôÿS×óÿSÕñÿQÕñÿQÓïÿSÎíÿPÒîÿPÐìÿOÍíÿNÍìÿMËëÿMËëÿLÊêÿMÊéÿLÊéÿJÉèÿHÇæÿCÂâÿ?¾Þÿ;·×ÿ5­Ìÿ.Ÿ¿ÿ(“²ÿ#ˆ¦ÿ|šÿqŽÿg…ÿaÿ\{ÿXwÿUuÿ Nmÿ D_ÿ9Qÿ/Eÿ':ÿ1Iÿ ÿBÿ @ÿ >ÿ ;ÿ 9ÿMÿ[ÿHÿ>ÿ<ÿ;ÿ>ÿBÿ+Lÿ5Uÿ8Wÿ7PÿFbÿ\zÿc…ÿ#oÿ.–µÿ<¹ÖÿGÊçÿMÔîÿRÚõÿYßùÿ\ãüÿ]åþÿ^åýÿ]åýÿ\ãûÿ[âûÿZßúÿYÜøÿWÛ÷ÿVÚöÿUÙõÿTØôÿS×óÿSÕñÿQÕñÿQÓïÿSÎíÿPÒîÿPÐìÿOÎíÿNÎìÿMÍëÿLÌëÿJÊéÿHÆçÿBÀáÿ<¶×ÿ5¨Èÿ-™¸ÿ&‰§ÿu‘ÿ_{ÿLeÿ ;Rÿ-Cÿ!:ÿ3ÿ.ÿ *ÿ(ÿ&ÿ#ÿ)ÿ:ÿ;ÿ/ÿ*ÿ(ÿ&ÿ%ÿ&ÿ*ÿ6ÿ 3IÿE\ÿVpÿb~ÿk‰ÿu“ÿ$‰ªÿ,œ½ÿ3¥Èÿ9­Ïÿ>²ÔÿA´ÖÿCµ×ÿD¶×ÿEµÖÿEµÕÿC´Õÿ5¯Óÿ–Ìýg’»¾½ÏÿýWéÿÿgëÿÿgëÿÿgëÿÿfëÿÿfëÿÿeêÿÿ_çÿÿOàøÿ;Éåÿ-¦Âÿ"†¡ÿj…ÿJdÿ 0Iÿ @ÿ ?ÿ =ÿ Rÿ fÿmÿqÿtÿuÿuÿuÿyÿ‡ÿŒÿ€ÿzÿzÿ{ÿzÿyÿvÿsÿkÿPÿCÿAÿ9ÿ3ÿB]ÿ"i‰ÿ*€ ÿ3 ¾ÿ=¿ÜÿKÏêÿUÚóÿZàùÿ]ãüÿ^åýÿ]åýÿ]äüÿ\âûÿ[àúÿZÞùÿXÜ÷ÿVÚöÿUÙõÿTØôÿS×óÿRÖòÿQÕñÿQÓïÿPÒîÿPÒîÿOÑíÿMÎëÿJÊèÿGÆåÿCÁßÿ;¶Ôÿ3¥Äÿ)«ÿsŽÿYsÿDZÿ .Fÿ:ÿ 6ÿ8ÿJÿTÿWÿYÿYÿ[ÿ[ÿ[ÿaÿjÿhÿ[ÿYÿYÿYÿWÿWÿTÿPÿ Eÿ9ÿ7ÿ5ÿ"9ÿ)=ÿ Kdÿc€ÿw–ÿ'Ž®ÿ0ŸÂÿ8©Ìÿ<®Ñÿ@²ÔÿB³ÖÿDµÖÿEµÕÿ6°Óÿ–Ìýg’»ŒÀ½ÐÿýZêÿþiìÿÿiìÿÿhìÿÿfìÿÿbêÿÿXæþÿAÚ÷ÿ&”³ÿg‡ÿAYÿ &?ÿ :ÿ =ÿ Rÿ iÿ qÿ uÿ†ÿÿ“ÿ”ÿ–ÿ˜ÿ˜ÿ™ÿšÿœÿ›ÿÿœÿÿ žÿ œÿ œÿ!›ÿ!›ÿ!•ÿˆÿÿ {ÿpÿRÿCÿ=ÿ"8ÿD_ÿ%j‹ÿ2ŸÀÿBÈåÿQ×òÿZßøÿ]ãûÿ^äüÿ^åýÿ]äüÿ\âûÿ[áúÿYÞùÿWÜ÷ÿVÚöÿUÙõÿTØôÿSÕñÿQÕñÿSÓïÿQÓïÿOÒîÿMÏëÿHÈäÿA½Ûÿ:²Ðÿ1¢¿ÿ&ˆ¦ÿiƒÿJ_ÿ -Eÿ;ÿ ;ÿMÿXÿ\ÿdÿ pÿ sÿ uÿ uÿ uÿ wÿ wÿ wÿ uÿ uÿ uÿ uÿ uÿ uÿ uÿ sÿ sÿ qÿmÿeÿ[ÿWÿQÿ?ÿ+ÿ,ÿ2ÿ -AÿSnÿoŒÿ(Ž®ÿ1ŸÁÿ8©Ìÿ?°ÓÿC³ÕÿEµÕÿ9±Ôþ –Ìüg’»ŽÂ½Ðÿû\êÿþkìÿÿjìÿÿgëÿÿ`éþÿSÞöÿ<¼Ùÿƒ¢ÿ1Bÿ %ÿ 5ÿ Uÿ iÿ uÿ…ÿÿ“ÿ—ÿ˜ÿœÿÿ ÿ£ÿ¤ÿ¤ÿ§ÿ¨ÿ §ÿ!¨ÿ"©ÿ#ªÿ#¬ÿ#¬ÿ$«ÿ$«ÿ$©ÿ$¨ÿ$¦ÿ$¤ÿ$¢ÿ#Ÿÿ#™ÿ#‹ÿ"ÿqÿRÿ9ÿ(ÿC]ÿ$r”ÿ5­ÏÿL×òÿ[ß÷ÿ^ãüÿ`åþÿ_åýÿ^äüÿ]ãûÿ[áúÿYÞùÿWÛ÷ÿVÚöÿUÙõÿTÖòÿSÕñÿQÕñÿQÕñÿMÐìÿGÆãÿ=·Ôÿ0Ÿ¼ÿ$œÿ`yÿ@Sÿ%:ÿ9ÿMÿ[ÿeÿ qÿ wÿ wÿ yÿ {ÿ }ÿ }ÿ ÿ ÿ ~ÿ €ÿ ~ÿ ~ÿ ~ÿ ~ÿ ~ÿ ~ÿ ~ÿ }ÿ {ÿ {ÿ yÿ wÿ uÿ sÿ sÿ pÿhÿZÿSÿDÿ)ÿ)ÿ):ÿWrÿv“ÿ+•¶ÿ7§Èÿ@±ÓÿD´Õÿ8±Ôþ —Ìúg’»ŽÂ½Ðÿø\êÿþmìÿÿjìÿÿ_çýÿMÖïÿ7°Êÿp†ÿ 1Dÿ 3ÿ [ÿ uÿˆÿ“ÿ˜ÿ™ÿÿ ÿ£ÿ¤ÿ§ÿ¨ÿ¬ÿ­ÿ®ÿ!®ÿ"±ÿ"³ÿ#´ÿ$µÿ%¶ÿ&µÿ&·ÿ' ¶ÿ(!·ÿ(!·ÿ)"´ÿ)"´ÿ)"²ÿ(!±ÿ)"°ÿ("¬ÿ("¨ÿ'!¥ÿ& ¢ÿ$šÿ$Œÿ!sÿQÿ7ÿ'ÿIdÿ1«ÎÿPÞøÿ`ãüÿaåþÿaçÿÿ_åýÿ^äüÿ]ãûÿZÞùÿYÛ÷ÿWÛ÷ÿUÙõÿTØôÿTÖòÿSÖòÿQÕñÿHÉæÿ;´Òÿ,”±ÿf€ÿ 8Kÿ3ÿ5ÿNÿeÿ sÿ xÿ zÿ |ÿ ~ÿ €ÿ ‚ÿ ‚ÿ „ÿ „ÿ †ÿ †ÿ †ÿ †ÿ †ÿ †ÿ †ÿ †ÿ „ÿ „ÿ „ÿ ‚ÿ ‚ÿ ‚ÿ ÿ ÿ }ÿ {ÿ {ÿ yÿ uÿ sÿ sÿjÿ[ÿGÿ(ÿ+ÿ 0Aÿd‚ÿ)˜¹ÿ:­ÏÿC´Ôÿ6°Ôþ•Ê÷g’»ŽÂ½Ïÿó\êÿþmìÿÿeêÿÿJÕïÿ/¡½ÿ^tÿ (@ÿ \ÿ {ÿŽÿ™ÿœÿ¡ÿ£ÿ¦ÿ§ÿ©ÿ¬ÿ®ÿ±ÿ²ÿ ³ÿ"µÿ#·ÿ#¸ÿ$¹ÿ%ºÿ' ¼ÿ)"¼ÿ)"¼ÿ)"¾ÿ*#¿ÿ,%¿ÿ,%¿ÿ,%Áÿ-&¾ÿ-&¾ÿ-&¾ÿ.'½ÿ.'»ÿ,%¹ÿ+$¶ÿ,%³ÿ*#¯ÿ,"ªÿ'!¥ÿ%›ÿ%‹ÿ!qÿIÿ&ÿFaÿ1­ÑÿUâüÿcåþÿcçÿÿaçÿÿ_åýÿ]ãûÿZßúÿZÜøÿWÛ÷ÿVÚöÿUÙõÿTØôÿS×óÿLÑíÿ?»Ùÿ-•³ÿ^wÿ(<ÿ 3ÿPÿ eÿ tÿ zÿ ~ÿ €ÿ ‚ÿ „ÿ †ÿ ˆÿ ˆÿ ˆÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ †ÿ †ÿ †ÿ „ÿ „ÿ ‚ÿ ‚ÿ €ÿ €ÿ }ÿ }ÿ {ÿ yÿ wÿ qÿcÿLÿ"ÿ,ÿ_€ÿ)¤Çÿ>´Õÿ5°Ôþ“Êòg’»ŒÀ½ ÈÿóZêÿþhìÿÿHÝùÿ'“±ÿJ[ÿ 9ÿ hÿ”ÿ ÿ¡ÿ¥ÿ¨ÿ©ÿ¬ÿ¯ÿ°ÿ²ÿ³ÿ ·ÿ!¸ÿ"¹ÿ"»ÿ%¿ÿ&Àÿ( Àÿ(!Áÿ*"Âÿ+#Ãÿ-%Åÿ-&Æÿ/'Çÿ0(Èÿ0)Éÿ0)Éÿ0)Éÿ2*Èÿ2*Èÿ3+Çÿ6+Åÿ5*Äÿ5*Äÿ4)Áÿ0)½ÿ/(¸ÿ.'µÿ+%¯ÿ,#©ÿ*!£ÿ%™ÿ"}ÿKÿ(ÿGbÿ/®ÓÿUäþÿeçÿÿcçÿÿ_çÿÿ_åýÿ\äüÿZÞúÿWÝùÿWÛ÷ÿVÚöÿUÙõÿR×óÿEÈåÿ1¢Àÿd~ÿ%9ÿ4ÿZÿ rÿ zÿ |ÿ €ÿ †ÿ †ÿ Šÿ Šÿ Œÿ Œÿ Žÿ Žÿ Žÿ Žÿ Žÿ ÿ ÿ Žÿ Žÿ Žÿ Žÿ Žÿ Žÿ Žÿ Œÿ Œÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ †ÿ „ÿ „ÿ „ÿ ‚ÿ ‚ÿ ‚ÿ €ÿ €ÿ €ÿ yÿXÿÿ ÿ_ÿ(¨Íÿ*­ÒþŽÂòf»…¶ÁøöGãÿþSèþÿ †ªÿ.:ÿ 3ÿ tÿ¢ÿ¯ÿ´ÿ³ÿ±ÿ°ÿ±ÿ²ÿ´ÿ·ÿ!¹ÿ"ºÿ"»ÿ$¾ÿ&Àÿ&Âÿ( Æÿ)!Çÿ+#Éÿ,$Êÿ.&Êÿ.&Ìÿ1)Íÿ1)Ïÿ2*Ðÿ4,Ðÿ5-Ñÿ6.Òÿ5.Ðÿ80Ðÿ6/Ïÿ6/Ïÿ6/Íÿ6/Íÿ:/Ëÿ9.Èÿ8-Åÿ6+Ãÿ5*Àÿ0)¹ÿ-'³ÿ/%­ÿ,#¥ÿ& šÿ#|ÿLÿ'ÿHcÿ7³×ÿ_çÿÿgèÿÿcçÿÿ_çÿÿ]åýÿ[ãûÿZàøÿWÝùÿWÛ÷ÿVÚöÿNÖóÿ;µÕÿ s‘ÿ -Aÿ6ÿ fÿ‡ÿÿÿ‘ÿ ÿ Šÿ Œÿ Œÿ Žÿ ÿ ÿ ÿ ÿ ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ÿ ÿ ÿ ÿ Žÿ Žÿ Œÿ Œÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ †ÿ †ÿ †ÿ †ÿ †ÿ ˆÿ Šÿ Šÿ „ÿ_ÿ#ÿ ÿY|ÿ”Áþ…¶õ`ˆœ{¨C¯èã3Ûÿþ1Ûÿÿ(ÿ 2ÿ„ÿµÿ'Çÿ3+ÑÿB7Óÿ1)Ïÿ%Ãÿ ºÿ¸ÿ¹ÿ!¹ÿ"¼ÿ#½ÿ$Àÿ&Àÿ'Áÿ( Æÿ)!Éÿ,$Êÿ-%Ëÿ/'Íÿ1)Ïÿ1)Ñÿ3+Ñÿ4,Òÿ80Òÿ:2Òÿ<4ÒÿA6ÒÿB7ÓÿC8ÔÿC8ÔÿD9ÑÿB7ÑÿC8ÐÿB7ÏÿA7Íÿ=2Îÿ;0Îÿ;0Êÿ9.Æÿ6,Âÿ4*¼ÿ/)³ÿ/&®ÿ-$¦ÿ&!™ÿ#|ÿKÿ)ÿ*|žÿWåÿÿièÿÿeçÿÿaçÿÿ_åýÿ]ãûÿ[ãûÿZÜøÿWÛ÷ÿVÚöÿIÔóÿ-½ÿD\ÿ 1ÿ gÿ"žÿ3)±ÿ3)·ÿ*#±ÿ"­ÿ£ÿ –ÿ ÿ Žÿ ÿ ÿ ’ÿ ÿ ÿ ’ÿ ”ÿ ”ÿ ”ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ÿ ÿ ÿ Žÿ Žÿ Žÿ Žÿ Œÿ Šÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ Šÿ Šÿ Šÿ Žÿ Žÿ ’ÿ ÿ Šÿeÿ'ÿÿ {ªþ|ªâU|B£ØÇ+Õÿý+Úÿÿ#ÿxÿ!Ãÿ1(ØÿTHèÿxlòÿ|pôÿbWëÿ5-Õÿ#Ãÿ!½ÿ"¼ÿ#½ÿ$Àÿ%Áÿ'Ãÿ)!Ãÿ*"Æÿ,$Èÿ.&Ìÿ0(Ìÿ1)Ïÿ2*Òÿ4,Ôÿ:2Òÿ<4ÒÿB7ÓÿB7ÕÿD8ÖÿF;×ÿF;×ÿH=×ÿI>ØÿI>ØÿI>ÖÿH=ÕÿH=ÕÿI>ÔÿH=ÑÿF<ÐÿE:Îÿ@5Íÿ=2Ìÿ;0Èÿ9.Âÿ5+»ÿ3)µÿ1'­ÿ,#¥ÿ)!—ÿ$rÿ9ÿ)|ŸÿWåÿÿmìÿÿièÿÿeçÿÿ_çÿÿ_åýÿ\äüÿZÞúÿWÝùÿVÚöÿCÐòÿ!ƒ§ÿ '@ÿ OÿŒÿ=3½ÿM@ÄÿKAÅÿ?5Ãÿ/(ºÿ%²ÿ¤ÿ ’ÿ ÿ ÿ ÿ ’ÿ ’ÿ ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ ÿ ÿ ÿ Žÿ Žÿ Œÿ Œÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ Œÿ Žÿ Žÿ ÿ ’ÿ ’ÿ ’ÿ ÿ ˆÿ`ÿ ÿp¡ýmšÅšÌ¾ÐþüÜÿþ%ÿ•ÿ-$ØÿD<æÿxjøÿ™ýÿ“ýÿ€tøÿG;ßÿ$Âÿ#½ÿ#¿ÿ%Áÿ'Ãÿ)!Ãÿ*"Æÿ,$Èÿ-&Èÿ/(Êÿ1)Íÿ3+Ïÿ5-Ñÿ:2ÒÿA6ÒÿC8ÔÿD9ÕÿF;×ÿG<ØÿI>ÚÿJ?ÛÿMBÚÿMBÚÿMBÚÿODÚÿODÚÿODÚÿNCÙÿMBØÿMBÖÿK@ÔÿI?ÑÿH=ÏÿD:Ìÿ?4Ìÿ;0Èÿ9/¿ÿ6,¸ÿ3)±ÿ0'©ÿ,#¡ÿ&ÿ"Bÿ&yœÿSåÿÿmìÿÿkèÿÿgèÿÿcçÿÿ_çÿÿ]åýÿ[ãûÿVÜøÿLØöÿ1Íîÿk‹ÿ /ÿ [ÿ& ˜ÿ\PÈÿn`ÒÿobÒÿ^RÌÿE;Çÿ3)½ÿ©ÿ —ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ Žÿ Žÿ Žÿ Œÿ Šÿ Šÿ Šÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ Šÿ Šÿ Žÿ Žÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ Žÿ qÿ þh˜ûg’¼€°»n˜ûp“þÿ™ÿ-%ÙÿOCëÿƒwýÿŸ“ýÿ¤˜þÿykùÿSHæÿ*"Æÿ%¿ÿ&Àÿ( Âÿ)"Äÿ+#Åÿ-%Çÿ0(Èÿ1)Ëÿ2+Íÿ5.Ðÿ:2ÐÿA6ÐÿB7ÑÿE:ÒÿI>ÔÿK@ÖÿK@ØÿNCÙÿODÚÿQFÜÿRGÝÿTIÝÿSHÞÿUJÞÿUJÞÿSHÜÿTIÛÿSIÙÿQG×ÿPE×ÿMCÓÿKAÑÿH>ÎÿE:Êÿ>4Èÿ;1Áÿ9/»ÿ6,´ÿ2)­ÿ.%£ÿ(!ÿ"Dÿ Lhÿ6²ÖÿQäÿÿYæÿÿ]æÿÿaçÿÿ]æÿÿZåþÿQÝûÿ@Òòÿ, ÆÿlŽÿ 3Jÿ%ÿ \ÿ-%›ÿl^Ðÿ…wÛÿ‰{ÝÿwjÖÿVJÊÿ8.Àÿ"­ÿ —ÿ Žÿ Žÿ Žÿ Žÿ Œÿ Œÿ Œÿ Žÿ Žÿ Œÿ Œÿ Œÿ Œÿ Œÿ Œÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ †ÿ †ÿ †ÿ ˆÿ ˆÿ ˆÿ Šÿ Žÿ ’ÿ ’ÿ ’ÿ ’ÿ ’ÿ Žÿ qÿ þ6WûU|º7VÓý ÿ ÿ‹ÿ%ËÿSGëÿ“ˆþÿªŸýÿ¯¤þÿ|oûÿUJèÿ1)Íÿ(!¿ÿ(!¿ÿ*"Âÿ,%Ãÿ.'Åÿ0)Çÿ2+Éÿ5-Ëÿ70Îÿ>3ÏÿC8ÎÿE:ÐÿI>ÒÿK@ÔÿMBÖÿODØÿRGÙÿTIÛÿTJÜÿWLÞÿXNÞÿXNÞÿYOßÿYOßÿYOßÿXNÞÿXNÜÿWNÚÿUKÙÿSI×ÿRHÔÿOEÑÿLBÎÿJ@ÈÿC9Çÿ>4Âÿ;1½ÿ8.¶ÿ4+¯ÿ/'¡ÿ+"|ÿ"@ÿ "ÿ"Khÿ*ˆªÿ-Œ¯ÿ6±ÔÿGßûÿEÙùÿBÖöÿ/£Éÿr–ÿ;Tÿ&)ÿ"$ÿ!ÿ Vÿ#‘ÿZOÃÿ|pØÿuÛÿxk×ÿ\PÌÿ8.¾ÿ!¦ÿ Œÿ Šÿ ˆÿ ˆÿ ˆÿ ˆÿ ˆÿ Šÿ Šÿ Šÿ ˆÿ ˆÿ ˆÿ ˆÿ †ÿ †ÿ †ÿ †ÿ †ÿ †ÿ „ÿ „ÿ „ÿ „ÿ „ÿ „ÿ „ÿ „ÿ „ÿ „ÿ „ÿ †ÿ ˆÿ Œÿ ’ÿ ’ÿ ’ÿ ’ÿ ÿ Œÿhÿÿý"6Ñ  ` û ÿ ÿ ÿQÿŸÿA6Òÿ~rúÿŒýÿ™ýÿzm÷ÿNCßÿ2*Ðÿ*#¿ÿ*#¿ÿ-&¾ÿ/(Àÿ5*Äÿ7,Äÿ9.Èÿ;0Êÿ?4ÌÿC8ÌÿG=ÍÿJ@ÐÿMBÒÿOEÓÿQGÕÿSI×ÿUKÙÿWNÚÿZPÜÿ\SÝÿ]Sßÿ]Sßÿ_Ußÿ_Ußÿ_Ußÿ^TÞÿ]SÝÿ_RÚÿ]PØÿ[NÖÿZMÓÿTGÑÿOEÍÿLBÈÿF<ÆÿA7Áÿ<3»ÿ90´ÿ6-©ÿ/(ÿ+"`ÿ$4ÿ6-;ÿSFXÿ[N`ÿ=3Aÿ F`ÿ$€¢ÿ { ÿxÿ>Wÿ1(4ÿNCSÿd\pÿE@Rÿÿ:ÿ iÿ*"šÿWLÀÿn`Òÿk]ÑÿWKÇÿ4*¶ÿ™ÿ ‚ÿ ‚ÿ ‚ÿ ‚ÿ ‚ÿ „ÿ „ÿ ‚ÿ ‚ÿ ‚ÿ ‚ÿ ‚ÿ ‚ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ ÿ }ÿ ~ÿ ~ÿ ÿ ÿ €ÿ ‚ÿ „ÿ ˆÿ Œÿ ÿ ’ÿ Žÿ †ÿ uÿ<ÿÿÿú_ û ÿÿ9TÿLiÿ$ÿSÿ!wÿMCÉÿVKßÿZPäÿSHàÿ5-Ïÿ.'Áÿ+$¼ÿ.'¹ÿ3)»ÿ5+½ÿ8.¾ÿ:0Àÿ<2Äÿ>4ÆÿB8ÈÿG=ÉÿKAÉÿNDÌÿRHÎÿVIÑÿZMÓÿ\OÕÿ_RÖÿaTØÿbUÛÿdWÛÿdWÝÿfZÜÿfZÜÿfZÜÿfZÜÿfYÛÿdWÛÿbVØÿ`TÖÿ^RÔÿ[OÑÿXLÎÿUIÉÿQEÃÿH=¹ÿC8®ÿ@5§ÿ;0 ÿ6-ÿ.&hÿ)!;ÿ%(ÿGÿÿÿ9ÿ ^ÿÿ;1Ÿÿ>3£ÿ3+£ÿ!›ÿ ‰ÿ zÿ zÿ |ÿ {ÿ {ÿ {ÿ {ÿ {ÿ {ÿ yÿ yÿ yÿ yÿ yÿ yÿ yÿ wÿ wÿ wÿ wÿ wÿ wÿ wÿ wÿ uÿ uÿ wÿ wÿ wÿ wÿ yÿ }ÿ ÿ ‚ÿ †ÿ †ÿ ~ÿ pÿOÿ:ÿ ÿ*ÿÿÿù û ÿ2Mè²çý5àÿþ/o‘ÿYwÿ 'ÿ& dÿ,#ÿ2)©ÿ1'¯ÿ*!¥ÿ-$¢ÿ.%£ÿ1(¤ÿ3+¥ÿ7.¦ÿ80¨ÿ>2¬ÿA5¯ÿC8²ÿF;µÿJ?·ÿMBºÿQF¼ÿVK½ÿXM¿ÿ\QÁÿ^SÃÿ`UÅÿdWÇÿfYÉÿhZÊÿh[Ëÿj]Ëÿj]Ëÿj]Ëÿj]Ëÿi\ÊÿgZÈÿeXÆÿcVÄÿ`SÁÿ]P¾ÿZM»ÿUG¹ÿNBªÿG<ŒÿC9wÿ?5qÿ;1kÿ5,\ÿ2*Bÿ/@Sÿ*^|ÿ)Zyÿ+8IÿXK]ÿ›¡ÿ»°Àÿ½²Âÿº¯¿ÿ¸­½ÿ·¬¼ÿ·¬¼ÿ”ˆšÿD:Hÿ /ÿ7Pÿ!0ÿÿ)ÿ1ÿ3ÿ9ÿ Gÿ ]ÿdÿdÿdÿdÿdÿdÿdÿdÿdÿbÿbÿbÿbÿbÿbÿbÿbÿaÿaÿaÿaÿaÿaÿaÿaÿaÿaÿaÿaÿaÿcÿcÿeÿgÿlÿnÿaÿ@ÿ-ÿ ÿ 5Oÿ;Xþ^Šü0èÿû\ û ÿˆº¨Ñÿ÷YõÿþaýÿÿUíÿÿ3r“ÿ$[zÿ$!-ÿ%Nÿ( bÿ+#gÿ-%eÿ0(hÿ3*jÿ6-mÿ8/oÿ<2rÿ@5uÿB8xÿF;}ÿJ?ÿMB‚ÿQE…ÿTHˆÿWK‹ÿZNŽÿ]Q‘ÿaS“ÿbT–ÿdV˜ÿgY™ÿgY›ÿi[›ÿi[ÿi[ÿi[ÿi[›ÿgY›ÿgY™ÿdW—ÿbT”ÿ_R’ÿ[OÿXLŠÿSG…ÿNCwÿJ?[ÿGYoÿDx–ÿCu•ÿ=iÿm’ÿAp•ÿDq˜ÿGv›ÿJyžÿN¢ÿQ‚¥ÿT‰ªÿWŽ­ÿ\“²ÿ_˜µÿcœ¹ÿfŸ¼ÿhŸ¾ÿk¤Áÿl¥Âÿo¢Ãÿp¡Äÿq¢Åÿs£Åÿs£Åÿs£Åÿs¡Åÿr Äÿo ÃÿnÂÿkš¿ÿi™»ÿf”¸ÿc³ÿ^Œ°ÿZˆ¬ÿUƒ§ÿV„¤ÿ_Ùóÿ}ÿýÿÿýÿyÿýÿwýÿÿÿþÿ‰ÿþÿƒûÿÿaëÿÿ6”¶ÿ+Zwÿ'Xwÿ&Wvÿ$Utÿ!Rqÿ!PmÿMjÿJeÿ |žÿ:ÊîÿNÚøÿEÖõÿ6Ñòÿ3Ïñÿ1Ïñÿ*Äêÿƒªÿ:Xÿ 8Vÿ 6Uÿ 6Uÿ 5Tÿ 5Tÿ 5Tÿ 6Tÿ 6Tÿ 6Tÿ 6Tÿ 6Tÿ 7Sÿ 7Sÿ 5Sÿ 7Sÿ 7Sÿ 9Sÿ :Tÿ 8Tÿ :Tÿ :Tÿ :Tÿ 8Rÿ 7Qÿ 6Qÿ 6Qÿ 6Qÿ 2Qÿ 2Qÿ 4Qÿ 2Qÿ 2Qÿ 2Qÿ 4Pÿ 4Pÿ 4Pÿ 4Pÿ 4PÿB_ÿŸÊÿ,Ðÿ1´ÙÿŸÏý}¬ßV~Iÿû ý ÿ¶ñ¼9áÿûuÿýþ‰ÿþÿ‹ÿþÿ‡ÿþÿuÿýÿqÿýÿsÿýÿuÿýÿyÿýÿ{ÿýÿÿýÿÿþÿ…ÿþÿ‰ÿþÿÿþÿÿþÿ•ÿþÿ™ÿþÿÿþÿ¡ÿþÿ£ÿþÿ§ÿþÿ«ÿþÿ­ÿþÿ¯ÿþÿ±ÿþÿ³ÿþÿ³ÿþÿ³ÿþÿµÿþÿµÿþÿµÿþÿ³ÿþÿ³ÿþÿ±ÿþÿ¯ÿþÿ«ÿþÿ©ÿþÿ¥ÿþÿ¡ÿþÿÿþÿ—ÿþÿ“ÿþÿ‘ÿþÿ›ÿþÿ£ÿþÿŸÿþÿ™ÿþÿ•ÿþÿ‘ÿþÿÿþÿ‰ÿþÿøÿÿoðÿÿ[êÿÿSéÿÿMèÿÿGãÿÿCâÿÿ>áþÿ<ßüÿ;ÙûÿFÚúÿUÜùÿVÜøÿUÛ÷ÿSÚ÷ÿSÙõÿRÖòÿOÕñÿBÌîÿ0Âìÿ.»êÿ+»ëÿ-ºéÿ,ºèÿ,ºèÿ+¹çÿ+¹çÿ,¸æÿ,¸æÿ,·äÿ,·äÿ*¶äÿ*¶äÿ+µãÿ+µãÿ+ºãÿ*Ãäÿ-¿ãÿ+¾ãÿ+¾ãÿ-½áÿ-½áÿ,¼àÿ*¼àÿ(·àÿ*¶Þÿ)±Ýÿ)±Ýÿ(¯Üÿ(¯Üÿ'®Ûÿ'ªÛÿ'ªÛÿ(ªÚÿ(ªÚÿ'©Ùÿ'©Ùÿ*­Øÿ-³Ùÿ?´Ûÿ@¹Üÿ/³Ùþ•Ìûk˜ºÿûýÿ®æ #Ýÿ÷kÿýþ‰ÿþÿ‘ÿþÿ“ÿþÿ•ÿþÿ—ÿþÿ™ÿþÿÿþÿŸÿþÿ£ÿþÿ§ÿþÿ©ÿþÿ­ÿþÿ±ÿþÿµÿþÿ¹ÿþÿ½ÿþÿÁÿþÿÅÿþÿÉÿþÿÍÿþÿÏÿþÿÓÿþÿÕÿýÿ×ÿýÿÙÿþÿÛÿýÿÛÿýÿÝÿýÿÝÿýÿÝÿýÿÛÿýÿÛÿýÿÙÿýÿ×ÿýÿÓÿþÿÑÿþÿÍÿþÿÉÿþÿÅÿþÿ¿ÿþÿ»ÿþÿµÿþÿ±ÿþÿ­ÿþÿ§ÿþÿ£ÿþÿÿþÿ—ÿþÿ“ÿþÿÿþÿ‰ÿþÿ…ûÿÿõÿÿ}ñÿÿyîÿÿqíÿÿkìÿÿgèÿÿaçÿÿ]æÿÿZåþÿYâûÿYÝùÿWÝùÿVÜøÿUÛ÷ÿSÚ÷ÿSÙõÿRÖòÿPÖòÿOÕñÿNÔðÿNÔðÿNÒîÿNÒîÿMÑíÿMÑíÿMÑíÿLÐìÿLÌìÿKËëÿKËëÿJÊêÿJÊêÿKÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿIÆåÿKÅãÿKÅãÿIÄãÿGÄãÿIÃáÿIÃáÿHÂàÿHÂàÿFÁàÿFÁàÿHÀÞÿH¼ÞÿG¿ÝÿG¼ÝÿG¼ÝÿG¼ÝÿG¼Ýÿ>¹Üÿ#§Óþ‹¾ödŽŸÿûýÿœÓLÒÿßYõÿý‡ÿþÿ•ÿþÿ—ÿþÿ›ÿþÿÿþÿŸÿþÿ£ÿþÿ§ÿþÿ«ÿþÿ¯ÿþÿ³ÿþÿµÿþÿ»ÿþÿ¿ÿþÿÃÿþÿÇÿþÿËÿþÿÍÿþÿÑÿþÿÕÿýÿÙÿýÿÛÿýÿßÿýÿáÿþÿãÿþÿåÿþÿåÿþÿåÿþÿåÿþÿåÿþÿåÿþÿãÿþÿáÿþÿßÿýÿÛÿýÿ×ÿýÿÓÿþÿÏÿþÿËÿþÿÅÿþÿ¿ÿþÿ¹ÿþÿµÿþÿ¯ÿþÿ©ÿþÿ¥ÿþÿŸÿþÿ™ÿþÿ•ÿþÿÿþÿ‹ÿþÿ‡þÿÿƒøÿÿôÿÿ{îÿÿsíÿÿmìÿÿièÿÿcçÿÿ_çÿÿ\åþÿZãüÿYâûÿWÝùÿVÜøÿUÛ÷ÿSÚ÷ÿSÙõÿQØõÿQ×óÿQÕñÿPÔðÿQÓïÿQÓïÿQÓïÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿIÃáÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¼ÞÿI¿ÝÿH¼ÞÿI¼ÝÿG¼Ýÿ9·ÛÿÑý®ÞV~Kÿûóÿÿ Áö¸Eðÿúÿþþ—ÿþÿÿþÿŸÿþÿ£ÿþÿ¥ÿþÿ©ÿþÿ­ÿþÿ±ÿþÿ³ÿþÿ·ÿþÿ½ÿþÿÁÿþÿÅÿþÿÉÿþÿÍÿþÿÑÿþÿÕÿýÿÙÿþÿÝÿýÿáÿþÿãÿþÿçÿþÿéÿþÿëÿýÿëÿýÿíÿþÿíÿþÿíÿþÿëÿýÿëÿýÿéÿþÿçÿþÿãÿþÿáÿþÿÛÿýÿ×ÿýÿÓÿþÿÍÿþÿÇÿþÿÃÿþÿ½ÿþÿ·ÿþÿ±ÿþÿ«ÿþÿ¥ÿþÿŸÿþÿ›ÿþÿ•ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒøÿÿôÿÿ{îÿÿuíÿÿoìÿÿièÿÿeçÿÿ_çÿÿ]æÿÿZåþÿYâûÿWÞûÿVÜøÿUÛ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿQ×óÿQÕñÿQÓïÿQÓïÿQÓïÿPÒîÿOÑíÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÃáÿIÃáÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¾àÿHÀÞÿH¼ÞÿI¿ÝÿB»Þÿ-´Ûþ“Êùg’¶ÿû ÿÿÿÿÿ/ßÿösÿýþ—ÿþÿ¡ÿþÿ¥ÿþÿ§ÿþÿ«ÿþÿ¯ÿþÿ³ÿþÿ·ÿþÿ»ÿþÿ¿ÿþÿÃÿþÿÇÿþÿÍÿþÿÑÿþÿÕÿþÿÙÿþÿÝÿýÿáÿþÿåÿþÿéÿþÿëÿýÿïÿþÿñÿþÿóÿþÿóÿþÿóÿþÿóÿþÿóÿþÿñÿýÿñÿþÿíÿþÿëÿýÿéÿþÿåÿþÿßÿþÿÛÿýÿÕÿýÿÑÿþÿËÿþÿÅÿþÿ¿ÿþÿ¹ÿþÿ³ÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿôÿÿ{ñÿÿwêÿÿoìÿÿièÿÿeçÿÿaçÿÿ]æÿÿZåþÿZàüÿWÞûÿWÝùÿUÛ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿRÖòÿQÕñÿPÔðÿQÓïÿPÒîÿNÒîÿNÒîÿOÑíÿOÑíÿNÐìÿLÌìÿMËëÿMËëÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿKÆåÿKÅãÿKÅãÿKÅãÿKÅãÿIÄãÿHÂàÿHÂàÿJÂàÿIÃáÿJ¿àÿJ¿àÿH¾àÿH¾àÿH¼ÞÿG¿Ýÿ=½Ýÿ§Õþ€°ö4RÌOOÿÿ¬!œ!#üÿÿ0'3ÿÌÿæYÿýüÿþþ¥ÿþÿ©ÿþÿ­ÿþÿ±ÿþÿµÿþÿ¹ÿþÿ¿ÿþÿÃÿþÿÇÿþÿËÿþÿÑÿþÿÕÿþÿÙÿýÿÝÿýÿáÿþÿåÿþÿéÿþÿíÿþÿñÿþÿóÿþÿ÷ÿþÿùÿþÿùÿþÿûÿþÿûÿþÿûÿþÿùÿþÿ÷ÿþÿõÿþÿóÿþÿïÿþÿíÿþÿéÿþÿãÿþÿßÿýÿÙÿþÿÓÿþÿÍÿþÿÇÿþÿÁÿþÿ»ÿþÿ³ÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿôÿÿ{ñÿÿwíÿÿqéÿÿkìÿÿeçÿÿaçÿÿ]âÿÿZåþÿZãüÿYÝùÿWÝùÿUÜùÿUÛ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿQ×óÿQÕñÿQÕñÿPÔðÿNÔðÿPÒîÿPÒîÿOÑíÿNÐìÿLÌìÿMËëÿMËëÿMÈëÿMËëÿLÊêÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿKÈçÿJÇæÿJÇæÿIÆåÿKÅãÿKÅãÿKÅãÿKÅãÿKÅãÿIÄãÿIÃáÿK¿áÿIÃáÿJÂàÿJ¿àÿHÁàÿH¾àÿHÀÞÿE¿Ýÿ0¶ÜþŸÒüg’æÿÿÿÿ­%(¯' *³*#-³/&2³¾õª=ÿýöƒÿþþ¥ÿþÿ¯ÿþÿ³ÿþÿ·ÿþÿ½ÿþÿÁÿþÿÅÿþÿÉÿþÿÏÿþÿÓÿþÿÙÿýÿÝÿýÿáÿþÿåÿþÿéÿþÿíÿþÿóÿþÿõÿþÿùÿþÿûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿûÿþÿùÿþÿõÿþÿñÿýÿíÿþÿçÿþÿáÿþÿÛÿýÿÕÿýÿÏÿþÿÉÿþÿÁÿþÿ»ÿþÿµÿþÿ¯ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ—ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿôÿÿ{ñÿÿwíÿÿqíÿÿkìÿÿgèÿÿaçÿÿ]æÿÿZåþÿZãüÿYâûÿWÝùÿVÜøÿUÛ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿRÖòÿQ×óÿQÕñÿPÔðÿPÔðÿQÓïÿPÒîÿPÒîÿOÑíÿNÐìÿNÐìÿNÍìÿLÌìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿIÃáÿJ¿àÿJ¿àÿHÁàÿHÀÞÿ>¾Þÿ®×þ‘Àõ[†ªÿÿÿ­ºíO;ïÿÝiÿýüŸÿþþ³ÿþÿ¹ÿþÿ¿ÿþÿÃÿþÿÇÿþÿÍÿþÿÑÿþÿ×ÿýÿÛÿýÿáÿþÿåÿþÿéÿþÿïÿþÿóÿþÿ÷ÿþÿûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿùÿþÿõÿþÿïÿþÿëÿýÿåÿþÿÝÿýÿ×ÿýÿÑÿþÿÉÿþÿÃÿþÿ»ÿþÿµÿþÿ¯ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ—ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿôÿÿ{ñÿÿwíÿÿqíÿÿkìÿÿgèÿÿaçÿÿ]æÿÿZåþÿXáþÿYâûÿWÞûÿVÜøÿUÛ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQÕñÿQÕñÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿIÃáÿJ¿àÿJ¿àÿEÀßÿ3·Ýþ¡Ôü®ÜW€N=Ôÿ Kÿýõ‘ÿþþµÿþÿ¿ÿþÿÅÿþÿÉÿþÿÏÿþÿÓÿþÿÙÿþÿßÿýÿãÿþÿéÿþÿíÿþÿóÿþÿ÷ÿþÿûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿ÷ÿþÿóÿþÿíÿþÿçÿþÿßÿþÿÙÿýÿÑÿþÿËÿþÿÃÿþÿ½ÿþÿµÿþÿ¯ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿ÷ÿÿ{ñÿÿwíÿÿqéÿÿkèÿÿgèÿÿcçÿÿ_çÿÿ[âÿÿXäþÿYâûÿWÞûÿWÝùÿUÜùÿSÜùÿSÚ÷ÿSÙõÿQØõÿQØõÿRÖòÿQ×óÿQÕñÿPÔðÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿKÃáÿK¿áÿJÂàÿHÂàÿ@¾Þÿ!°ÙþŽÂõj–Ÿ-ÉýPIÿýÝ{ÿýü±ÿþþÅÿþÿËÿþÿÑÿþÿ×ÿýÿÛÿýÿáÿþÿçÿþÿëÿýÿñÿþÿõÿþÿûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿþÿõÿþÿïÿþÿçÿþÿáÿþÿÙÿþÿÓÿþÿËÿþÿÃÿþÿ½ÿþÿµÿþÿ¯ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿ÷ÿÿ{ñÿÿwíÿÿqéÿÿkèÿÿgèÿÿcçÿÿ_çÿÿ[æÿÿXäþÿWãýÿWÞûÿWÝùÿUÜùÿSÜùÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQÕñÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿK¿áÿIÃáÿFÁàÿ2¸Þþ¢Õü€°ÜW€OMèÿ [ÿýô¡ÿþþÇÿþÿÓÿþÿÙÿýÿÝÿýÿãÿþÿéÿþÿïÿþÿóÿþÿùÿþÿýÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿ÷ÿþÿïÿþÿéÿþÿáÿþÿÙÿþÿÓÿþÿËÿþÿÃÿþÿ»ÿþÿµÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿôÿÿ{ñÿÿwíÿÿqíÿÿkìÿÿgèÿÿcçÿÿ_çÿÿ[æÿÿYåÿÿWãýÿWâûÿUÝûÿUÜùÿUÛ÷ÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQÕñÿPÖòÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿIÃáÿ?¿ßÿ°ÚþŽÂôj–žM×ÿQ[ÿýÜ‹ÿþüÁÿþþÙÿýÿßÿþÿåÿþÿëÿýÿñÿþÿ÷ÿþÿûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿ÷ÿþÿñÿþÿéÿþÿáÿþÿÙÿþÿÑÿþÿËÿþÿÃÿþÿ»ÿþÿµÿþÿ­ÿþÿ§ÿþÿŸÿþÿ™ÿþÿ•ÿþÿÿþÿ‹ÿþÿ…ÿþÿûÿÿ}ôÿÿ{ñÿÿwíÿÿqíÿÿkìÿÿgèÿÿcçÿÿ_çÿÿ]æÿÿYåÿÿWãýÿWâûÿUÝûÿUÜùÿUÜùÿSÜùÿSÚ÷ÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQÕñÿPÔðÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿIÄãÿIÄãÿEÂáÿ0¹àþ¤Ùû®ÛY‚P_ÿýŸmÿýò§ÿþþ×ÿýÿçÿþÿíÿþÿóÿþÿùÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿñÿþÿéÿþÿáÿþÿÙÿþÿÑÿþÿÉÿþÿÁÿþÿ»ÿþÿ³ÿþÿ­ÿþÿ¥ÿþÿŸÿþÿ™ÿþÿ“ÿþÿÿþÿ‰ÿþÿ…ÿþÿûÿÿ}ôÿÿ{ñÿÿwíÿÿqíÿÿkìÿÿgèÿÿcçÿÿ_çÿÿ]æÿÿYåÿÿXäþÿWâûÿUÝûÿUÜùÿUÜùÿSÜùÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQÕñÿQÕñÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿKÅãÿGÄãÿ:¿àÿ­ßþŽÂñk˜žeëÿRmÿýÊÿýùÇÿþþéÿþÿõÿþÿûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿïÿþÿéÿþÿáÿþÿÙÿýÿÑÿþÿÉÿþÿÁÿþÿ¹ÿþÿ±ÿþÿ«ÿþÿ¥ÿþÿÿþÿ™ÿþÿ“ÿþÿÿþÿ‰ÿþÿ…ÿþÿûÿÿ}ôÿÿyñÿÿuíÿÿqíÿÿkìÿÿgèÿÿcçÿÿ_çÿÿ]æÿÿYåÿÿXäþÿWãýÿVßüÿUÝûÿUÜùÿSÜùÿSÜùÿSÚ÷ÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿKÅãÿCÁáÿ%´ÝþšÌù}¬ÉY‚QsÿýR}ÿýÞ¯ÿþüãÿþþûÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿïÿþÿçÿþÿßÿþÿ×ÿýÿÏÿþÿÇÿþÿ¿ÿþÿ·ÿþÿ±ÿþÿ©ÿþÿ£ÿþÿÿþÿ—ÿþÿ‘ÿþÿÿþÿ‡ÿþÿƒþÿÿ÷ÿÿ}ôÿÿyñÿÿuíÿÿoìÿÿkìÿÿgèÿÿcçÿÿ_çÿÿ[æÿÿYåÿÿXäþÿWãýÿVãüÿUÝûÿUÜùÿSÜùÿSÜùÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿLÊêÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿKÆåÿKÆåÿGÄãÿ2½àþ ¤×ü‚²Ü`ˆQÿýžÿþòËÿþþùÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿõÿþÿíÿþÿåÿþÿÝÿýÿÕÿýÿÍÿþÿÅÿþÿ½ÿþÿ·ÿþÿ¯ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒþÿÿ÷ÿÿ{ôÿÿyñÿÿuíÿÿoìÿÿkìÿÿgèÿÿcçÿÿ_çÿÿ[æÿÿYåÿÿWåÿÿWãýÿVãüÿUÝûÿUÜùÿUÜùÿSÜùÿSÜùÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿJÇæÿIÆåÿ<Áâÿ­Þþ”Äñmš‡ÿþSÿþË¡ÿþùçÿþþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿõÿþÿíÿþÿãÿþÿÛÿýÿÓÿþÿËÿþÿÃÿþÿ»ÿþÿµÿþÿ­ÿþÿ§ÿþÿŸÿþÿ™ÿþÿ•ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒûÿÿ÷ÿÿ{ôÿÿyñÿÿsíÿÿoìÿÿkìÿÿgëÿÿcëÿÿ_çÿÿ]æÿÿYåÿÿWåÿÿVäþÿWãýÿVßüÿUÝûÿUÜùÿSÜùÿSÜùÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿLÉèÿKÈçÿKÈçÿJÇæÿ@Ãäÿ!¶áþšÌù®ÊZ„R•ÿþSŸÿþÜÑÿþûÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿþÿóÿþÿëÿýÿáÿþÿÙÿþÿÑÿþÿÉÿþÿÁÿþÿ¹ÿþÿ³ÿþÿ«ÿþÿ¥ÿþÿŸÿþÿ™ÿþÿ“ÿþÿÿþÿ‰ÿþÿ…ÿþÿûÿÿ}÷ÿÿ{ôÿÿwíÿÿsíÿÿoìÿÿiìÿÿgëÿÿcëÿÿ_çÿÿ]æÿÿYåÿÿWåÿÿVäþÿWãýÿVãüÿUáûÿUÜùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿMÊéÿMÊéÿLÉèÿLÉèÿKÈçÿKÈçÿGÅåÿ1¿ãþ¦Ûûƒ´ÛaŠR£ÿþ±ÿþïíÿþýÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùÿþÿñÿþÿçÿþÿßÿþÿ×ÿýÿÏÿþÿÇÿþÿ¿ÿþÿ·ÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ—ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ…ÿþÿûÿÿ}÷ÿÿyôÿÿwíÿÿsíÿÿoìÿÿiìÿÿeëÿÿcëÿÿ_çÿÿ]æÿÿ[æÿÿWåÿÿVäþÿWãýÿVãüÿUáûÿUÜùÿUÜùÿSÜùÿSÜùÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿKÊéÿLÉèÿKÈçÿHÆæÿ8Âäþ²ßýÄïnœœ©ÿþT¯ÿþÊ¿ÿþöûÿþþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿíÿþÿåÿþÿÝÿýÿÕÿþÿÍÿþÿÅÿþÿ½ÿþÿµÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒÿþÿúÿÿ}÷ÿÿyôÿÿwñÿÿsíÿÿmìÿÿiìÿÿeëÿÿcëÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿVäþÿVãüÿVßüÿUáûÿUÜùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿLÊêÿMÊéÿLÉèÿIÈçÿ8Ãæþ´âþ˜Êö®É]„SµÿþT½ÿþÌÍÿþ÷ÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿþÿóÿþÿëÿýÿãÿþÿÙÿþÿÑÿþÿÉÿþÿÁÿþÿ¹ÿþÿ³ÿþÿ«ÿþÿ¥ÿþÿŸÿþÿ™ÿþÿ“ÿþÿÿþÿ‰ÿþÿ…ÿþÿÿþÿúÿÿ{ôÿÿyñÿÿwíÿÿqíÿÿmìÿÿiìÿÿeëÿÿcçÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿVäþÿVãüÿVãüÿUáûÿUÜùÿUÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿMÊéÿJÈèÿ<Äæÿ¶äþ›Î÷‚²ËaŠSÁÿþTÉÿþÍ×ÿýùÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùÿþÿñÿþÿçÿþÿßÿýÿ×ÿýÿÏÿþÿÇÿþÿ¿ÿþÿ·ÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ—ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ…ÿþÿþÿÿ}÷ÿÿ{ôÿÿwñÿÿuíÿÿqíÿÿmìÿÿiìÿÿeëÿÿcçÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿVäþÿVãüÿVãüÿTÞüÿUÝûÿUàùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÍìÿMËëÿMËëÿLÊêÿKÊéÿ>Æèÿ¹çþÐø‚²ÌcŒSËÿþTÓÿþÎåÿþùÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿõÿþÿíÿþÿåÿþÿÛÿýÿÓÿþÿËÿþÿÃÿþÿ»ÿþÿµÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿ‹ÿþÿ‡ÿþÿƒÿþÿúÿÿ}÷ÿÿyôÿÿwñÿÿuíÿÿoìÿÿmìÿÿiìÿÿeëÿÿcçÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿVäþÿVãüÿTâüÿUáûÿUÜùÿUÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿNÍìÿMËëÿJÊêÿ?Çéÿ¿çþ Ôùƒ´ÍcŒSÓÿþTÛÿýÏíÿþùÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿþÿñÿýÿéÿþÿáÿþÿ×ÿýÿÏÿþÿÇÿþÿ¿ÿþÿ¹ÿþÿ±ÿþÿ«ÿþÿ¥ÿþÿŸÿþÿ™ÿþÿ“ÿþÿÿþÿ‹ÿþÿ…ÿþÿƒÿþÿúÿÿ{÷ÿÿyôÿÿwñÿÿuíÿÿoìÿÿkìÿÿiìÿÿeçÿÿcçÿÿaçÿÿ]æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿVäþÿVãüÿTâüÿTÞüÿUÝûÿUàùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿQÓïÿQÓïÿPÒîÿPÒîÿOÑíÿOÑíÿNÐìÿNÐìÿNÐìÿKËëÿ?Çéÿ»èþ¡Öùƒ´ÎcŒSÙÿþTßÿþÏóÿþùÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿíÿþÿåÿþÿÝÿýÿÕÿþÿÍÿþÿÅÿþÿ½ÿþÿµÿþÿ¯ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ—ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ…ÿþÿÿþÿ}úÿÿ{÷ÿÿyôÿÿwñÿÿsíÿÿoìÿÿkìÿÿiìÿÿeçÿÿcçÿÿaçÿÿ]æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿVäþÿVãüÿVãüÿTâüÿUáûÿUàùÿUàùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿPÒîÿOÑíÿNÐìÿNÐìÿLÌìÿ>Ìêÿ¼êþžØù…¶ÎdŽTßÿýTãÿþÏóÿþùÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿþÿóÿþÿéÿþÿáÿþÿÙÿýÿÑÿþÿÉÿþÿÁÿþÿ¹ÿþÿ³ÿþÿ«ÿþÿ¥ÿþÿŸÿþÿ™ÿþÿ•ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒÿþÿþÿÿ}úÿÿ{÷ÿÿwôÿÿuðÿÿsíÿÿoìÿÿkìÿÿgëÿÿeçÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿYæÿÿYæÿÿWåÿÿWåÿÿVäþÿVãüÿTâüÿTÞüÿUáûÿUàùÿUÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿPÔðÿQÓïÿNÔðÿPÒîÿOÑíÿNÒîÿJÌìÿ>ÈêÿÁêþ¡Öù†¸ÎdŽSáÿþTãÿþÎíÿþùÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿíÿþÿåÿþÿÝÿýÿÕÿþÿÍÿþÿÅÿþÿ½ÿþÿµÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ—ÿþÿ“ÿþÿÿþÿ‰ÿþÿ…ÿþÿƒÿþÿúÿÿ}÷ÿÿyôÿÿwôÿÿuðÿÿsíÿÿoìÿÿkìÿÿgëÿÿeçÿÿcëÿÿaçÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿVäþÿVãüÿVãüÿTâüÿUáûÿSÝûÿUàùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿPÖòÿPÖòÿPÔðÿQÓïÿQÓïÿPÒîÿOÑíÿJÑîÿ=Èëþ¼ëþ Ôøƒ´ÍdŽSßÿþTßÿþÍéÿþ÷ÿÿÿþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿûÿþÿñÿýÿéÿþÿáÿþÿÙÿýÿÑÿþÿÉÿþÿÁÿþÿ¹ÿþÿ³ÿþÿ­ÿþÿ¥ÿþÿŸÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ…ÿþÿÿþÿ}ýÿÿ{÷ÿÿyôÿÿwñÿÿuðÿÿqíÿÿoìÿÿkìÿÿiìÿÿeçÿÿcçÿÿaëÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿUåÿÿVäþÿVãüÿTâüÿTÞüÿUáûÿUàùÿUÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿQÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿPÖòÿPÔðÿPÔðÿQÓïÿPÒîÿJÑîÿ;Éíþ¼ëþ Ô÷…¶ÌdŽSÝÿýTÛÿýÌáÿþöÿÿÿýÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿõÿþÿíÿþÿåÿþÿÝÿýÿÕÿþÿÍÿþÿÅÿþÿ½ÿþÿ·ÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ™ÿþÿ“ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒÿþÿÿýÿ}úÿÿ{÷ÿÿyôÿÿuðÿÿuðÿÿqíÿÿmìÿÿkìÿÿiìÿÿeçÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿWåÿÿVäþÿVãüÿVãüÿTâüÿUáûÿSÝûÿUàùÿSÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÙõÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿQ×óÿQÕñÿPÖòÿPÔðÿNÔðÿEÑïÿ6Èìþ»êý Ôö…¶ËfS×ÿýTÓÿþÊ×ÿýðûÿþüÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿùÿþÿñÿýÿéÿþÿáÿþÿÙÿýÿÑÿþÿÉÿþÿÁÿþÿ¹ÿþÿ³ÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ•ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ…ÿþÿÿþÿýÿÿ}úÿÿy÷ÿÿwôÿÿuðÿÿsðÿÿqíÿÿmìÿÿkìÿÿiìÿÿeçÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿUåÿÿVäþÿVãüÿTâüÿTÞüÿUáûÿUàùÿUàùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿSÚ÷ÿSÙõÿSÙõÿQØõÿQ×óÿQ×óÿQ×óÿQ×óÿPÖòÿKÓñÿ?Ìïÿ%Åíþ ®äû›Îð…¶ÉfSÑÿþTËÿþ¢ÉÿþÝÏÿþù÷ÿþþÿÿÿþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿýÿþÿõÿþÿíÿþÿãÿþÿÛÿýÿÓÿþÿËÿþÿÅÿþÿ½ÿþÿ·ÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ™ÿþÿ“ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒÿþÿÿþÿ}ýÿÿ{úÿÿy÷ÿÿwôÿÿuðÿÿsíÿÿqéÿÿmìÿÿkìÿÿgëÿÿeëÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿ]æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿUåÿÿVäþÿVäþÿVãüÿTâüÿTÞüÿSÝûÿUàùÿUÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿQÚ÷ÿSÙõÿQØõÿQØõÿQ×óÿQ×óÿOÕñÿHÒðÿ:ÊîþÀñþ¤Úù‹¾Ýx¤¢aŠSÁÿþS½ÿþË¿ÿþóáÿþü÷ÿþþÿÿÿÿÿÿÿÿÿÿÿÿ÷ÿþÿïÿþÿçÿþÿßÿþÿ×ÿýÿÏÿþÿÇÿþÿÁÿþÿ¹ÿþÿ³ÿþÿ­ÿþÿ§ÿþÿ¡ÿþÿ›ÿþÿ—ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ…ÿþÿƒÿþÿÿýÿ}ýÿÿ{÷ÿÿy÷ÿÿwôÿÿuðÿÿsíÿÿqéÿÿmìÿÿiìÿÿgëÿÿeëÿÿcëÿÿaçÿÿ_çÿÿ]æÿÿ]æÿÿ[æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿUåÿÿVäþÿVãüÿVãüÿTÞüÿUáûÿSÝûÿUàùÿSÜùÿSÜùÿRÚøÿRÚøÿSÚ÷ÿSÙõÿSÙõÿQØõÿQ×óÿLÕòÿ@Òòÿ'Çïþ²èüžÒóˆºÊg’R·ÿþS¯ÿþ£­ÿþ߯ÿþù×ÿýþïÿþþõÿþÿñÿýÿëÿýÿãÿþÿÛÿýÿÓÿþÿËÿþÿÃÿþÿ½ÿþÿµÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ™ÿþÿ“ÿþÿÿþÿ‹ÿþÿ‡ÿþÿ…ÿþÿÿþÿÿýÿ{úÿÿy÷ÿÿwôÿÿuôÿÿsðÿÿsíÿÿqéÿÿmìÿÿkèÿÿgëÿÿeëÿÿcçÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿ[æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿUåÿÿVäþÿVäþÿVãüÿTâüÿTÞüÿSáûÿUàùÿUÜùÿSÜùÿSÜùÿRÚøÿSÚ÷ÿQÚ÷ÿPØöÿN×ôÿGÕóÿ6ÑòþÁòþ¦ÜùŽÂßy¦£cŒR£ÿþR›ÿþÊÿþò»ÿþüÑÿþþÝÿýþßÿþÿÛÿýÿÕÿýÿÍÿþÿÇÿþÿ¿ÿþÿ¹ÿþÿ±ÿþÿ«ÿþÿ¥ÿþÿ¡ÿþÿ›ÿþÿ—ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ‡ÿþÿƒÿþÿÿþÿ}ýÿÿ{úÿÿy÷ÿÿwôÿÿuôÿÿsðÿÿsíÿÿoìÿÿmìÿÿkèÿÿgëÿÿeëÿÿcçÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿ]æÿÿ[æÿÿ[æÿÿYæÿÿWåÿÿUåÿÿUåÿÿVäþÿVãüÿVãüÿTâüÿUáûÿSÝûÿUàùÿUÜùÿSÜùÿRÚøÿRÚøÿNÚøÿI×õÿ;Òóþ&Èðþ¸ëü ÔòˆºÉg’Q•ÿþRÿþ¤‰ÿþÞ‰ÿþõ§ÿþü½ÿþþÇÿþþËÿþÿÉÿþÿÁÿþÿ»ÿþÿµÿþÿ¯ÿþÿ©ÿþÿ£ÿþÿÿþÿ™ÿþÿ•ÿþÿÿþÿ‹ÿþÿ‰ÿþÿ…ÿþÿÿþÿÿýÿ}ýÿÿ{úÿÿy÷ÿÿwôÿÿuðÿÿsðÿÿqíÿÿoìÿÿmìÿÿkìÿÿièÿÿeëÿÿcçÿÿcçÿÿaçÿÿ_çÿÿ]æÿÿ]æÿÿ[æÿÿ[æÿÿYæÿÿWåÿÿWåÿÿUåÿÿVäþÿVäþÿVãüÿTâüÿTÞüÿSáûÿSÝûÿUàùÿSÜùÿOÛùÿJØöÿ>Ôôþ'Êóþ ºíü¤ÚõŽÂÞy¦¤dŽQÿýQyÿý¥sÿýßuÿýö“ÿþü©ÿþþµÿþþ¹ÿþÿ·ÿþÿ±ÿþÿ«ÿþÿ¥ÿþÿŸÿþÿ›ÿþÿ—ÿþÿ‘ÿþÿÿþÿ‹ÿþÿ‡ÿþÿƒÿþÿÿþÿÿýÿ{ýÿÿyúÿÿw÷ÿÿuôÿÿuðÿÿsðÿÿqíÿÿoìÿÿmìÿÿkìÿÿiìÿÿgèÿÿcçÿÿcçÿÿaçÿÿaçÿÿ_çÿÿ]æÿÿ[æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿUåÿÿUåÿÿVäþÿVãüÿVãüÿTâüÿSáûÿSÝûÿRÜúÿLÚøÿ<×øþ)Ëóþ ·ïü¦Üõ”Äß{¨¤dŽPkïÿPcÿý¥_ÿýßaÿýö}ÿýü—ÿþþ¡ÿþþ£ÿþþ£ÿþÿ¡ÿþÿÿþÿ™ÿþÿ“ÿþÿÿþÿ‹ÿþÿ‰ÿþÿ…ÿþÿƒÿþÿÿýÿ}ÿýÿ{ýÿÿy÷ÿÿw÷ÿÿuôÿÿsðÿÿsðÿÿqíÿÿoìÿÿmìÿÿkìÿÿiìÿÿgëÿÿeëÿÿcçÿÿaçÿÿaçÿÿ_çÿÿ]æÿÿ[æÿÿ[æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿUåÿÿVäþÿUãýÿVãüÿSÝûÿNàúÿFÚúþ:Øúþ%Í÷þ ½ñü§Þö•Æß{¨¤cŒOQÜÿOQíÿ¥MÿýÞMÿýôeÿýùyÿýýƒÿþþÿþþ‘ÿþÿ‘ÿþÿ‘ÿþÿÿþÿ‰ÿþÿ‡ÿþÿƒÿþÿÿþÿÿýÿ}ýÿÿ{úÿÿy÷ÿÿw÷ÿÿuôÿÿsðÿÿsðÿÿqíÿÿoìÿÿmìÿÿkìÿÿiìÿÿgëÿÿeëÿÿcçÿÿaçÿÿaçÿÿ_çÿÿ_çÿÿ]æÿÿ[æÿÿ[æÿÿYæÿÿYæÿÿWåÿÿUåÿÿUãýÿNãþÿHÜüÿ=Ùûþ-ÕùþÂóý·ôù¦Üô”ÄÞ{¨¤cŒN4ÑþN=Ôÿ¥;Üÿ¿9ïÿá;ýÿ÷Sÿýûgÿýýsÿýþ}ÿýþÿþþÿþÿÿþÿÿþÿÿýÿ}ÿýÿ{ýÿÿyúÿÿw÷ÿÿwôÿÿuôÿÿsðÿÿqðÿÿqíÿÿoìÿÿmìÿÿkìÿÿiìÿÿgëÿÿeëÿÿcçÿÿcçÿÿaçÿÿ_çÿÿ_çÿÿ]æÿÿ[æÿÿ[æÿÿWåÿÿSåÿÿMäÿÿHâþþ>áþþ,×üþÅ÷ýº÷û©à÷˜ÊႲ¿y¦¤g’MµçLÃü¥ÍÿÃ)Ùÿâ+éÿ÷AëÿûUíÿü]òÿþeýÿþoÿýþsÿýþsýÿÿs÷ÿÿu÷ÿÿw÷ÿÿwôÿÿuôÿÿsðÿÿqðÿÿqíÿÿoìÿÿmìÿÿkìÿÿiìÿÿgëÿÿeëÿÿeçÿÿcçÿÿaçÿÿ_çÿÿYæÿÿSåÿÿOäÿÿKãÿþCâÿþ4Úþþ$ÎøþÃõüÁøû±ä÷›Îâ…¶Ây¦¤g’K ÕJ´ì¤À÷À¾ûÉÊÿæ×ÿø3ÛÿúAÝÿüGßÿýOàÿþ[êÿþgöÿþköÿþiïÿþeïÿþcëÿþaëÿþaëÿþ]êÿþ[êÿþYêÿþYêÿþWéÿþUéÿþSéÿþUéÿþMèÿþ9áÿþ$ÒþþÎûýÅùüÃûú´èøžÒ扼ɂ²À{¨£h”IÆGžØ£©à¬äůèÍÁøæ ÎÿöÑÿò'Ôÿñ'Ôÿ÷%Óÿú%Óÿü!Óÿü!ÓÿüÒÿüÒÿüÑÿüÑÿüÑÿüÐÿúÏÿ÷ÎþñÅþò·ìö¡ÖåŽÂ͈ºÅƒ´Â{¨¢g’Fƒ´CÄ¡šÌÚÌØÊØÊØÊÃ’ÈÃÆÃÄÃÄÃŽÂÃŒÀ˾˾μȺŶÃ}¬¡k˜Bÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿü?ÿÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿÿÿøÿÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿøÿÿÿÿÿÿÿÿàÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿþÿÿÿÿÿÿü?ÿÿÿÿÿÿðÿÿÿÿÿÿàÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿÿÿþÿÿÿÿü?ÿÿÿÿøÿÿÿÿðÿÿÿÿàÿÿÿÿÀÿÿÿÿ€ÿÿÿÿÿÿÿþÿÿü?ÿÿü?ÿÿøÿÿðÿÿðÿÿàÿÿÀÿÿÀÿÿ€ÿÿ€ÿÿÿÿÿþþü?ü?ü?øøøððððàààààÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀààààÀÀÀÀ€ˆˆˆŒ1€€àþÿÿÿÿÿ€ÿÿ€ÿÿÀÿÿÀÿÿàÿÿðÿÿðÿÿøÿÿü?ÿÿü?ÿÿþÿÿÿÿÿÿÿ€ÿÿÿÿÀÿÿÿÿàÿÿÿÿðÿÿÿÿøÿÿÿÿü?ÿÿÿÿþÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿàÿÿÿÿÿÿðÿÿÿÿÿÿü?ÿÿÿÿÿÿþÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿàÿÿÿÿÿÿÿÿøÿÿÿÿÿÿÿÿþÿÿÿÿÿÿÿÿÿÀÿÿÿÿÿÿÿÿÿÿøÿÿÿÿÿÿÿÿÿÿÿ€ÿÿÿÿÿÿÿÿÿÿÿÿü?ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿhakaishi-shutdown-qapps-543a9ee/qshutdown/src/pixmap/info.svg000066400000000000000000000063151515201227200245060ustar00rootroot00000000000000 image/svg+xml i hakaishi-shutdown-qapps-543a9ee/qshutdown/src/pixmap/red_glasses.png000066400000000000000000000346171515201227200260410ustar00rootroot00000000000000‰PNG  IHDR€€Ã>aËsRGB®ÎébKGDÿÿÿ ½§“ pHYs  šœtIMEÜ  +Øã2 IDATxÚí½y$ùUçùy¿Ÿ{\yVVVÖÑ÷]­¾»%j1HÍ0³ºZ¢Õˆ…µÉ`Њ1ÃÄaÀÎ ƒÍØ,³Æ² b€!@¢Õ¬VHˆ[Òh…º%µÔÝÕU]WfVVÞ™áî¿ßÛ?Ü=Â=®Ì¬ÊnIÐaæ‘þ}ïûÎßûÁ ·n/ÜþáÞäïëûþ-ß>=ÎÿRãzï»óQúØköX{Ûô5‰ƒí'––ùíúþìø:½}òÿàŸÎLò}µ1® ,6°Ô¦g8Z¨Ocgì¸Ô[À@’¾Q=à»÷éÿ=š8UÑ\—åu‚ÅEV–.2ߊhE1n³ÅÉÅ%Þý¶_ã£/À×àöÄoM½úðlû{ÇÆã+Ôƒññ«˜¨Í1˜Iƒ©Rã0>Ðö@I6 Iø¢@àS9Ñ´—е ¸¤©¾ÙRã—ýÅ5õ‹‹,/^àôv›æv›ÓKyÏ[ÿo>ü‚·ªñæE’¥gýÅ•­vÆŸ8·ÀüØ»øÀ?hðú+Aë¡Tã9 WWSàà[ÀßYúÌ€+ú=x°I¿ýW?D èhžG@SS› €·¦#TÎÅødSu{!c„­öü" g.ðÉù <òcïâѯökþôíP¿ŽÏÂ]å:fD© ¤¤yJê½õj¤öܧ® ¢T»‡Ñ-•î{ëÒÿwU¹pÐs_üœ‚ö£¨$šŸ=§‚H€±!œÓ8 ‰z83±99^s××+É \üðgùò?ðúá7Bë à_æ˜r<ŽÑL›…J ¡•1@έ!,Pdƒ.('eg0É¢€¢ÖÛdp ~ÏÚïÕBIP¯™8zÔ+^=êÛh²¢¬ždñìb|nžsg.ðñs‹<úã¿ÁûÿÞ2€×¿|#ÈÛ¡þr¸í ÜŽˆP!Ì47½è’Ùqéh|QÓu€6úωdÄaŠ§È´Ýx0®û>“å„K`÷jþÿ‚ö'ŠÚTûÕH'ï¬^Ä *!H]¨NIm¬j¦kñäX½}ãX­Ã÷÷м>þ0D‚¿*WÂñP¨õ}¾vl~ Øîah bT«¥Ï,Ü皯IOÐkÿw¡ýZ¤~ß?×~¯¦sŽNÍÁ{Ôµñ­uµÛO²pæB|æ?@óÓ*R ºÝhÿ ê/jNýÝ&AÄuAÄ€†¢Á„ŒM8[ÕõÙJÀñ{¯ci¿…Àî¯æ%æEÂxx9QFÊ~,Ð+LxÄû® èøÙ!”}-²KžÐÑ>íï<ö½^APv¤þ|ïMc*h¥!Š3U·~ÐÏÌÁ—¾îÀëVŸ¦_TÐüË/•|Áe€Á¤Zœ:‚…Ì §lF|¯9éÏ–´ß jè&JÔÏPêï8~êïÞ÷HŠp!ŒK­®¦*kpüÞëYúèçö‡ ìþ€ÿ™‡!ø)aò6anßÀÏÈ´¤ñ²#ôš‡Ì xßv(Þ§I!?H zÌ´?ÿÈ=S¿¤þ®OPxƒ#M[Ká˜ÔƼ©êúÁÀp˽×sq?„À^>øù0ØŸTê·®Ûg𥠑ÉSà†@H1š ~€ ðzÍGVá+fýð‚ƒcþË¡þ²3U'10 ©W"cu³\®ØËÿCƒy;4n3ÜQyn2‹©VæN @w»dŸúJWJ&`„ôи ;kÿ%RIûµç Dƒ1©W"kus&´Ü|ϵ,ÿÉc—.öÒÁÿý‡Ÿ€úmð’št6ö;Wm2­OJ‚À®X  ¨øB}Çô–ñ7í³Â u¡£õdYºœ |¡o?}WÐè¸çq2Bûûsâ ‹C¼O§@øþüæ-\Iú É:‹z›BŠÚ˜/5Û·Wêï8Ÿ±I³˜uÙÆ‘›:~˜Sñ_¹,0cÓosD˜3éj¼7Õ~éhþ 6heëô.—þ“>M/USvëoBÚÉ;"Kà¼t´¿¨KÈöíüì;jÖvNeR‚Écff’£syÃe1ÀÅ^óúúñ‰·híæƒÂõ™ö¥¿…ŽôzÞÅÖ¬=2‚–´9Î@ J Œ`Üà ®‡´”,ï!.DÆ¥‡Ï>KšõªxÅ«vl{¯ö÷:…»¢þK ùzsÙßÀƒ“´ReÒÀ&Ô‹¶¹©[pr Åǯ¾éQcL`­%´!µ`±é§ÍÑt…nEº™T àY&È@ ²uûIöPÉB–<§ì|7œKAò‚PÂànà}ö6ŒÕ¡‰ž\û»6¿à&ì<ŸÏ$3 ä£c6‹ïê<©?ð©ªEªcb'Žš™™SG+ߥÕÈïÞX€«ç®œ²ÖþÇØ%¯{úÙg,À}·ÜMc’óž++é*]2ê÷%à‡ BP„^a0Ùß…l½ ™$;gwÑg5°÷½{p¨’Œs>éòb^øIs£‹<ÓÔ¡ä ȤKë8«ea)P|-4•–Á÷ $øÚ?_¥R%¬`fòtu|Ü¿<´!±ëT±É… m—ôþ—Ÿ9ê}úì3“ðÙ¯<ç¦á˜š”WâVϱ=Ð?èõ ú×üukaµö…}Igý?Ca¾¥-® ,p¢#~p¥O=ÎKÇîç5&ïé„»1¸½v?*îž©ÇùTHÔj9’pEÿÅ Õ ±µ£æê£L¿îžø³À²#‚?è|JâÝ{RL²ý—p`.& gŽv‚aBQ^úÅþEŸ¹HássažYÃ,àzÀÂjú©½¼ª§LÓ)p¦Ÿ¶ƒé7ìœ62ˆu$ý,—Ùí.[ëúœñ!•‰Žľâ>33ðAH×ä¯/2@ãÈÌa®8x´ð…wU_[?pðÂY›Ú~?üâš¼Ákù^é!Êž‹:,PˆÞ”o²3ðdYß>ÀË~D®ÑC =½þýËk°cÔAb†æ º¦†tª—jc*¸òÇöMƒ EA&égdWèàLü0c•#¾1“{’LV|!‘âûìz¿­/Rxf½nƒÇ _  ’ôM¶,|ô ‹ôºÎØ—þÆ¢ãW*1ׄô:‚ɾäñËßwí>‹(÷-lV•2®æƒ)œ–êbBLcV¦Ç׎LOò0ôO. Ò*ŸCbLú!c5½’`.H'uP àå‚0˜ðÒy\ˆÊ€ç‚Âë y—ÏàÔDïÄ®QBàI¿om8+¸âeˆ–Ò€AœŽ€SÓÕº‘¢2f*Mw©v´Þ9EÕášøíe|Û#8¼šŽ›¸SÜÞÑÒ¤®hbÄôYø§Àkœ³˜;Hè¨ìoE*#3Hh¨Œ3Ù lT¹b(¬l¬šÓNTþÛÇ~ß›œiÜH5Oü´P–0ÛËüúÏ>ÅÒň 0ˆXŒ1Xk»‡Xl˜þ?¨Xk «ésabCK¤Ï 6´©MsÑ̶Û¶2šURuΑ¨ÇÅŽ8q¸$&Iâ8ƉðúïªÓ¸ùêLˆ"Œ÷¨I…B’6Nòáß‚¿üäø$£{Ÿž×ƒsŽØ9¾åÞ7iââ54˶·ÚüÅŸ¯óþoâ}‚ú=ýƒœ÷Üþørð#"åçŠI%íONuÈ·ã«ôØÔdùþ5*k“Ôo Å6¦ÌìÌÚM?û&^õoÞ[y›û¼â½1ü3oê㇙hˆñó°ºÉ¯ü Î/¬ñGŸ„ëœ0k,¡µøLŒ±Ù½ÁÚ ; ¡ 0àés¶t`E0Æ Ö¦×À˜~ð>ÕcïpÎã½#vI X³žÄœI>óÄ·\suJ´áP^õš*/ºÿzØ^çßûÿçïlqèàíÜ}ç]„aØçÍf“Ï<þYþö=Ÿek£Ík^½Ä§>Õâ#µ…s)åF.á©ÓOŸöA¨K¿ƒ·ÀôpÙÁ[Ä•¦=l¨r.ŒYZÙ¤*?þÖ#•ÃQÂ÷ßß_T&ê㱈ßvÜ,ü—Ÿ7‡ŽÜy£üçÿɹÅU>ðqá[m…«l…ã• ¯lGmœÍ4ØZÄÄ#¦’œ H®õA€„!ÆL¤÷Æ`Lú“v:™òeÈ55?rÀœsø(f-nólÔæ‚Kˆ’ôX‹#ÎyÇ9Ç­WǸDyì„aöàüãüí\sݵcÒsønèvâ©§yÿ~€óg?ÍuGbN.Âé3Ê\f\rÃ6i s@u ïäê]Š3ÙÛûfÞÚ†*Ϩç¢ÂÉjÀ·A½ê½7¬û÷|Œ¥ÇÎq8ã“ÞÝ€±úXl VyÅmÊ¡ƒ–?ùÛwÅ 7Vjõdé\·Þrœ[n;Ω'ŸàÑ}€O}éËL¨r³1Üd-7˜åê#W ­-Z«Ë,¯¯°Ç0†é/C@†±CÑ ³ÒÍ­¶€uïyF=DxÌÀµZ|u! ñIîÔUK©`U}³~½·ƒ>.ãxe¯ *Üwŵ¿ëìÔ$LN8…Æ1rþ +I‚MÔ*F VÀ(QŒÑ¬>•6uYUŒWÄ:Œ; Ö &e“7`SÒô0Œ‹ªBœ >FcB=5õD>¡§ˆZbh{eem…“Ïžb~qSgŸåšƒ§yàe>NpNùè'[<ò¡/sÍcWqÕÑ9fg3%_å&w…!÷¾Š›_t3³‡QçØ^^bå™§ñQD;^-ê%°ü´~'!Éi^òž@‘’;žãÀ´1ÌaXQÅ$1?ßq$bà-}µ€íÖöo½é¥üë¿øÊÁµ¢È8çxYh¸½Öà肹CèáÃHœÛÙA}VÁs“8|œ2AÑW0^ Õÿä^xÛ[f¹õÞ+ÀÔÒŸ.TT÷¾lŠ[ï:ÀÝw.ñ7Ÿ¹ÈÇþf§Ò‹Úh4˜˜šÁVë˜ @·¶ñQ„ª"ŒYK³§SÄ‚KÜïpÎQÍmùóu1Ô+¡>x·÷7]ÃÂÿ81¤xå1ìƒoDÆ«üç÷A²ÝFâöñÆa’vûh½J{c“$ŠðªÛ§jP“R”¨âŒd´­ç1qœúZMi\5’1&]uk óAf ¯ïïL§B©]ß )‚^|G…[ï» ªÇ²Ü’v{ˆI}ŒJƒŠ†ÜýÍãÜr»es«Å‰'²šܦµ¾šæIŒ­®àÖVpq†³Ï{m¾TÖêz»p«•WÞÛ"Òò×(½w¼N]ƒ‚G<ËœvÊ…­MX 0'ž¢aÀÍóçØ^_ÎhØãDðÞc5[g Në2_Àe¯µÎaL„¯TÀ¼­¤?LR_€$I‡#d4ç‹Iœ*š¯q Ø‘÷$.ÁyOâ=I’°íÎÓtk«…Ÿ›gý’NÌ­±fìÓ I*´UÙ¶šM¶NŸ"Y]CÄã77in¬ÒÚÞ&v©#Ì¿œž(3 àmv01½#`E=‚•z-4Ƶëà÷~šoŸçJ*5ËGâ6ã[«Ü“´˜inÓ8ý f|Šd}…ÍÍMšÎá}NÛÍ 6ëò"„™€ˆMÿîÁ¨bšÍTÃ¥…ËÌAz„Ý‚à²\«Jš•ó('©àA ¶wDÞÓÒ˜ØAÛ{6}ÄÙØñ•8bµ1#I:3ÿS2MëæDºËš*O{Ï‘íM,œåàö6 Šš$­ÛÑ6­V*”#ì½ÙÝ¢ú ܾ¦/ÜGÀÓ.áo¼'ªÔÇDêÒ¾êg¾‹þÝûÒ„PG&|ïô ©ÍBeœŸó~ì—+¼w»Åº‡;’˜ñÍUB{>"ÕI»ÿø,©ãDõX1hÚÙkM®ÝÆ`œKÃ@×µý"mÁ¡©PåiÒÎ pš2Š÷§J[c"¡å[.âtâx,‰y åå÷ßòÒ‰Ìö÷לӬ/ûMvŒozé4÷~¿þ\ŒmmãÔqÝÖVšøñ1¢Šf!è(šÞM¹g'¡ð#„Ä`€Æ÷B4ª\[­ÖÕ0Ó|ÏÜB»ýE~âW´Ýb›KÃ¥VÒ…ŠV+1 ‚q©CƒEÔc§™£§iE|z“?“z÷Eç?ï§Ác3SãTIHˆ3AHÁ"³ícÎ$ŽÏ%1O«çþ{„õ–Žß{uê'´¿CýêÊÕ=Sã®o:Ê[Û-Tøøc1¾Ùd3Š8b µBå£Ò£}£ÊZfNŸáìÄmUžq Ÿô޵Z…ÿí ßùÚ£„¡E¢ó®Váš>` P­uƒŠÆqþù÷Ÿçí¿êùh3b3¸ÒXfŒaL+B(š%"Ò,ž1‹!v›Qy7^$39@:éLÓ}ìŠiÖ,lʵމxO¬†X¶½gÕÃ9Ÿðå$IÁ¿~ô-‡¸ý¥7‚™î\œú5öêïæR¦²á÷Ý oUEu¿~ƒ²)&,}õúüà¿Lpþ ~æ×…¿ÞŽ™tŽÛlÈ1c™1ʘ¡‚'Ы+×€€ Óî`› Dþœˆ ÙsÚkÿ Ž ŠtÚBr3ÐòžuçÕq"‰9ç=+b:àßùÍ×÷€ï3»ï{:yµÓ ®ëÂê÷½4þÛ"ŸxܳæyáZc9$„¡˜‘ËT/%`ÐPÞ ©Êš*KÞó´z¶Dج…¼õÁ ozã1*Ãx*ÀVV‡&[ú @ýfÞü#žZý4çÏ­ðßçXmÆLù„›Mmï`™6Ð0ŠE´k&DÀŠÇJfç}Ð -0„–™jxéY꩚I:l¢¬{Ç)ç8‡gá%· ß|g•W¾ò·½øª¡à»vÙî—[»3–Р1Í‹_z5?„Üõñe>ów[|ú‹ž .áWË8žº+0BrA÷;ÔüÀIÍ„"­Ñ®{ŸyùÊ ïØ¡]3|ÿ–ƒ3S<ôºi*cÇR˜µÃôv dýl¦ÏÒHj¾ÿ‡g¡uŽC³ Ì/®òËĬ¶ƽp£±1¡ž6­”j‘ÌL“®ò-Þ«ùRÈå‚êiª’`ØRÏ ïXÍV#¬¨òÍw(/¾cŒW|Û4·Ýwitj©]¿ ~Ç()øùX‰Á6pß7U¸õ¶Üÿø2ÿ›eþ¿/móé/y½£ªÊ”WIjMV8šƒ•|¹F@±Ål$#äš/8õ´²BbU.ªçÙ,ÂÚâºå{_phf‚׿æõúN¥» Îø¼3V½ô:1`ç :Íüèüö<‡Ì³¶Úfk»É¯~À±ÚtLhÚë+ªÜà-sÆŠvÀߥ÷ «¨…bØ,,/Í™‚Ôo§œgAš +"Ü·rÏñ •J…—ë$·ß7ƒ‡@j%ýÉ«}ª1|‘|Ix·:¨VÓÞ;;Nm¬ÁK^:ÁwMóùÇWùÔgÖi·Û<öÕˆO=áXTOMÓß?\i,ã=iíâÕ¯õLà7T‡Ú~—~Æ{¼1x`K•¤nøžWXj•ÕøÆLt¡uÝ^Aí¬)dz7LÌ7\,6N$s˜ú ?øÃs I{™cÇY]PU6×[üæGb–7<“ª© RÒ‚¼—åjc7–3Þ³ Ñ`R ȼ•–OÿG÷*wÞZ!41!¯ø¶IŽß=ƒ ê`ð¦ÏÙÆZ½|ŸMýò>í·— ’|¦ƒú,QdǨŽ5¸ï›pï}DQÄ_\ããŸZG½#оx"â_ð\PŸF =…ŸMmGÅ¡œÉhÅå3¾²¥ŠŽ[Þx¿e¬QE&Ç*<øêiÆuTBl8‘v9ÒT|±QtÈü¢`¶CœIDAT¤[’OÅ”£²sé ªsüàIÛ«ðÄ›+\uÍE–—[¥¢N±3vs³Å{þÄóÙuO5QÖDxõý†ã×T ªâû»\ÄX¾ãÛ§¸õž)ÐbÀŒ´ð]-Ö4ÎW—õìû!àûàkg:HÇQÌ«›¶¦F5ôÜóâiî¼»‰àˆ£6_úÒ&wb U‡x¡øsÄ+±w<}¦ÍÇ>§,jJãµ)˃/3ÔjµTî}9 ÂÁé*¯}Õ4cjÖN ÁD:n¾°VI­ mj-n’ÝoèÝ=si €í< §æøÁZÍ,÷àäf{+æ;_ߢÕôÕ´¢}Õ•U¦ç‚À OŒšZj×%èû>yïžV×äZߥ|×S^î_G€_¸ÄåR®ÓÀ„c鵞[ïØàƦ±%‚ LÓÔÏ<ÝæÕOC½ž2d}ÌrÛÍJµVÍÖt7£È©ˆ ÁN¦+ ßAŠM¨¶ÛÌÚ_€¯Øè—ßkûBR؃¯ ¾b1Á ·ÜcÓì¡zŒ<ïâx‹°–/É©¤GFáFéÀSÍzð»àtÃ9_¾»iX1ÌëÚüÁ´?ü‚p…À«ÉÖ(v¯µ;Vë8ÑΧ»’ˆ+&H8võA®¹!Ìr!©Ÿ"8ÔofàšEãBöŒs…5 ð{©¿Ã^ñN& È %CòVº“”¡7A*xB›­† Àä+p5m¶©‚í.šè¬Ê M'á|·õ¹LÒ ãzïj~ù5û~w1ˆIg9Ú*a*d&í}ÌeD‚ô:ÔÆ´0@06@$jéùóxRl5ï.WGKàëpðK·Q‰ õI|fRü.AßC¶[»IQézÆ æJí®¢U×Ù—§J z—^{{ô @1ÔÛ?ð‹¶5mvÑØ¤?ÙêÀ>jÓ>ÈðI@J˜1ÌpðKë }& 7_«—צ– òõ¶ðË€²•¥Õô/Áòeaè.Ò´‘£ïIâ ¾ïNïÐŽ#$èþƒ_\¹›3j"å¿e¹c!ÛnΙ²/S¸Nùºƒ¾¥eðûœ>GºX”â$S“nn”+'‚Òæw»·âåÎ,ÑÛÿ¦Z4²~ùâJ¦ ç‹3w:oï2­>À:Q]g×YQ#ŽK´ùCÀ×.øÅ¥ÛzN Þº|=G‚¯#À§ü’IqÞU ¾²+à÷¸ ¹`t"#…I[qñ;éŽà\–U¾øºœòsð5éYu³KðGNìH. üQsú®Ãn=~Í—•¥áobÊn`GÍ–c,Ú†Údy…ÎŽ û!¶°‡º“þyx3ðG :r §ßÏ2LŠóùsð:”¯ƒÁOß{‰´¿àµ »ÙÑN_.ÈQkµiEin_fr»ÍW—×1Ú¼˜%uz€×þÊt7ž–ΞK} Åé~:ùQ|]ÇÃÏŽR|Þó·üH×çi‡F9Ý«j—òU;ö>_éÎðu¾À;€_f˜x{ƒí6µx²O–Wx÷ê Kí­Tо§.•N³èR`éb¨/ƒ®‚SZ/ ÇÕ¹}Ÿ[˜Añü ’nþ÷.ek‡òs{ßÙØ9(¾žÁ7ýæ¡äñÁ‡²/’ÕC\´Åf“¥õ&¿Ó'ÿòÿâ˘íkž1ëíC |œï¡›…7Iºx!5é»)ÊGgˆ·ï}ð%G)ÏŒ°÷ßàÓò£<þõ矗xD›ººÆÙ_|?Ÿn6iJ{K½÷jmj`‡ÚöÂLµÙØà¤ð›9xÉ WB{$uwa£²»Ö G°³f^ûï¾Vw þ ß^ õöüAY¾½xü¥óä à5ºí[Í¡™ÀÄá¢v˺m¼Ÿ@ÄîxŸîœm‹UÅ2àez’~Ð8˜Ãœ¼‘Àç³ïR´õ£´þk~×áîíüüšåÁ{ø¾SÒŽ›1ͶªïãZ¹ÍÏ,oàÜöZ¶øb€}ïÐ|:Ë+ÝmÓ“‚¹ðe;[ÜZ¥ïœ=à;Ÿ HZŸ×ßKõ%ÓÑ}>H©4Xaå_ ø^Kh¬¿ðóÏ>q‚‹·Øl’´"N €¥e~gy ñÊZ7 ¼ |'¬|¯F½îÔ-JÙ¼aÀ÷Q? ±–¼ü" ¢üÜiÜ-øçk?Ágà3ü|b7 ~{]7›\ØÜâ=Cà_ýþré"§|²î%nö8v{^QßF½ ü@go€s7hšVðš…wn°Öïdï‡&xF¯û þ€,_)ñ¨U×­î ?W«à#|¼®Ë+œüÅ÷óW#«›Mš~kU½k)¡D‡Úø’cUpì\Ò$Z;ƒmLTfJ5ü^ûß;{PFlàÈÕ¢Æ[†ì¹Ãžìý O¿~>˜Ñ10·ÿ\ßiéòޏ½B¼Ý¤65‹1•¡™Úâ9ãV¬qÜö­¸ììVÞnsjiÈm¯ q|ÉT¿¼°Èç¾Zå·~ûË´[+CEEG®˜X*jü0ð;]—îK?~ˆÖÿÿ>êÙÞÞäƒ>Í_^ÁÇ›)6Åp/ %¸í 6›Ä­ˆgw€åÞ³¼Î|´¾¬øVÊíÕÆ'TC%N”­MÇü™Å¡Ž\îèõæFÙùÞ¼¥–­¶~˜½ï¥üA1~iï×|ï= g7X[‹Y߀¨•ÎDèßö\'×&ÙZÕÕUίoò»; ÀÛ~?Ÿ_äÝZðÞmkÞÙ³7çÎ ¦ÊT5¦é,§Oo¡®=øâÖ*ƒ.ÌHàhýn) ½ßM‚gàçB}Yà+\¼°Æ©S+Dí„ÀøNˆ^L¥~Z·Æ¢VñIK}´ê—79ñKòç; Àê&'Wˆ“­åÔáhçýPÏÔ+„cT+Â5GC>ü‰-ž~ò,q~'ºïsøFhýn)GOHvo¯àów ¾ª²¼´ÎÉSËœ^hrëµ–k®  jm9ÜËÁ·&m‚c¢­MV[D›MNŽì ,™U~wyƒWº¸x»B$K-b¥ö¤à;’e*LŽ¿qœ'Ï´ùÓ¿Xà‘pôÚÃT«éð¤íÓ„À'J`Óù·Æ¼x¢f‚1Nm¦‹B“¶§R²õ…ÇC% PÛá^ÜÂÅyÅúth…‹f³HÛ|H¦sÃ,K»³¹µÍX£JµZÅH eç¢$ _c%ŠÓñuõZ•°vþ5=¶’~vµ‘.tµÖ¦¤’EYq[1xLÅ·+Êü…U¶xöô:³Spìp…CGb«õ¡àã2pm’öª®¯sn}“ß„õÐÝŒÞÿsüñËïá±_HpXT¡™»A©\•Öö2+ÖX^YçÝXæêcæ688[¥jÕ€uÅy%ŽahQ•lBŒÒŽ1BP1„"´#‡sÙ¶o¬Lq’:‚¶"TêQ+Ý0 $ýXH\ªÅN$Uèì‹K „Az)âDñqªy¤¯‹‡‹Òuµ±€8IÕJQìI\–‹Ô ;‚  >ÇÙÊ$ ‡Å+6L3¨yû{XâÄ'Š‘´>Ÿ\ÖÜlrn~“£³ÂÌÜ|ë‰#ÝeœI¢9øêbâÖEÝZx"yì+|ìÇÞÅ«wÍ›œY\¥}õÊB`ÀƒŠÝøŽæPŸæ€oÚ:ßýš)þúÓ[œ<·I³ÕÆ{O«™‚ÅuBh…ȥ͟A\œ¬Îiº-Žínòí¼¤mäš.2u>]·–»Âø[ç•ÀšŽÏbMzδ‹Wˆ2­¯V,Iâ;ÏÇ‘bP«§ZÙŽbœ'q`ƒ´»Ø'Ù,R¡õ¢lÚ¡\ªv* Ÿ¤¿/»;ˆåNª5){h× ˜žjP›šEØ|UÔ´q[Yݤ½ÝæìˆÞÁ·åM~y™o½âØé$9j|XAv^Š” •É#LÖ6¹i²ÉÜìêµ#°¹¶Ms£ËŒž˜0pœµP{¥°RXK…%IGËI¹–Ÿ><© i±ÃÍ)O +”Mó×wÎi 6:ÿíÞgŽY±!ZY09ŸÃ*ÞxH¼Kº‰1M7—È \V²FŸ˜N‡”ÃØD•‡¦¨ŽO¥£nÜðMšúMÚÛê[ó~y…³Ãè¤ xÏOò®{_Ä?;víõ sðfQ©>½ø:pÿœôÿÜ*Å¥x¿kk5퀵Ù¶*iŸSiǾÒÀ~ƒRMA5MÒìRCLõa:Ê™tt:¦“A‚VÀv7\Íæý‹E Á©óæÒ¨Á‹A¼C½C5Éfz!~+[†f:¿Wc—Þ'[xÝÄ'-¼Dh¬X«²y¯*:× 9€š*¶ZGŒí c ¾MšD«ÏêÂüÙí/Ÿäwßþ[¼yÏ 0÷Î/ðfçÎ\ÔÛ¥¼*§ìh ?]•“9vjùâªY=—²†7&]“W27&ëRóïÚd×[ÐÌ&J0¦†x‹HˆJˆ7“éßçQ;vêQ£ÛXXqÍLû?zÙù°x³ñöiO{Us%à»vž³x­Íó%Gq˜0íÔ²VÊçhàØ øƒöò þ¥Ôó/|“&Ô\sCã­ó.Óþ?Ø ¶»Ú=ü£Ÿã©ï¸»kÞ4=ÖªJ}ZT*£ÝËîéÞuwÂè×øx†Ò}øîÅÕÒÅÕ®Öû‚Ö—j…Æg@™bZW‡ ÛHð‹‚bžðKÄdÒbº-üú³œ_jm^äÃÿûïñŸvƒí®'™Î_à‘ùE_<·ù­sê]ÔWÊ¥ñ{¥ûËÑúb wåw¾®õ;TóvÊëêcx.ÀïÎ3ÌšQ|Bܺ¨KW£åU[^ã‘ÝâjwûÂ~ާ^r#óã5´§ƒú¤˜°–Ž+´\õ¯ðÏ—Ö«éì§›Öï÷NùÃJ¹ªýŦt‹¶åËó ¾KˆÛë­žòçæÝɧÏðÓ¿ø~þxßà?ËSÜÍãõø–©F«¢ö€HPeàò=·;àA÷Wëw¢ü]Øû^Û«³W ó†ôðîÝæûr¢ªâ“&~ý$.nmžšçC?÷»»£þ]‡LÁ£³SÜZ«\|ñlõlE%*µ®5qýëÿžsº/ÖîUºË±i½ßÊ ~iþà%[;?(ÃWüMÎ â[$­E]^^m/-óù¥Ý+žv¯oø“Çxò%72?Vã¥S•iÓ˜J·•ÏG ê(àGÓý¾jýeRþŽÎžì|—mï–Q~Q HthIw$øµW5^yÆ[ÐOŸágþý£|ø9€Ì<ùÊÛ¹³Þð7MÔÚU©Œƒ©ŠˆÙ5ðûjë…²­/¼ÉV¢íÅÞK¢G~Ï‚§¯Åìž2Šf@v¯·kàÇÑ–²qJÏ/µÖO/òá½Rÿž£€>S°Â/ðÅù³Ë­xõi4YI7RÏ¢û:;j}±cÇ Öú¢—¯C:»Àã'Îòo÷ü}€¢TCއ¬ªU«Á˜@@7:Ø=ݫ߅‡?Hëu§\þ”¿ö~P˜70Á££¾œö“­3º¶¸[ä±§Ïðoö ü}€\óÖp<”C•0±¦Ò%è8†ƒï§{ŒŽŒë/Wë‡R¾°?ö~ˆ§ß—Ú~:Ärß|VWÛgx|¿ÁßwèÁµœ·Â-³õ°e Ç©RÚ³pðEº÷û£õ»rôvKùƒìý=ý¾ì§õ\¼•zû Ûóxl?iÿ9€<[xïuœ-7Ý>T“ÈJµØ,Y4ÄÎïàä öð÷îè]2å‹öeöF:{£<ýÒæ€½ào¨_– KË­ù <ö̹ýqøž7È…àîk™-7¢[³ ¶L6•41eàwpò{ø:2¯°££w)”?0­;ÀÙÛ§ï ó}‹¨½ªnýY½°´ÚÌâüËõ¾&'‹î¹Ž…ÐrCÒnM4ÌREñ"A(H˜N÷€F÷âúQZ_,ßî¨õ—Cù£œ½]d÷ð >i7ç5^yÆÍ/µÖ.®ðùgyç/>‡à?ç ÁíW°ØŽi¶#’ÖêDÝl[1‚PÄd£²{€ß«“·Û"ÎÐÄÎåP¾áìðôs­£ õë'Y^\hŸ™×§Î,òÁÓ üÖådøv{žÇÛ/þs^}ý•üÔÜ4·>R¯N5Ò8,ÞLv—;{ó‡$tv×Õúž\D)±3ÂËß°÷ÃÀ÷.Á%M|´¤ÉÚ9wa5ÞZ\â ÏÎóŽw<²÷ªÞ×-ô²ÁW0ßlÓl·Ý´&«5šÖˆA0¢Æ¦ÚnÌž¼Q©Ü>­ïqôvKù—dïsk•™7uu-’hMýƳ,/.Dgçý‰Só|àÌ"ÿõRJºß0 P¼½ãæU7^ÇOÎNqç‘9Ƥv• Æg1Á¸¤{™¡©Z?4Û£õé®[C²z…ø~×ö^Ó®]õ1I¼­nó®yÞ-®²µ¼Êã'ÏñÎw<²û6®oX(Þþô ˜±Y©Œ#vLÄ„éþy¬Øn=ü=i}ï žÄ¥÷¤³xÔµI’H“­u\û¢F­Ídu“öê§—Öùóå5>¸ÓBÍ _¾cz’7Ô*™á¶éq®š# ª“V¥:>¦&*!FL(mHuÉZŸïù÷Î#Né8é€î£eÛnu“x}ÓË<±½Íüz“GéQ>öõz¿® G¾}r‚‡U®œáøô8WŽ×ÃJÕLŠ­OH¥Ö€°†˜tÏîtWÏ 0ÜQìž.èjéÎãÙ¬DŸhœÄøæ&.ÚPM6´ÝnûÍ&Ñú:g—Öùòö6§3Ðÿôáº~Ã@ñö3ßÅ“ã c #FEFFB7", ", c #FEFEA0", "' c #FDFF8C", ") c #FDFE80", "! c #FFF577", "~ c #FFED70", "{ c #FFE967", "] c #FFE660", "^ c #FFE55B", "/ c #FFE557", "( c #FCE357", "_ c #FCDF52", ": c #ECC42A", "< c #FEFFDE", "[ c #FEFFFF", "} c #FDFFE6", "| c #FEFFC6", "1 c #FEFFAB", "2 c #FEFF95", "3 c #FDFF85", "4 c #FFF879", "5 c #FFEC71", "6 c #FFEA66", "7 c #FFE65E", "8 c #FEE558", "9 c #FEE456", "0 c #FBDF54", "a c #F8DB53", "b c #F6D953", "c c #F5D84E", "d c #DEB11B", "e c #FEFFFB", "f c #FEFFF8", "g c #FEFFD6", "h c #FEFFB8", "i c #FEFF9E", "j c #FDFF8B", "k c #FEFA7D", "l c #FFEE73", "m c #FFE966", "n c #FCE255", "o c #F9DD54", "p c #F7D952", "q c #F4D751", "r c #F2D650", "s c #EFD452", "t c #E8C230", "u c #FEFFFC", "v c #FEFFFE", "w c #FFFFFF", "x c #FDFFE7", "y c #FEFFC5", "z c #FEFFA8", "A c #FEFE92", "B c #FEFC81", "C c #FFEF75", "D c #FFE65B", "E c #FADF55", "F c #F8DA52", "G c #F5D952", "H c #F2D751", "I c #F0D450", "J c #EED24F", "K c #ECCF4F", "L c #E6C032", "M c #FEFFF5", "N c #FEFFF4", "O c #FEFFD1", "P c #FEFFB2", "Q c #FEFF99", "R c #FEFE85", "S c #FFF078", "T c #FFEB67", "U c #FDE356", "V c #F9DC54", "W c #F6D952", "X c #F1D550", "Y c #EFD350", "Z c #ECD04E", "` c #EBCC4D", " . c #E8C94D", ".. c #E1BB2E", "+. c #FDFFBA", "@. c #FFFFFE", "#. c #FEFFF9", "$. c #FEFFDA", "%. c #FEFFBA", "&. c #FEFF9F", "*. c #FEFF8A", "=. c #FFF27A", "-. c #FFEA69", ";. c #FFE65A", ">. c #FBDF56", ",. c #F4D851", "'. c #EBCE4D", "). c #E9CA4C", "!. c #E8C94B", "~. c #E6C74B", "{. c #CFA419", "]. c #FDFED9", "^. c #FEFFF0", "/. c #FEFFFA", "(. c #FEFFDD", "_. c #FEFFBF", ":. c #FEFFA3", "<. c #FDFF8D", "[. c #FFF37C", "}. c #FFE969", "|. c #FEE55A", "1. c #F9DD55", "2. c #F3D750", "3. c #ECCF4E", "4. c #EACA4C", "5. c #E8C94C", "6. c #E6C74A", "7. c #E4C54B", "8. c #E3C346", "9. c #FFFF82", "0. c #FEFFBD", "a. c #FDFFD0", "b. c #FEFFE3", "c. c #FEFFFD", "d. c #FDFFF0", "e. c #FEFFD9", "f. c #FEFFA4", "g. c #FDFF8E", "h. c #FFF37D", "i. c #FDE35A", "j. c #F8DB55", "k. c #F5D851", "l. c #EDD150", "m. c #ECCE4D", "n. c #EBCB4D", "o. c #E9C94C", "p. c #E4C64A", "q. c #E2C349", "r. c #E0C04A", "s. c #D6AD23", "t. c #0A070C", "u. c #FFFF9B", "v. c #FFFFA8", "w. c #FFFFB7", "x. c #FFFFC7", "y. c #FFFFD7", "z. c #FFFFE4", "A. c #FFFFEC", "B. c #FFFFEB", "C. c #FFFFE2", "D. c #FFFFD1", "E. c #FFFFBC", "F. c #FDFEA3", "G. c #FEFF8D", "H. c #FFF67F", "I. c #FFED69", "J. c #FEE45A", "K. c #F7DB55", "L. c #F5DA53", "M. c #F3D753", "N. c #F1D651", "O. c #F0D14F", "P. c #EECF4F", "Q. c #ECCD4E", "R. c #EACB4D", "S. c #E7C94C", "T. c #E4C64B", "U. c #E3C34B", "V. c #E1C046", "W. c #FFDF38", "X. c #AC9E4C", "Y. c #996138", "Z. c #A16C45", "`. c #AA7552", " + c #B58160", ".+ c #BD8C6D", "++ c #C49176", "@+ c #C6947A", "#+ c #C49177", "$+ c #BC8A6C", "%+ c #A9825C", "&+ c #B7A863", "*+ c #DCCD5F", "=+ c #9E875F", "-+ c #AC946B", ";+ c #A08430", ">+ c #9D8328", ",+ c #6F4D11", "'+ c #6C380E", ")+ c #6B380E", "!+ c #6A380D", "~+ c #69390D", "{+ c #693B0D", "]+ c #68390D", "^+ c #67360C", "/+ c #67340C", "(+ c #6A340D", "_+ c #6A4A17", ":+ c #B3870D", "<+ c #29120E", "[+ c #E1515E", "}+ c #EC5963", "|+ c #C12229", "1+ c #C92B35", "2+ c #D03841", "3+ c #D6434F", "4+ c #DD4C57", "5+ c #E1515C", "6+ c #DF515C", "7+ c #D74A55", "8+ c #C93D47", "9+ c #AD2B36", "0+ c #47292E", "a+ c #AC924C", "b+ c #A88C3A", "c+ c #473833", "d+ c #88252E", "e+ c #CE525F", "f+ c #8D090C", "g+ c #87080B", "h+ c #88080B", "i+ c #86070A", "j+ c #85070A", "k+ c #84070A", "l+ c #83070A", "m+ c #8B080B", "n+ c #90070A", "o+ c #2B0104", "p+ c #A48323", "q+ c #C92D35", "r+ c #D1363F", "s+ c #BA1820", "t+ c #C11E26", "u+ c #CA242C", "v+ c #D02C34", "w+ c #D4333D", "x+ c #D63944", "y+ c #D33A44", "z+ c #CE3641", "A+ c #C12D37", "B+ c #A3222B", "C+ c #87652C", "D+ c #FFED6A", "E+ c #FBE25C", "F+ c #AA8E2B", "G+ c #801924", "H+ c #B42931", "I+ c #91090C", "J+ c #91080B", "K+ c #92080B", "L+ c #8F080B", "M+ c #89080B", "N+ c #8C070A", "O+ c #93080B", "P+ c #572509", "Q+ c #FFF268", "R+ c #654313", "S+ c #69040D", "T+ c #9E1014", "U+ c #AA1419", "V+ c #B0181E", "W+ c #B61C23", "X+ c #BA2028", "Y+ c #BB2329", "Z+ c #B9242B", "`+ c #AF222A", " @ c #7F1723", ".@ c #5F381D", "+@ c #FBE259", "@@ c #FCE35D", "#@ c #F6DA56", "$@ c #F5D950", "%@ c #664A12", "&@ c #490004", "*@ c #7C060A", "=@ c #86080B", "-@ c #85080B", ";@ c #81070A", ">@ c #7D070A", ",@ c #610107", "'@ c #3A1105", ")@ c #C9AA35", "!@ c #FFED67", "~@ c #FFF165", "{@ c #CCB33F", "]@ c #83631E", "^@ c #5C250F", "/@ c #661B12", "(@ c #5D1111", "_@ c #5E0F13", ":@ c #6D2119", "<@ c #632619", "[@ c #876226", "}@ c #C5AD40", "|@ c #FFEC60", "1@ c #F6DA57", "2@ c #EED151", "3@ c #F1D14E", "4@ c #C1A333", "5@ c #745717", "6@ c #4E2107", "7@ c #4F0F06", "8@ c #460804", "9@ c #410003", "0@ c #4E0F06", "a@ c #3F0D05", "b@ c #603E0E", "c@ c #997D23", "d@ c #DBB840", "e@ c #D6B543", "f@ c #FFE961", "g@ c #FEE65E", "h@ c #FFEE55", "i@ c #FFEF52", "j@ c #FFE553", "k@ c #FFE355", "l@ c #FFEE53", "m@ c #FFED56", "n@ c #FFE85E", "o@ c #FCE25B", "p@ c #F9DE59", "q@ c #F5D955", "r@ c #F1D653", "s@ c #E7C84D", "t@ c #E8C744", "u@ c #E9C943", "v@ c #E0BE40", "w@ c #DAB841", "x@ c #E5C23D", "y@ c #E3C03C", "z@ c #DCBB48", "A@ c #D8B644", "B@ c #D5B444", "C@ c #D6B442", "D@ c #FFE85B", "E@ c #FFE558", "F@ c #FEE556", "G@ c #FCE156", "H@ c #FADF58", "I@ c #FADE57", "J@ c #F8DC57", "K@ c #F7DB56", "L@ c #F0D451", "M@ c #EDD050", "N@ c #E5C64B", "O@ c #E3C54A", "P@ c #E1C14A", "Q@ c #DFBF48", "R@ c #DDBD48", "S@ c #DCBC47", "T@ c #DBBA45", "U@ c #DAB845", "V@ c #D7B644", "W@ c #D6B445", "X@ c #D4B443", "Y@ c #D3B342", "Z@ c #FFDF45", "`@ c #FDE455", " # c #FCE155", ".# c #FAE055", "+# c #F7DA53", "@# c #F5D953", "## c #F5D852", "$# c #F2D652", "%# c #F1D551", "&# c #EED250", "*# c #EDCF4F", "=# c #E6C84B", "-# c #E3C44A", ";# c #DBBA46", "># c #D6B545", ",# c #D4B343", "'# c #D3B343", ")# c #D0AA34", "!# c #F3CD32", "~# c #FCE154", "{# c #FADF54", "]# c #EDD14F", "^# c #ECCE4E", "/# c #E7C84B", "(# c #E5C54B", "_# c #E1C04A", ":# c #DAB945", "<# c #D6B544", "[# c #D3B243", "}# c #D2AF43", "|# c #C59D25", "1# c #E1B51B", "2# c #F9DE55", "3# c #E8C942", "4# c #D8BA3B", "5# c #F2D651", "6# c #EFD351", "7# c #E1C24A", "8# c #E0BE49", "9# c #DEBD48", "0# c #DDBC47", "a# c #DCBB46", "b# c #D8B744", "c# c #D7B545", "d# c #D2B040", "e# c #AD8A25", "f# c #D2B143", "g# c #D1AE42", "h# c #B68B14", "i# c #F8DA4F", "j# c #F2D34C", "k# c #A5841B", "l# c #C4A735", "m# c #BD9F34", "n# c #BC9E34", "o# c #B99932", "p# c #BA9B34", "q# c #B99A33", "r# c #B69732", "s# c #B59430", "t# c #B08F2E", "u# c #B29130", "v# c #AD8E2E", "w# c #AC8A2C", "x# c #AB8C2D", "y# c #AA8B2D", "z# c #AB8A2D", "A# c #A98A2D", "B# c #906C14", "C# c #CCA836", "D# c #D1AE41", "E# c #CFAD3F", "F# c #E8C028", "G# c #F3D751", "H# c #F0D34D", "I# c #E8C73E", "J# c #E3BF3B", "K# c #E3C143", "L# c #E2C043", "M# c #E1BF44", "N# c #DFBD46", "O# c #DFBF51", "P# c #DEC05E", "Q# c #DDBF66", "R# c #DDBF6D", "S# c #DCBF71", "T# c #DABE70", "U# c #D8BB6A", "V# c #D6B657", "W# c #D4B352", "X# c #D1AC3F", "Y# c #CCA731", "Z# c #CCA732", "`# c #CAA532", " $ c #D0AC3A", ".$ c #CFAE43", "+$ c #C1971F", "@$ c #F2D44C", "#$ c #EBCD4D", "$$ c #E5C54A", "%$ c #E3C449", "&$ c #E1C048", "*$ c #E0BF47", "=$ c #DEBD45", "-$ c #DCBC45", ";$ c #DCBA43", ">$ c #DBB942", ",$ c #D9B844", "'$ c #D8B642", ")$ c #D2B043", "!$ c #D1AD41", "~$ c #CFAD42", "{$ c #CEAC3E", "]$ c #DBAF1A", "^$ c #ECD150", "/$ c #EBCB4C", "($ c #E2C34A", "_$ c #E0C14A", ":$ c #DFBE48", "<$ c #DCBC48", "[$ c #D9B745", "}$ c #D7B544", "|$ c #CEAC42", "1$ c #B98E15", "2$ c #E4BD2E", "3$ c #E9CA4D", "4$ c #E2C249", "5$ c #E0BF49", "6$ c #DCBB47", "7$ c #DBBB46", "8$ c #DBB945", "9$ c #D8B745", "0$ c #D5B445", "a$ c #D1B043", "b$ c #CEAE43", "c$ c #CDAC41", "d$ c #C59C27", "e$ c #E3BD31", "f$ c #E5C64A", "g$ c #DEBE48", "h$ c #DDBC48", "i$ c #D9B744", "j$ c #D1AF43", "k$ c #C8A02A", "l$ c #DDB72C", "m$ c #E2C54B", "n$ c #DFBE47", "o$ c #D2B244", "p$ c #D1AF42", "q$ c #D0AE41", "r$ c #CEAD42", "s$ c #CDA117", "t$ c #E0BF45", "u$ c #DAB946", "v$ c #D8B844", "w$ c #D0AD42", "x$ c #CEAB3D", "y$ c #B98D15", "z$ c #D1A721", "A$ c #DDBB42", "B$ c #DBBA47", "C$ c #DAB846", "D$ c #D5B544", "E$ c #C1961F", "F$ c #C09415", "G$ c #CCA326", "H$ c #D5AE34", "I$ c #D6B643", "J$ c #D5B542", "K$ c #D2B141", "L$ c #CFA832", "M$ c #C39C25", "N$ c #B68A14", " ", " . + @ # $ % & * = - ", " ; > , ' ) ! ~ { ] ^ / ( _ : ", " < [ } | 1 2 3 4 5 6 7 8 9 0 a b c d ", " e [ [ f g h i j k l m 7 / n o p q r s t ", " u v w w w x y z A B C { D 9 E F G H I J K L ", " M v w w w w N O P Q R S T D U V W q X Y Z ` ... ", " +.w @.w w w w #.$.%.&.*.=.-.;.>.a ,.r Y Z '.).!.~.{. ", " ].^.v w @.w [ /.(._.:.<.[.}.|.1.W 2.I J 3.4.5.6.7.8. ", " 9.0.a.b.N c.@.c.d.e._.f.g.h.}.i.j.k.X l.m.n.o.6.p.q.r.s. ", "t. u.v.w.x.y.z.A.B.C.D.E.F.G.H.I.J.K.L.M.N.O.P.Q.R.S.T.U.V. ", " W.X.Y.Z.`. +.+++@+#+$+%+&+*+=+-+;+>+,+'+)+!+~+{+]+^+/+(+_+:+ ", " <+[+}+|+1+2+3+4+5+6+7+8+9+0+a+b+c+d+e+f+g+h+i+j+k+l+l+m+n+o+ ", " p+q+r+s+t+u+v+w+x+y+z+A+B+C+D+E+F+G+H+I+J+K+K+J+L+m+M+N+O+P+ ", " Q+R+S+T+U+V+W+X+Y+Z+`+ @.@+@@@#@$@%@&@*@=@h+h+g+-@;@>@,@'@)@ ", " !@~@{@]@^@/@(@_@:@<@[@}@|@E+1@M.2@3@4@5@6@7@8@9@0@a@b@c@d@e@ ", " f@] g@f@h@i@j@k@l@m@n@o@p@q@r@2@Q.o.~.s@t@u@v@w@x@y@z@A@B@C@ ", " D@;.E@/ F@9 G@H@I@J@K@q@M.L@M@Q.o.~.N@O@P@Q@R@S@T@U@V@W@X@Y@ ", " Z@9 `@ #.#o a +#@###$#%#&#*#` 5.=#T.-#P@Q@R@S@;#U@A@>#,#'#)# ", " !#~#{#o a +###,.r L@&#]#^#R.5./#(#-#_#Q@R@S@T@:#A@<#>#[#}#|# ", " 1#2#F W 3#4#5#X 6#J Z ` 4.5./#T.-#7#8#9#0#a#:#b#c#d#e#f#g#h# ", " i#G q j#k#l#m#n#n#o#o#p#q#r#r#s#t#u#v#w#x#y#z#A#B#C#D#E# ", " F#G#X Y H#I#J#K#L#M#N#O#P#Q#R#S#T#U#V#W#X#Y#Z#`# $D#.$+$ ", " @$&#]#Z #$4.5.!.6.$$%$&$*$=$-$;$>$,$'$<#B@,#)$!$~${$ ", " ]$^$'./$).5.6.6.O@($_$:$9#<$;#T@[$}$W@X@,#)$D#~$|$1$ ", " 2$3$o./#6.$$O@4$5$:$R@6$7$8$9$A@0$X@[#a$D#b$c$d$ ", " e$~.f$O@($_$5$g$h$a#T@:#i$V@B@,#'#j$!$b$c$k$ ", " l$m$P@5$n$R@h$;#T@U@A@}$B@,#o$p$q$r$|$d$ ", " s$t$g$h$a#T@u$v$A@W@X@,#f#D#w$r$x$y$ ", " z$A$B$C$b#}$D$X@[#)$D#.${$E$ ", " F$G$H$I$J$Y@K$L$M$N$ ", " "}; hakaishi-shutdown-qapps-543a9ee/qshutdown/src/pixmap/running.svg000066400000000000000000000144361515201227200252360ustar00rootroot00000000000000 image/svg+xml hakaishi-shutdown-qapps-543a9ee/qshutdown/src/pixmap/warn.svg000066400000000000000000000072751515201227200245300ustar00rootroot00000000000000 image/svg+xml ! hakaishi-shutdown-qapps-543a9ee/qshutdown/src/power.h000066400000000000000000000617741515201227200230530ustar00rootroot00000000000000/* qshutdown, a program to shutdown the shutdown/reboot/suspend/hibernate * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ /* INFO: For Windows hibernate has to be activated: Please note that this only works if the hardware supports it and enough RAM is available. - powercfg -a #prints aviable sleep states - powercfg -hibernate on - powercfg -hibernate off */ #ifndef POWER_H #define POWER_H #if defined(Q_OS_LINUX) #include #endif #if defined(Q_OS_WIN32) #include "suspend_win.h" #endif #include #include extern bool verbose; extern QString shell; namespace Power{ QTextStream oput(stdout); bool lockMyScreen; bool automatic = false; bool login1 = false; bool gnome = false; bool kde = false; bool hal_ = false; bool consolekit = false; bool sudo = false; bool upower_ = false; bool devicekit = false; bool user = false; QString myShutdown, myReboot, mySuspend, myHibernate; void shutdown(){ QStringList args; args << "-c" << myShutdown; #if defined(Q_OS_LINUX) QDBusMessage response; //variables for automatic mode bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface gnomeSessionManager("org.gnome.SessionManager", "/org/gnome/SessionManager", "org.gnome.SessionManager", QDBusConnection::sessionBus()); QDBusInterface kdeSessionManager("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface", QDBusConnection::sessionBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopConsoleKit("org.freedesktop.ConsoleKit", "/org/freedesktop/ConsoleKit/Manager", "org.freedesktop.ConsoleKit.Manager", QDBusConnection::systemBus()); #endif if(automatic){ #if defined(Q_OS_WIN32) QProcess::startDetached("shutdown", QStringList() << "-s" << "-f" << "-t" << "00"); // Windows command to shutdown immediately } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to shut down"); } #elif defined(Q_OS_LINUX) if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "poweroff")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "shutdown"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "shutdown"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd, gnome-power-cmd.sh and gnome-session-quit didn't work" << Qt::endl; else if(g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("PowerOff", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("RequestShutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = kdeSessionManager.call("logout", 0, 2, 2); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopConsoleKit.call("Stop"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; if(QProcess::startDetached("sudo", QStringList() << "shutdown" << "-P" << "now")) return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-h" << "-P" << "now"); } //end of automatic else if(login1){ response = freedesktopLogin1.call("PowerOff", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "shutdown"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "shutdown"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd, gnome-power-cmd.sh and gnome-session-quit didn't work" << Qt::endl; if(g_pwr1 || g_pwr2) return; response = gnomeSessionManager.call("RequestShutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(kde){ response = kdeSessionManager.call("logout", 0, 2, 2); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(hal_){ response = freedesktopHal.call("Shutdown"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(consolekit){ response = freedesktopConsoleKit.call("Stop"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(sudo){ if(QProcess::startDetached("sudo", QStringList() << "/usr/bin/systemctl" << "poweroff")) return; if(QProcess::startDetached("sudo", QStringList() << "shutdown" << "-P" << "now")) return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-h" << "-P" << "now"); } #endif else if(user) if(!shell.isEmpty()) QProcess::startDetached(shell, args); //resetting variables automatic = false; login1 = false; gnome = false; kde = false; hal_ = false; consolekit = false; sudo = false; user = false; } void reboot(){ QStringList args; args << "-c" << myReboot; #if defined(Q_OS_LINUX) QDBusMessage response; bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface gnomeSessionManager("org.gnome.SessionManager", "/org/gnome/SessionManager", "org.gnome.SessionManager", QDBusConnection::sessionBus()); QDBusInterface kdeSessionManager("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface", QDBusConnection::sessionBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopConsoleKit("org.freedesktop.ConsoleKit", "/org/freedesktop/ConsoleKit/Manager", "org.freedesktop.ConsoleKit.Manager", QDBusConnection::systemBus()); #endif if(automatic){ #if defined(Q_OS_WIN32) QProcess::startDetached("shutdown", QStringList() << "-r" << "-f" << "-t" << "00"); // Windows command to reboot immediately } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to restart"); } #elif defined(Q_OS_LINUX) if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "reboot")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "reboot"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "reboot"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; else if(g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("Reboot", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = gnomeSessionManager.call("RequestReboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; QDBusInterface kdeSessionManager("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface", QDBusConnection::sessionBus()); response = kdeSessionManager.call("logout", 0, 2, 1); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Reboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopConsoleKit.call("Restart"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-r" << "now"); } //end of automatic else if(login1){ response = freedesktopLogin1.call("Reboot", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "reboot"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "reboot"); if(verbose && !g_pwr1 && !g_pwr2) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; if(g_pwr1 || g_pwr2) return; response = gnomeSessionManager.call("RequestReboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(kde){ response = kdeSessionManager.call("logout", 0, 2, 1); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(hal_){ response = freedesktopHal.call("Reboot"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(consolekit){ response = freedesktopConsoleKit.call("Restart"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(sudo){ if(QProcess::startDetached("sudo", QStringList() << "/usr/bin/systemctl" << "reboot")) return; QProcess::startDetached("sudo", QStringList() << "shutdown" << "-r" << "now"); } #endif else if(user) if(!shell.isEmpty()) QProcess::startDetached(shell, args); //resetting variables automatic = false; login1 = false; gnome = false; kde = false; hal_ = false; consolekit = false; sudo = false; user = false; } void suspend(){ QStringList args; args << "-c" << mySuspend; #if defined(Q_OS_LINUX) QDBusMessage response; bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopUPower("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.UPower", QDBusConnection::systemBus()); QDBusInterface freedesktopDeviceKit("org.freedesktop.DeviceKit.Power", "/org/freedesktop/DeviceKit/Power", "org.freedesktop.DeviceKit.Power", QDBusConnection::systemBus()); if(lockMyScreen){ bool lock_works = false; QDBusInterface screenlock("org.gnome.ScreenSaver", "/org/gnome/ScreenSaver", "org.gnome.ScreenSaver", QDBusConnection::systemBus()); response = screenlock.call("Lock"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else lock_works = true; if(!lock_works){ if(!QProcess::startDetached("gnome-screensaver-command", QStringList() << "-l")){ if(verbose) oput << "W: gnome-screensaver-command -l didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("qdbus", QStringList() << "org.freedesktop.ScreenSaver" << "/ScreenSaver Lock")){ if(verbose) oput << "W: qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("dcop", QStringList() << "kdesktop" << "KScreensaverIface" << "lock")){ if(verbose) oput << "W: dcop kdesktop KScreensaverIface lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("xscreensaver-command", QStringList() << "-lock")){ if(verbose) oput << "W: xscreensaver-command -lock didn't work" << Qt::endl; } else lock_works = true; } } #endif if(automatic){ #if defined(Q_OS_WIN32) windowsSuspend(); } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to sleep"); } #elif defined(Q_OS_LINUX) if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "suspend")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "suspend"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "suspend"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; else if(g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("Suspend", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Suspend",0); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopUPower.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopDeviceKit.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } //end of automatic else if(login1){ response = freedesktopLogin1.call("Suspend", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "suspend"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "suspend"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; } else if(hal_){ response = freedesktopHal.call("Suspend",0); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(upower_){ response = freedesktopUPower.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(devicekit){ response = freedesktopDeviceKit.call("Suspend"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } #endif else if(user) if(!shell.isEmpty()) //QProcess::startDetached(shell, args); QProcess::startDetached(mySuspend); //resetting variables automatic = false; login1 = false; gnome = false; hal_ = false; upower_ = false; devicekit = false; user = false; } void hibernate(){ QStringList args; args << "-c" << myHibernate; #if defined(Q_OS_LINUX) QDBusMessage response; bool g_pwr1 = false; bool g_pwr2 = false; QDBusInterface freedesktopLogin1("org.freedesktop.login1", "/org/freedesktop/login1", "org.freedesktop.login1.Manager", QDBusConnection::systemBus()); QDBusInterface freedesktopHal("org.freedesktop.Hal", "/org/freedesktop/Hal/devices/computer", "org.freedesktop.Hal.Device.SystemPowerManagement", QDBusConnection::systemBus()); QDBusInterface freedesktopUPower("org.freedesktop.UPower", "/org/freedesktop/UPower", "org.freedesktop.UPower", QDBusConnection::systemBus()); QDBusInterface freedesktopDeviceKit("org.freedesktop.DeviceKit.Power", "/org/freedesktop/DeviceKit/Power", "org.freedesktop.DeviceKit.Power", QDBusConnection::systemBus()); if(lockMyScreen){ bool lock_works = false; QDBusInterface screenlock("org.gnome.ScreenSaver", "/org/gnome/ScreenSaver", "org.gnome.ScreenSaver", QDBusConnection::systemBus()); response = screenlock.call("Lock"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else lock_works = true; if(!lock_works){ if(!QProcess::startDetached("gnome-screensaver-command", QStringList() << "-l")){ if(verbose) oput << "W: gnome-screensaver-command -l didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("qdbus", QStringList() << "org.freedesktop.ScreenSaver" << "/ScreenSaver" << "Lock")){ if(verbose) oput << "W: qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("dcop", QStringList() << "kdesktop" << "KScreensaverIface" << "lock")){ if(verbose) oput << "W: dcop kdesktop KScreensaverIface lock didn't work" << Qt::endl; } else lock_works = true; } if(!lock_works){ if(!QProcess::startDetached("xscreensaver-command", QStringList() << "-lock")){ if(verbose) oput << "W: xscreensaver-command -lock didn't work" << Qt::endl; } else lock_works = true; } } #endif if(automatic){ #if defined (Q_OS_WIN32) QProcess::startDetached("powercfg", QStringList() << "-hibernate" << "on"); // enable hibernate QProcess::startDetached("rundll32", QStringList() << "powrprof.dll,SetSuspendState"); } #elif defined(Q_OS_MACOS) QProcess::startDetached("/usr/bin/osascript",QStringList() << "-e" << "tell application \"System Events\" to sleep"); } #else if(QProcess::startDetached("/usr/bin/systemctl", QStringList() << "hibernate")) return; g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "hibernate"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "hibernate"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; else if (g_pwr1 || g_pwr2) return; response = freedesktopLogin1.call("Hibernate", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopHal.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopUPower.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } else return; response = freedesktopDeviceKit.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } // end of automatic else if(login1){ response = freedesktopLogin1.call("Hibernate", true); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(gnome){ g_pwr1 = QProcess::startDetached("gnome-power-cmd.sh", QStringList() << "hibernate"); g_pwr2 = QProcess::startDetached("gnome-power-cmd", QStringList() << "hibernate"); if(!g_pwr1 && !g_pwr2 && verbose) oput << "W: gnome-power-cmd and gnome-power-cmd.sh didn't work" << Qt::endl; } else if(hal_){ response = freedesktopHal.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(upower_){ response = freedesktopUPower.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } else if(devicekit){ response = freedesktopDeviceKit.call("Hibernate"); if(response.type() == QDBusMessage::ErrorMessage){ if(verbose) oput << "W: " << response.errorName() << ": " << response.errorMessage() << Qt::endl; } } #endif else if(user) if(!shell.isEmpty()) QProcess::startDetached(shell, args); //resetting variables automatic = false; login1 = false; gnome = false; hal_ = false; upower_ = false; devicekit = false; user = false; } } #endif //POWER_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/preferences.cpp000066400000000000000000000406221515201227200245400ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "preferences.h" #include #include #include #include Preferences::Preferences(QWidget *parent): QDialog(parent){ setupUi(this); isClosed = true; setWindowFlags(Qt::Window); //Seconds won't be recognized, thus removing them (just in case). QString timeEditFormat; timeEditFormat = timeEdit->displayFormat(); if(timeEditFormat.contains(":ss")) timeEditFormat.replace(QString(":ss"), QString("")); if(timeEditFormat.contains(":s")) timeEditFormat.replace(QString(":s"), QString("")); timeEdit->setDisplayFormat(timeEditFormat); /***************** load settings from the conf file *****************/ settings = new QSettings(this); #if defined(Q_OS_WIN32) fonts = "Times New Roman"; fontS1 = 13; fontS2 = 18; fontS3 = 11; #else fonts = "DejaVu Sans"; fontS1 = 11; fontS2 = 15; fontS3 = 9; #endif #if defined(Q_OS_WIN32) || defined(Q_OS_MAC) removeLinuxItems(shutdownM); removeLinuxItems(hibernateM); removeLinuxItems(suspendM); removeLinuxItems(rebootM); #endif userDef1S = tr("Please input an user specified command for shutdown here"); userDef2S = tr("Please input an user specified command for reboot here"); userDef3S = tr("Please input an user specified command for suspend here"); userDef4S = tr("Please input an user specified command for hibernate here"); msgBox = new QMessageBox(this); msgBox->setWindowTitle(tr("Error")); msgBox->setIcon(QMessageBox::Warning); msgBox->setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Window); msgBox->setInformativeText(tr("The File \"%1\" is not writable!\n" "Maybe you just don't have the permissions to do so.").arg(file)); if(QSettings().value("first_start", true).toBool()) { infoBox = new QMessageBox(this); infoBox->setWindowTitle(tr("Please read this carefully!")); infoBox->setIcon(QMessageBox::Information); infoBox->setInformativeText(QString(QObject::tr("Welcome to qshutdown!\n" "If you want qshutdown e.g. to shutdown the system " "and you are using the Gnome Shell, then you are likely to get a " "shutdown dialog from there. If you want a direct shutdown, then " "please consider going into the preferences and setting the shutdown " "method to ConsoleKit or something else.\n\nPlease feel free to visit " "https://launchpad.net/~hakaishi to report bugs or for anything " "concerning translations.\n\nThe settings file is located at %1.\n" "For further information see the info window.").arg(QSettings().fileName()))); infoBox->setStandardButtons(QMessageBox::Ok); infoBox->show(); QSettings().setValue("first_start", false); } connect(this, SIGNAL(accepted()), this, SLOT(saveToConfFile())); connect(reset, SIGNAL(clicked(bool)), this, SLOT(resetSettings())); connect(font1Spin, SIGNAL(valueChanged(int)), this, SLOT(fontSize1Changed(int))); connect(font2Spin, SIGNAL(valueChanged(int)), this, SLOT(fontSize2Changed(int))); connect(font3Spin, SIGNAL(valueChanged(int)), this, SLOT(fontSize3Changed(int))); connect(fontComboBox, SIGNAL(currentFontChanged(QFont)), this, SLOT(fontChanged(QFont))); connect(confEditButton, SIGNAL(clicked(bool)), this, SIGNAL(editConf())); connect(shutdownM, SIGNAL(currentIndexChanged(int)), this, SLOT(enableUserDef1())); connect(rebootM, SIGNAL(currentIndexChanged(int)), this, SLOT(enableUserDef2())); connect(suspendM, SIGNAL(currentIndexChanged(int)), this, SLOT(enableUserDef3())); connect(hibernateM, SIGNAL(currentIndexChanged(int)), this, SLOT(enableUserDef4())); connect(disableTray, SIGNAL(toggled(bool)), this, SIGNAL(removeTrayIcon(bool))); loadSettings(); if(!QFile::exists(file)) saveToConfFile(); if(userDef1->isEnabled()) myShutdown = userDef1->toPlainText(); if(userDef2->isEnabled()) myReboot = userDef2->toPlainText(); if(userDef3->isEnabled()) mySuspend = userDef3->toPlainText(); if(userDef4->isEnabled()) myHibernate = userDef4->toPlainText(); } Preferences::~Preferences(){ delete settings; } void Preferences::showEvent(QShowEvent* show_pref){ isClosed = false; starting(); //sends SIGNAL starting() if(!settings->isWritable()){ QTimer::singleShot(15000, msgBox, SLOT(close())); msgBox->show(); } loadSettings(); QDialog::showEvent(show_pref); } void Preferences::setFocusToUserDef(){ if(userDef4->isEnabled()) userDef4->setFocus(); if(userDef3->isEnabled()) userDef3->setFocus(); if(userDef2->isEnabled()) userDef2->setFocus(); if(userDef1->isEnabled()) userDef1->setFocus(); } void Preferences::enableUserDef1(){ if(shutdownM->currentIndex() == (shutdownM->count()-1)){ userDef1->setEnabled(true); userDef1->setFocus(); if(userDef1->toPlainText() == userDef1S) userDef1->clear(); } else{ userDef1->setEnabled(false); if(userDef1->toPlainText() == "") userDef1->setPlainText(userDef1S); setFocusToUserDef(); } } void Preferences::enableUserDef2(){ if(rebootM->currentIndex() == (rebootM->count()-1)){ userDef2->setEnabled(true); userDef2->setFocus(); if(userDef2->toPlainText() == userDef2S) userDef2->clear(); } else{ userDef2->setEnabled(false); if(userDef2->toPlainText() == "") userDef2->setPlainText(userDef2S); setFocusToUserDef(); } } void Preferences::enableUserDef3(){ if(suspendM->currentIndex() == (suspendM->count()-1)){ userDef3->setEnabled(true); userDef3->setFocus(); if(userDef3->toPlainText() == userDef3S) userDef3->clear(); } else{ userDef3->setEnabled(false); if(userDef3->toPlainText() == "") userDef3->setPlainText(userDef3S); setFocusToUserDef(); } } void Preferences::enableUserDef4(){ if(hibernateM->currentIndex() == (hibernateM->count()-1)){ userDef4->setEnabled(true); userDef4->setFocus(); if(userDef4->toPlainText() == userDef4S) userDef4->clear(); } else{ userDef4->setEnabled(false); if(userDef4->toPlainText() == "") userDef4->setPlainText(userDef4S); setFocusToUserDef(); } } void Preferences::loadSettings(){ if(settings->contains("PrefWindowSize/size")) resize(settings->value("PrefWindowSize/size").toSize()); comboBox->setCurrentIndex(settings->value("Power/comboBox",0).toInt()); timeEdit->setTime(QTime(settings->value("Time/time_hour",22).toInt(),settings->value("Time/time_minute",00).toInt())); spin->setValue(settings->value("Time/countdown_minutes",60).toInt()); quitOnCloseMain->setChecked(settings->value("Quit_on_close",true).toBool()); rememberOnClose->setChecked(settings->value("MainWindow/remember_last", false).toBool()); countdown->setChecked(settings->value("Time/countdown_at_startup",false).toBool()); hideMe->setChecked(settings->value("Hide_at_startup",false).toBool()); fontComboBox->setCurrentFont(settings->value("Fonts/font_type",fonts).toString()); font1Spin->setValue(settings->value("Fonts/font1",fontS1).toInt()); font2Spin->setValue(settings->value("Fonts/font2",fontS2).toInt()); font3Spin->setValue(settings->value("Fonts/font3",fontS3).toInt()); spinBox->setValue(settings->value("Logfile/size",1.5).toDouble()); disableTray->setChecked(settings->value("CheckBoxes/Disable_tray_icon", false).toBool()); radio1->setChecked(settings->value("CheckBoxes/target_time",false).toBool()); radio2->setChecked(settings->value("CheckBoxes/countdown",true).toBool()); lock->setChecked(settings->value("CheckBoxes/lock",true).toBool()); warn->setChecked(settings->value("CheckBoxes/warn_before_end_of_countdown",false).toBool()); remindCndPop->setChecked(settings->value("CheckBoxes/remind_not_running",true).toBool()); log->setChecked(settings->value("Logfile/logging",false).toBool()); lockS->setChecked(settings->value("Lock_screen",true).toBool()); autostart->setChecked(settings->value("Autostart").toBool()); shutdownM->setCurrentIndex(settings->value("Methods/shutdown",0).toInt()); userDef1->setPlainText(settings->value("Methods/myShutdown",userDef1S).toString()); rebootM->setCurrentIndex(settings->value("Methods/reboot",0).toInt()); userDef2->setPlainText(settings->value("Methods/myReboot",userDef2S).toString()); suspendM->setCurrentIndex(settings->value("Methods/suspend",0).toInt()); userDef3->setPlainText(settings->value("Methods/mySuspend",userDef3S).toString()); hibernateM->setCurrentIndex(settings->value("Methods/hibernate",0).toInt()); userDef4->setPlainText(settings->value("Methods/myHibernate",userDef4S).toString()); lockMyScreen = settings->value("Lock_screen").toBool(); quitAfterCountdown->setChecked(settings->value("Quit_after_countdown_ended",false).toBool()); showNotRunning = remindCndPop->isChecked(); showEndOfCountdown = warn->isChecked(); } void Preferences::saveToConfFile(){ if(settings->isWritable()){ settings->setValue("Power/comboBox",comboBox->currentIndex()); settings->setValue("Time/time_hour",timeEdit->time().hour()); settings->setValue("Time/time_minute",timeEdit->time().minute()); settings->setValue("Quit_on_close",quitOnCloseMain->isChecked()); settings->setValue("MainWindow/remember_last",rememberOnClose->isChecked()); settings->setValue("Time/countdown_at_startup",countdown->isChecked()); settings->setValue("Hide_at_startup",hideMe->isChecked()); settings->setValue("Time/countdown_minutes",spin->value()); settings->setValue("Fonts/font_type",fontComboBox->currentText()); settings->setValue("Fonts/font1",font1Spin->value()); settings->setValue("Fonts/font2",font2Spin->value()); settings->setValue("Fonts/font3",font3Spin->value()); settings->setValue("Logfile/size",spinBox->value()); settings->setValue("CheckBoxes/Disable_tray_icon",disableTray->isChecked()); settings->setValue("CheckBoxes/target_time",radio1->isChecked()); settings->setValue("CheckBoxes/countdown",radio2->isChecked()); settings->setValue("CheckBoxes/lock",lock->isChecked()); settings->setValue("CheckBoxes/warn_before_end_of_countdown",warn->isChecked()); settings->setValue("CheckBoxes/remind_not_running",remindCndPop->isChecked()); settings->setValue("Logfile/logging",log->isChecked()); settings->setValue("Lock_screen",lockS->isChecked()); settings->setValue("Autostart",autostart->isChecked()); settings->setValue("Methods/shutdown",shutdownM->currentIndex()); settings->setValue("Methods/myShutdown",userDef1->toPlainText()); settings->setValue("Methods/reboot",rebootM->currentIndex()); settings->setValue("Methods/myReboot",userDef2->toPlainText()); settings->setValue("Methods/suspend",suspendM->currentIndex()); settings->setValue("Methods/mySuspend",userDef3->toPlainText()); settings->setValue("Methods/hibernate",hibernateM->currentIndex()); settings->setValue("Methods/myHibernate",userDef4->toPlainText()); settings->setValue("Quit_after_countdown_ended",quitAfterCountdown->isChecked()); } autostartFile(); //to create or to delete the autostart file lockScreen(); //set lockMyScreen to true or false according to lockS if(userDef1->isEnabled()) myShutdown = userDef1->toPlainText(); else myShutdown = ""; if(userDef2->isEnabled()) myReboot = userDef2->toPlainText(); else myReboot = ""; if(userDef3->isEnabled()) mySuspend = userDef3->toPlainText(); else mySuspend = ""; if(userDef4->isEnabled()) myHibernate = userDef4->toPlainText(); else myHibernate = ""; showNotRunning = remindCndPop->isChecked(); showEndOfCountdown = warn->isChecked(); this->close(); } void Preferences::resetSettings(){ if(settings->isWritable()){ comboBox->setCurrentIndex(0); timeEdit->setTime(QTime(22,00)); countdown->setChecked(false); disableTray->setChecked(false); quitOnCloseMain->setChecked(true); rememberOnClose->setChecked(false); hideMe->setChecked(false); spin->setValue(60); fontComboBox->setCurrentFont(QFont(fonts)); font1Spin->setValue(fontS1); font2Spin->setValue(fontS2); font3Spin->setValue(fontS3); spinBox->setValue(1.5); radio1->setChecked(false); radio2->setChecked(true); lock->setChecked(true); warn->setChecked(true); remindCndPop->setChecked(true); log->setChecked(false); lockS->setChecked(true); shutdownM->setCurrentIndex(0); rebootM->setCurrentIndex(0); suspendM->setCurrentIndex(0); hibernateM->setCurrentIndex(0); userDef1->setPlainText(userDef1S); userDef2->setPlainText(userDef2S); userDef3->setPlainText(userDef3S); userDef4->setPlainText(userDef4S); quitAfterCountdown->setChecked(false); } } void Preferences::closeEvent(QCloseEvent* close_pref){ isClosed = true; finishing(); //sends SIGNAL finishing() if(settings->isWritable()) settings->setValue("PrefWindowSize/size",size()); resetFont(); QDialog::closeEvent(close_pref); } bool Preferences::getClosed(){ return isClosed; } /*static*/ void Preferences::removeLinuxItems(QComboBox *comboBox) { for (int i = 0; i < comboBox->count(); ++i) { QString currentItemText = comboBox->itemText(i); if (!(currentItemText == tr("automatic") || currentItemText == tr("user defined"))) { comboBox->removeItem(i); // Adjust the index as you've removed an item --i; } } } void Preferences::fontChanged(QFont font){ fonts = font.toString(); changeFont(); } void Preferences::fontSize1Changed(int f1){ fontS1 = f1; changeFont(); } void Preferences::fontSize2Changed(int f2){ fontS2 = f2; changeFont(); } void Preferences::fontSize3Changed(int f3){ fontS3 = f3; changeFont(); } void Preferences::resetFont(){ fonts = settings->value("Fonts/font_type","Times New Roman").toString(); fontS1 = settings->value("Fonts/font1",13).toInt(); fontS2 = settings->value("Fonts/font2",18).toInt(); fontS3 = settings->value("Fonts/font3",11).toInt(); changeFont(); } void Preferences::autostartFile(){ #if defined(Q_OS_LINUX) QFile autostartFile(QDir::homePath() + "/.config/autostart/qshutdown.desktop"); if(settings->value("Autostart").toBool() && !autostartFile.exists()){ if(!QDir(QDir::homePath() + "/.config/autostart").exists()){ QDir dir(QDir::homePath() + "/.config/autostart"); dir.mkdir(QDir::homePath() + "/.config/autostart"); } if(!autostartFile.open(QIODevice::ReadWrite | QIODevice::Text)){ QTextStream myOutput(stdout); myOutput << "E: Can not open qshutdown settings file!" << Qt::endl; return; } QString autostartContent("[Desktop Entry]\nName=qshutdown\n" "Name[de_DE]=qshutdown\nExec=qshutdown\nTerminal=false\n" "Type=Application\nIcon=red_glasses\nCategories=Utility"); QTextStream out(&autostartFile); out << autostartContent; autostartFile.close(); } if(autostartFile.exists() && !settings->value("Autostart").toBool()) autostartFile.remove(); #endif } void Preferences::lockScreen(){ lockMyScreen = lockS->isChecked(); } hakaishi-shutdown-qapps-543a9ee/qshutdown/src/preferences.h000066400000000000000000000043361515201227200242070ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef PREFERENCES_H #define PREFERENCES_H #include "ui_preferences.h" #include #include class Preferences : public QDialog, public Ui::Preferences { Q_OBJECT public: Preferences(QWidget *parent = 0); ~Preferences(); QString fonts; QString myShutdown, myReboot, mySuspend, myHibernate; QString userDef1S, userDef2S, userDef3S, userDef4S; int fontS1, fontS2, fontS3; bool getClosed(); bool lockMyScreen; bool showNotRunning; bool showEndOfCountdown; private: void removeLinuxItems(QComboBox* comboBox); bool isClosed; QString file; QSettings *settings; QMessageBox *msgBox, *infoBox; private slots: void loadSettings(); void saveToConfFile(); void resetSettings(); void fontChanged(QFont font); void resetFont(); void fontSize1Changed(int f1); void fontSize2Changed(int f2); void fontSize3Changed(int f3); void lockScreen(); void enableUserDef1(); void enableUserDef2(); void enableUserDef3(); void enableUserDef4(); void setFocusToUserDef(); public slots: void autostartFile(); signals: void starting(); void finishing(); void changeFont(); void editConf(); void removeTrayIcon(bool); protected: virtual void showEvent(QShowEvent* show_pref); virtual void closeEvent(QCloseEvent* close_pref); }; #endif //PREFERENCES_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/suspend_win.h000066400000000000000000000063561515201227200242500ustar00rootroot00000000000000#ifndef SUSPEND_WIN_H #define SUSPEND_WIN_H /* * external source code based on a blog post by Diomidis Spinellis * * correctly suspends Windows without going into hibernate */ /* * Copyright (c) 2008, Diomidis Spinellis * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * */ #include #include /* Return as a string the error description for err */ static char * wstrerror(LONG err) { static LPVOID lpMsgBuf; if (lpMsgBuf) LocalFree(lpMsgBuf); FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language (LPTSTR) &lpMsgBuf, 0, NULL); return (char*)lpMsgBuf; } int windowsSuspend() { HANDLE tok; TOKEN_PRIVILEGES priv; if (OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &tok) == 0) { fprintf(stderr, "OpenProcessToken: %s\n", wstrerror(GetLastError())); return (1); } // Get the LUID for shutdown privilege. if (LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &priv.Privileges[0].Luid) == 0) { fprintf(stderr, "LookupPrivilegeValue: %s\n", wstrerror(GetLastError())); return (1); } // Enable AdjustTokenPrivileges. priv.PrivilegeCount = 1; priv.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; if (AdjustTokenPrivileges(tok, FALSE, &priv, 0, (PTOKEN_PRIVILEGES)NULL, 0) == 0 || GetLastError() != ERROR_SUCCESS) { fprintf(stderr, "AdjustTokenPrivileges: %s\n", wstrerror(GetLastError())); return (1); } // Force suspend if (SetSystemPowerState(TRUE, TRUE) == 0) { fprintf(stderr, "SetSystemPowerState: %s\n", wstrerror(GetLastError())); return (1); } return (0); } #endif // SUSPEND_WIN_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/000077500000000000000000000000001515201227200242505ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-ast.ts000066400000000000000000000650661515201227200274560ustar00rootroot00000000000000 About About qshutdown Tocante a qshutdown Version Versión &About Tocante &a &Thanks To Agradecimien&tos <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Usando Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, una ferramienta d'apagáu pol horariu y cuenta atrás</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Por favor, usa <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> o <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> pa informar de fallos.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendariu Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Camudar la contraseña Retype password: Escribi la contraseña otra vuelta: New password: Contraseña nueva: Old password: Contraseña antigua: The current password is not correct! ¡La contraseña actual ye incorreuta! The retyped password doesn't match! ¡La contraseña que volvisti a escribir nun casa! Editor Editor Editor Gui &Minimize! ¡A&menorgar! Shutdown-time: Hora d'apagáu: Minutes till shutdown: Minutos pal apagáu: Reboot-time: Hora de reaniciu: Minutes till reboot: Minutos pal reaniciu: Suspend-time: Hora de suspensión: Minutes till suspend: Minutos pa la suspensión: Hibernate-time: Hora d'hibernación: Minutes till hibernate: Minutos pa la hibernación: shutdown in apagáu en reboot in reaniciu en suspend in suspensión en hibernate in hibernación en years años months meses hours hores days díes Res&tore Res&taurar &Minimize A&menorgar day día minutes minutos seconds segundos Shutdown Apagáu Reboot Reaniciar Suspend Suspender Hibernate Hibernar &Lock after start? ¿B&loquiar dempués del aniciu? &Warnings on? ¿Activar a&visos? &Now! ¡A&gora! You can set a date in the calendar Puedes conseñar una data del calendariu &OK Aceu&tar R&eset R&eaniciar &Quit &Colar &Info &Info &Logfile &Rexistru &Preferences &Preferencies &Shutdown A&pagar &Reboot &Reaniciar S&uspend S&uspender &Hibernate &Hibernar Lock settings after countdown started Bloquiar la configuración cuando s'anicie la cuenta atrás Calendar Calendariu &File &Ficheru &Help &Ayuda &Settings Preferencie&s &About Tocante &a &Reset &Reaniciar &Configure &Configurar &Keep proportions &Guardar proporciones Warning Avisu Action imminent! ¡Aición inminente! Information Informacion Countdown is not running! ¡La cuenta atrás nun ta executandose! Turns on/off all warnings Activar/desactivar tolos avisos About &Qt Tocante a &Qt Version Versión Info Info Info PassWord Password Contraseña &Set password Afitar contra&seña Password: Contraseña: The password is not correct! ¡La contraseña nun ye correuta! &Change password &Camudar contraseña Preferences Preferences Preferencies Enable the &target time at startup Activar l'oxetivu &tiempu nel aniciu Shutdown Apagar Shutdown type: Triba d'apagáu: Target time: Hora oxetivu: Minutes to countdown: Minutos pa la cuenta atrás: Font: Fonte: Font size 1: Tamañu de fonte 1: Font size 2: Tamañu de fonte 2: Font size 3: Tamañu de fonte 3: Size for log file: Tamañu del ficheru de rexistru: Reboot Reaniciar Suspend Suspender Hibernate Hibernar A&utostart &Autoarranque &Hide qshutdown at startup &Anubrir qshutdown nel aniciu Lock screen &for suspend and hibernate &Bloquiar pantalla con suspender ya hibernar &Edit configuration file &Editar ficheru de configuración Enable the minute &countdown at startup Activar la &cuenta atrás de minutos nel aniciu &Reset settings &Reaniciar preferencies Size for log file in KB Tamañu del ficheru de rexistru en kB "&Lock after start?" "¿B&loquiar dempués d'aniciar?" "&Warnings on?" "¿Ac&tivar avisos?" Log start time of qshutdown and how long it was running Rexistrar el tiempu d'arranque de qshutdown y cuánto lleva n'execución L&ogging Re&xistru checkboxes and "now!" button caxelles de marcar y botón "¡agora!" OK and Minimize buttons Botones Aceutar y Amenorgar Labels for example Etiquetes d'exemplu Set a font Escueyi una fonte What target time should be displayed by default at startup? ¿Qué hora oxetivu tien de vese de mou predetermináu nel aniciu? How many minutes should be displayed for countdown by default at startup? ¿Cuántos minutos tienen de vese na cuenta atrás predeterminada nel aniciu? What should be displayed first by default at startup? ¿Qué tien de vese primero nel aniciu de mou predetermináu? Set if the checkbox for "Lock after start?" should be checked by default at startup Configurar si "¿Bloquiar dempués del aniciu?" tien de tar marcáu de mou predetermináu Set if the checkbox for "Warnings on?" should be checked by default at startup Configurar si la caxella "¿Activar avisos?" tien de tar marcada de mou predetermináu The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. El botón zarrar de vezu anubre la ventana principal. Desactivar anubrimientu significa que qshutdown entós zarraráse. General Xeneral Advanced Avanzáu Suspend method: Métodu de suspensión: automatic automáticu user defined definíu pol usuariu Hibernate method: Métodu d'hibernación: Shutdown method: Métodu d'apagáu: Reboot method: Métodu de reaniciu: Please input an user specified command for suspend here Escribi equí un comandu d'usuariu pa la suspensión Gnome session Sesión de Gnome KDE session Sesión de KDE Please input an user specified command for shutdown here Escribi equí un comandu d'usuariu pal apagáu Please input an user specified command for reboot here Escribi equí un comandu d'usuariu pal reaniciu Please input an user specified command for hibernate here Escribi equí un comandu d'usuariu pa la hibernación Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Dellos sistemes torguen por exemplu l'apagáu porque qshutdown ta executandose entá. Pon una llamada si qshutdown tien de finar en acabando la cuenta atrás. Quit qshutdown after countdown ended? ¿Colar de qshutdown en acabando la cuenta atrás? &Start countdown at startup Llanzar cuenta atrá&s nel aniciu Hide qshutdown at startup if "Start countdown" is checked. Anubrir qshutdown nel aniciu si ta marcáu "Llanzar cuenta atrás nel aniciu". The File "%1" is not writable! Maybe you just don't have the permissions to do so. ¡El ficheru "%1" nun pue escribise! Seique nun tengas permisos pa facelo. Error Error Please read this carefully! ¡Por favor, llea esto con atención! Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anyting concerning translations. ¡Bienveníu a qshutdown! Si quier, por exemplu, que qshutdown apague'l sistema y ta usando Gnome Shell, posiblemente recibirá un diálogu d'apagáu de la mesma. Si quier un apagáu direutu, por favor, considere entrar nes preferencies y configurar el métodu d'apagáu a ConsoleKit o daqué distinto. Visite con total llibertá https://launchpad.net/~hakaishi si quier informar de fallos o de cualquier cosa tocante a les traducciones. Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Si desactives l'iconu de la bandexa yá nun vas poder restablecelu dende la bandexa. Considera tamién marcar «Colar al zarrar la ventana principal» y «Anubrir o qshutdown nel arranque». Si'l programa aínda ta n'execución y quies que reapaeza, executa qshutdown de nueves, como fadríes normalmente. Disable tray &icon Desactivar l'&iconu de la bandexa &Quit on closing main window &Colar al zarrar la ventana principal QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at %2<br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-bg.ts000066400000000000000000000735541515201227200272600ustar00rootroot00000000000000 About About qshutdown За qshutdown Version ВерÑÐ¸Ñ &About &За програмата &Thanks To Б&лагодарноÑти <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">За използването на Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, инÑтрумент за изключване на компютъра, работещ на базата на хронометър и броÑч (таймер) за обратно броене</p><p >Ðвтор: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023 Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >МолÑ, използвайте <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a>, за за докладвате за грешки в програмата.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Календар Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password ПромÑна на парола Retype password: Въведете отново паролата: New password: Ðова парола: Old password: Стара парола: The current password is not correct! ÐаÑтоÑщата парола не е правилна! The retyped password doesn't match! Паролите не Ñъвпадат Editor Editor ТекÑтов редактор Gui &Minimize! &Минимизиране! Shutdown-time: Време до/за изключването на компютъра: Minutes till shutdown: Минути до изключването на компютъра: Reboot-time: Време до/за реÑтартирането на компютъра: Minutes till reboot: Минути до реÑтартирането на компютъра: Suspend-time: Време до/за приÑпиване на компютъра: Minutes till suspend: Минути до приÑпиването на компютъра: Hibernate-time: Време до/за дълбоко приÑпиване на компютъра: Minutes till hibernate: Минути до дълбоко приÑпиване на компютъра: shutdown in изключване Ñлед reboot in реÑтартиране Ñлед suspend in приÑпиване Ñлед hibernate in дълбоко приÑпиване Ñлед years години months меÑеца hours чаÑ(а) days ден(а) Res&tore Ð’&ъзÑтановÑване &Minimize &Минимизиране day ден minutes минута(/-и) seconds Ñекунди Shutdown Изключване Reboot РеÑтартиране Suspend ПриÑпиване Hibernate Дълбоко заÑпиване &Lock after start? &Заключване Ñлед Ñтартиране? &Warnings on? С &предупреждениÑ? &Now! &Сега! You can set a date in the calendar Можете да наÑрочите дата в календара &OK &ОК R&eset &Ðнулиране &Quit &Изход &Info &Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ &Logfile &Дневник на дейноÑтта &Preferences Пре&Ð´Ð¿Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½Ð¸Ñ &Shutdown &Изключване &Reboot &РеÑтартиране S&uspend &ПриÑпиване &Hibernate &Дълбоко приÑпиване Lock settings after countdown started Заключване на наÑтройките Ñлед начало на обратното броене Calendar Календар &File &Файл &Help Помо&щ &Settings &ÐаÑтройки &About &За програмата &Reset &Ðнулиране &Configure &Конфигуриране &Keep proportions &Запазване на пропорцииите Warning Предупреждение Action imminent! ДейÑтвието предÑтои да Ñе Ñлучи! Information Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Countdown is not running! Обратното броене не е включено! Turns on/off all warnings Включване/изключване на вÑички Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ¶Ð´ÐµÐ½Ð¸Ñ About &Qt За &Qt Version верÑÐ¸Ñ Info Info Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ PassWord Password Парола &Set password Зада&ване на парола Password: Парола: The password is not correct! Въведенета парола не е правилна! &Change password &ПромÑна на паролата Preferences Preferences ÐŸÑ€ÐµÐ´Ð¿Ð¾Ñ‡Ð¸Ñ‚Ð°Ð½Ð¸Ñ Enable the &target time at startup Включване на пуÑковото време при зареждане Shutdown Изключване Shutdown type: Вид изключване: Target time: ПуÑково време: Minutes to countdown: Минути до обратното броене: Font: Шрифт: Font size 1: Големина (кегел) на шрифта 1: Font size 2: Големина на шрифта 2: Font size 3: Големина на шрифта 3: Size for log file: Големина на дневника за дейноÑтта: Reboot РеÑтартиране на компютъра Suspend ПриÑпиване Hibernate Дълбоко заÑпиване A&utostart Ð&втоматично Ñтартиране &Hide qshutdown at startup С&криване на qshutdown при зареждане Lock screen &for suspend and hibernate Заключване на е&крана при заÑпиване и дълбоко заÑпиване &Edit configuration file Р&едактиране на файла Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ð¸ Enable the minute &countdown at startup Включване на обратното броене Ñ Ð¼Ð¸Ð½ÑƒÑ‚Ð¸ при зареждане &Reset settings Ðули&ране на наÑтройките Size for log file in KB Големина на дневника за дейноÑтта в КБ "&Lock after start?" "Зак&лючване Ñлед Ñтартиране?" "&Warnings on?" "&С предупреждениÑ?" Log start time of qshutdown and how long it was running ЗапиÑване в дневника на времето на Ñтартиране на qshutdown и колко дълго програмата е работила L&ogging Запи&Ñване в дневника checkboxes and "now!" button кутийки за отмÑтане и бутон „Сега!“ OK and Minimize buttons бутони „ОК“ и „Минимизиране“ Labels for example С надпиÑи, например Set a font Избор на шрифт What target time should be displayed by default at startup? Какво пуÑково време трÑбва да Ñе показва по подразбиране при зареждане? How many minutes should be displayed for countdown by default at startup? Колко на брой минути трÑбва да Ñе показват в полето за обратно броене при зареждане? What should be displayed first by default at startup? По подразбиране какво трÑбва да Ñе показва първо при зареждане? Set if the checkbox for "Lock after start?" should be checked by default at startup Задайте, ако кутийката за отмÑтане за „Заключване Ñлед Ñтартиране?“ трÑбва да бъде отметната по подразбиране при зареждане Set if the checkbox for "Warnings on?" should be checked by default at startup Задайте, ако кутийката за отмÑтане за „С предупреждениÑ?“ трÑбва да бъде отметната по подразбиране при зареждане The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Бутонът за затварÑне обикновено Ñкрива оÑÐ½Ð¾Ð²Ð½Ð¸Ñ Ð¿Ñ€Ð¾Ð·Ð¾Ñ€ÐµÑ†. Изключването на Ñкриването означава, че програмата qshutdown вмеÑто гореопиÑаното ще бъде напълно изключена. General Общи наÑтройки Advanced Раширени Suspend method: Метод за приÑпиване: automatic автоматично user defined Ñпоред избора на Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Hibernate method: Метод за дълбоко заÑпиване: Shutdown method: Метод за изключване на компютъра: Reboot method: Метод за реÑтартиране: Please input an user specified command for suspend here МолÑ, въведете команда по избор на Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ð·Ð° заÑпиване на компютъра тук Gnome session ÑеÑÐ¸Ñ Ð½Ð° Gnome KDE session ÑеÑÐ¸Ñ Ð½Ð° KDE Please input an user specified command for shutdown here МолÑ, въведете команда по избор на Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ð·Ð° изключване на компютъра тук Please input an user specified command for reboot here МолÑ, въведете команда по избор на Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ð·Ð° реÑтартиране на компютъра тук Please input an user specified command for hibernate here МолÑ, въведете команда по избор на Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ñ Ð·Ð° дълбоко заÑпиване на компютъра тук Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. ÐÑкои ÑиÑтеми например блокират изключването на компютъра, защото qshutdown вÑе още работи. Задайте региÑтриране (hook), ако иÑкате qshutdown по подразбиране да Ñе изключва напълно, когато обратното броене Ñвърши. Quit qshutdown after countdown ended? Пълно изключване на qshutdown при Ñвършване на обратното броене? &Start countdown at startup &Стартиране на обратното броене при зареждане Hide qshutdown at startup if "Start countdown" is checked. Скриване на qshutdown при зареждане, ако кутийката за отмÑтане при „Стартиране на обратното броене“ е отметната. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Във файла "%1" не може да Ñе запиÑва! Може би проÑто нÑмате нужните права за запиÑ, за да извършите гореопиÑаното. Error Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-bs.ts000066400000000000000000000635071515201227200272710ustar00rootroot00000000000000 About About qshutdown O qshutdownu Version Verzija &About O progr&amu &Thanks To &Zahvaljujemo <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">koristi Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, alat za odgoÄ‘eno gaÅ¡enje raÄunara</p><p >Autor: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Sva prava zadržana &copy; 2010-2023, Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Molimo vas da koristite <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> ili <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> za prijavu greÅ¡aka.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Kalendar Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Promijeni Å¡ifru Retype password: Ponovo upiÅ¡ite Å¡ifru: New password: Nova Å¡ifra: Old password: Stara Å¡ifra: The current password is not correct! Trenutna Å¡ifra nije taÄna! The retyped password doesn't match! Ponovljena Å¡ifra se ne poklapa! Editor Editor UreÄ‘ivaÄ Gui &Minimize! &Minimiziraj! Shutdown-time: Vrijeme gaÅ¡enja: Minutes till shutdown: Br. minuta do gaÅ¡enja: Reboot-time: Vrijeme ponovnog pokretanja: Minutes till reboot: Br. minuta do ponovnog pokretanja: Suspend-time: Vrijeme suspendovanja: Minutes till suspend: Br. minuta do suspendovanja: Hibernate-time: Vrijeme hibernacije: Minutes till hibernate: Br. minuta do hibernacije: shutdown in gaÅ¡enja za reboot in ponovno pokretanje za suspend in suspendovanje za hibernate in hibernacija za years godina months mjeseci hours sati days dana Res&tore &Obnovi &Minimize &Minimiziraj day dan minutes minuta seconds sekundi Shutdown Ugasi Reboot Ponovo pokreni Suspend Suspenduj Hibernate Hibernacija &Lock after start? &ZakljuÄati nakon pokretanja? &Warnings on? &UkljuÄiti upozorenja? &Now! &Odmah! You can set a date in the calendar Datum možete postaviti u kalendaru &OK &U redu R&eset &Resetuj &Quit &Izlaz &Info &Info &Logfile &IzvjeÅ¡taji &Preferences &Postavke &Shutdown &GaÅ¡enje &Reboot &Ponovo pokreni S&uspend S&uspendovanje &Hibernate &Hibernacija Lock settings after countdown started ZakljuÄaj postavke nakon Å¡to se pokrene brojaÄ Calendar Kalendar &File &Datoteka &Help &Pomoć &Settings &Postavke &About O progr&amu &Reset &Resetuj &Configure &Podesi &Keep proportions &Zadrži proporcije Warning Upozorenje Action imminent! Akcija je neizbježna! Information Informacije Countdown is not running! BrojaÄ nije pokrenut! Turns on/off all warnings UkljuÄuje/IskljuÄuje sva upozorenja About &Qt O &Qt-u Version Verzija Info Info Info PassWord Password Å ifra &Set password &Postavi Å¡ifru Password: Å ifra: The password is not correct! Ova Å¡ifra nije taÄna! &Change password &Promijeni Å¡ifru Preferences Preferences PodeÅ¡avanja Enable the &target time at startup Omogućava &željeno vrijeme pri pokretanju Shutdown Ugasi Shutdown type: Vrsta gaÅ¡enja: Target time: Željeno vrijeme: Minutes to countdown: Br. minuta do odbrojavanja: Font: Font: Font size 1: Font veliÄina 1: Font size 2: Font veliÄina 2: Font size 3: Font veliÄina 3: Size for log file: VeliÄina datoteke izvjeÅ¡taja: Reboot Ponovo pokreni Suspend Suspendovanje Hibernate Hibernacija A&utostart A&utomatsko pokretanje &Hide qshutdown at startup &Sakrij qshutdowm pri pokretanju Lock screen &for suspend and hibernate ZakljuÄaj ekran &za suspendovanje i hibernaciju &Edit configuration file &Uredi konfiguracijsku datoteku Enable the minute &countdown at startup &Omogući minutno &odbrojavanje pri pokretanju &Reset settings &Resetujpostavke Size for log file in KB VeliÄina izvjeÅ¡taja u KB "&Lock after start?" "&ZakljuÄati pri pokretanju?" "&Warnings on?" "&UkljuÄiti upozorenja?" Log start time of qshutdown and how long it was running Bilježi vrijeme pokretanja za qshutdown i vrijeme u kojem je bio pokrenut L&ogging I&zvjeÅ¡tavanje checkboxes and "now!" button potvÄ‘ivanje i dugme "odmah!" OK and Minimize buttons OK i dugme za minimiziranje Labels for example Npr. natpisi Set a font Postavite font What target time should be displayed by default at startup? Koje željeno vrijeme bi trebalo da bude prikazano pri pokretanju? How many minutes should be displayed for countdown by default at startup? Koliko minuta za brojaÄ bi trebalo biti prikazano pri pokretanju? What should be displayed first by default at startup? Å ta se prvo treba prikazati pri pokretanju? Set if the checkbox for "Lock after start?" should be checked by default at startup Da li će "ZakljuÄati nakon pokretanja?" biti odabrano kao poÄetna opcija Set if the checkbox for "Warnings on?" should be checked by default at startup Da li će "UkljuÄiti upozorenja?" biti odabrano kao poÄetna opcija The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Dugme za zatvaranje obiÄno sakriva glavni prozor. Onemogućavanje sakrivanja znaÄi da će se qshutdown onda zatvoriti. General Općenito Advanced Napredno Suspend method: Metoda suspendovanja: automatic automatski user defined korisniÄki definisano Hibernate method: Metoda hibernacije: Shutdown method: Metoda gaÅ¡enja: Reboot method: Metoda ponovnog pokretanja: Please input an user specified command for suspend here Molimo vas da ovdje upiÅ¡ete korisniÄku komandu za suspendovanje Gnome session Gnome sesija KDE session KDE sesija Please input an user specified command for shutdown here Molimo vas da ovdje upiÅ¡ete korisniÄku komandu za gaÅ¡enje Please input an user specified command for reboot here Molimo vas da ovdje upiÅ¡ete korisniÄku komandu za ponovno pokretanje Please input an user specified command for hibernate here Molimo vas da ovdje upiÅ¡ete korisniÄku komandu za hibernaciju Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Neki sistemi blokiraju gaÅ¡enje zbog toga Å¡to je qshutdown pokrenut. Možete postaviti opciju da se qshutdown zatvori nakon Å¡to se odbrojavanje zavrÅ¡i. Quit qshutdown after countdown ended? Zatvoriti qshutdown nakon Å¡to se odbrojavanje zavrÅ¡i? &Start countdown at startup &Pokreni brojaÄ pri pokretanju Hide qshutdown at startup if "Start countdown" is checked. Sakrij qshutdown pri pokretanju ako je "Pokreni brojaÄ" oznaÄeno. The File "%1" is not writable! Maybe you just don't have the permissions to do so. U datoteku "%1" se ne može zapisivati! Možda nemate potrebnu dozvolu za zapisivanje. Error GreÅ¡ka Please read this carefully! Molimo vas da ovo pažljivo proÄitate! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-cs.ts000066400000000000000000000572231515201227200272700ustar00rootroot00000000000000 About About qshutdown O aplikaci qshutdown Version Verze &About O &aplikaci &Thanks To PodÄ›&kování <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Kalendář Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password ZmÄ›nit heslo Retype password: Heslo znovu: New password: Nové heslo: Old password: Původní heslo: The current password is not correct! Aktuální heslo není správné! The retyped password doesn't match! PÅ™epsané heslo nesouhlasí! Editor Editor Editor Gui &Minimize! &Minimalizovat! Shutdown-time: ÄŒas vypnutí: Minutes till shutdown: Minut do vypnutí: Reboot-time: ÄŒas restartu: Minutes till reboot: Minut do restartu: Suspend-time: ÄŒas-uspání: Minutes till suspend: Minuty do uspání: Hibernate-time: ÄŒas-hibernace: Minutes till hibernate: Minuty do hibernace: shutdown in vypínání za reboot in restartování za suspend in uspání za hibernate in years roků months mÄ›síců hours hodin days dnů Res&tore Obnovi&t &Minimize &Minimalizovat day den minutes minut seconds vteÅ™in Shutdown Vypnutí Reboot Restartování Suspend Uspat do pamÄ›ti Hibernate Hibernace &Lock after start? &Warnings on? &Now! &TeÄ! You can set a date in the calendar Datum můžete nastavit pomocí kalendáře &OK &OK R&eset R&eset &Quit &UkonÄit &Info &Informace &Logfile &Preferences &PÅ™edvolby &Shutdown Vy&pnout &Reboot &Restartovat S&uspend &Uspat do RAM &Hibernate &Uspat na disk Lock settings after countdown started Uzamkne nastavení pokud bylo spuÅ¡tÄ›no odpoÄítávání Calendar Kalendář &File &Soubor &Help &NápovÄ›da &Settings &Nastavení &About &O programu &Reset O&bnovit &Configure &Nastavit &Keep proportions Warning UpozornÄ›ní Action imminent! Information Informace Countdown is not running! Běží odpoÄítávání! Turns on/off all warnings Zapnout/vypnout vÅ¡echna varování About &Qt O &Qt Version Verze Info Info Informace PassWord Password Heslo &Set password &Nastavit heslo Password: Heslo: The password is not correct! Å patné heslo! &Change password ZmÄ›nit &heslo Preferences Preferences Nastavení Enable the &target time at startup Shutdown Vypnout Shutdown type: Způsob vypnutí: Target time: Minutes to countdown: Minut do zaÄátku odpoÄívání: Font: Písmo: Font size 1: Velikost písma 1: Font size 2: Velikost písma 2: Font size 3: Velikost písma 3: Size for log file: Velikost logu: Reboot Restartovat Suspend Uspat do pamÄ›ti Hibernate Uspat na disk A&utostart &Hide qshutdown at startup Lock screen &for suspend and hibernate &Edit configuration file &Upravit konfiguraÄní soubor Enable the minute &countdown at startup &Reset settings &Resetovat nastavení Size for log file in KB Velikost logu v KB "&Lock after start?" "&Uzamknout po startu?" "&Warnings on?" Log start time of qshutdown and how long it was running L&ogging checkboxes and "now!" button OK and Minimize buttons Labels for example Set a font Nastavení písma What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. General Obecné Advanced PokroÄilé Suspend method: Metoda uspání: automatic automaticky user defined definováno uživatelem Hibernate method: Metoda hibernace: Shutdown method: Metoda vypínání: Reboot method: Metoda restartu: Please input an user specified command for suspend here Gnome session KDE session Please input an user specified command for shutdown here Please input an user specified command for reboot here Please input an user specified command for hibernate here Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? &Start countdown at startup Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Chyba Please read this carefully! Toto ÄtÄ›te pozornÄ›! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-de.ts000066400000000000000000000761541515201227200272570ustar00rootroot00000000000000 About About qshutdown Über qshutdown Version Version &About &Über &Thanks To &Dank an <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Nutzt Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, ein auf Uhrzeit und Countdown basierendes Werkzeug zum Herunterfahren</p><p >Autor: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023 Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Bitte benutzen Sie <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> oder <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a>, um Problemberichte zu melden.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >Besonderen Dank an:<br /></p><p >Fabian Deuchler für seine Hilfe hier und da.<br /><br />Und den Sponsoren Brian Nelson & Dr. Tobias Quathamer für das Hochladen nach Debian.<br /><br />Ebenso wie Miquel Banchs i Piqué für seine Idee eine Routine zu implementieren, die für jeden Tag eine eigene Einstellung erlaubt.</p> Calendar Calendar Kalender Weekly Wöchentlich activate weekly wöchentlich aktivieren Please note that you might want to enable autostart and countdown at startup. Sie werden vermutlich sowohl den Autostart als auch den automatischen Start des Countdowns bei Programmstart aktivieren wollen. ChangePassword Change Password Passwort ändern Retype password: Passwort wiederholen: New password: Neues Passwort: Old password: Altes Passwort: The current password is not correct! Das aktuelle Passwort ist nicht korrekt! The retyped password doesn't match! Das wiederholte Passwort stimmt nicht überein! Editor Editor Editor Gui &Minimize! &Minimieren! Shutdown-time: Abschaltzeit: Minutes till shutdown: Minuten bis zur Abschaltung: Reboot-time: Neustart-Zeit: Minutes till reboot: Minuten bis zum Neustart: Suspend-time: Standby-Zeit: Minutes till suspend: Minuten bis zum Standby: Hibernate-time: Ruhezustand-Zeit: Minutes till hibernate: Minuten bis zum Ruhezustand: shutdown in abschalten in reboot in Neustart in suspend in Standby in hibernate in Ruhezustand in years Jahren months Monaten hours Stunden days Tagen Res&tore &Wiederherstellen &Minimize &Minimieren day Tag minutes Minuten seconds Sekunden Shutdown Abschalten Reboot Neustart Suspend Standby Hibernate Ruhezustand &Lock after start? &Nach Start sperren? &Warnings on? &Warnungen an? &Now! &Jetzt! You can set a date in the calendar Sie können ein Datum im Kalender festlegen &OK &OK R&eset &Zurücksetzen &Quit &Beenden &Info &Info &Logfile &Protokolldatei &Preferences &Einstellungen &Shutdown &Abschalten &Reboot &Neustarten S&uspend S&tandby &Hibernate Ru&hezustand Lock settings after countdown started Sperre Einstellungen nachdem der Countdown gestartet hat Calendar Kalender &File &Datei &Help &Hilfe &Settings &Einstellungen &About &Über &Reset &Zurücksetzen &Configure &Konfigurieren &Keep proportions Pr&oportionen beibehalten Warning Warnung Action imminent! Ausführung steht kurz bevor! Information Information Countdown is not running! Der Countdown läuft nicht! Turns on/off all warnings Schaltet alle Warungen an/aus About &Qt Ü&ber Qt Version Version Info Info Info PassWord Password Passwort &Set password Passwort &festlegen Password: Passwort: The password is not correct! Das Passwort ist nicht korrekt! &Change password P&asswort ändern Preferences Preferences Einstellungen Enable the &target time at startup Aktiviere &Ziel-Zeit bei Programmstart Shutdown Abschalten Shutdown type: Abschalt-Methode: Target time: Ziel-Zeit: Minutes to countdown: Minuten für Countdown: Font: Schriftart: Font size 1: Schriftgröße 1: Font size 2: Schriftgröße 2: Font size 3: Schriftgröße 3: Size for log file: Größe der Protokolldatei: Reboot Neustart Suspend Standby Hibernate Ruhezustand A&utostart A&utostart &Hide qshutdown at startup &Verstecke qshutdown bei Programmstart Lock screen &for suspend and hibernate Sperre Bildschirm &für Standby und Ruhezustand &Edit configuration file &Konfigurationsdatei editieren Enable the minute &countdown at startup Aktiviere den Minuten-&Countdown bei Programmstart &Reset settings &Einstellungen zurücksetzen Size for log file in KB Größe der Protokolldatei in KB "&Lock after start?" "Nach dem Start &sperren?" "&Warnings on?" "&Warnungen an?" Log start time of qshutdown and how long it was running Protokolliere die Startzeit von qshutdown und wie lange es gelaufen ist L&ogging &Protokollieren checkboxes and "now!" button Checkboxen und "Jetzt!" Knopf OK and Minimize buttons OK und MInimieren Knöpfe Labels for example Z.B Beschriftungen Set a font Lege eine Schriftart fest What target time should be displayed by default at startup? Welche Ziel-Zeit soll bei Programmstart standardmäßig angezeigt werden? How many minutes should be displayed for countdown by default at startup? Wie viele Minuten sollen bei Programmstart standardmäßig für den Countdown angezeigt werden? What should be displayed first by default at startup? Was sollte bei Programmstart standardmäßig zuerst angezeigt werden? Set if the checkbox for "Lock after start?" should be checked by default at startup Setze ob die Checkbox für "Nach dem Start sperren?" standardmäßig gesetzt sein soll Set if the checkbox for "Warnings on?" should be checked by default at startup Setze ob die Checkbox für "Warnungen an?" bei Programmstart standardmäßig gesetzt sein soll The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Der Knopf zum schließen des Fensters versteckt für gewöhnlich das Hauptfenster. Das Verstecken zu deaktivieren bedeutet, dass qshutdown dann stattdessen beendet wird. General Allgemein Advanced Erweitert Suspend method: Methode für den Standby: automatic automatisch user defined benutzerdefiniert Hibernate method: Methode für den Ruhezustand: Shutdown method: Methode zum Abschalten: Reboot method: Methode zum Neustarten: Please input an user specified command for suspend here Bitte geben sie hier einen benutzerdefinierten Befehl für den Neustart ein Gnome session Gnome Session KDE session KDE Session Please input an user specified command for shutdown here Bitte geben sie hier einen benutzerdefinierten Befehl für das Abschalten ein Please input an user specified command for reboot here Bitte geben sie hier einen benutzerdefinierten Befehl für den Neustart ein Please input an user specified command for hibernate here Bitte geben sie hier einen benutzerdefinierten Befehl für den Ruhezustand ein Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Manche Systeme blockieren z.B. den Shutdown weil qshutdown noch läuft. Setze ein Häkchen, wenn qshutdown sich nach dem Ende des Countdowns beenden soll. Quit qshutdown after countdown ended? qshutdown nach dem Countdown beenden? &Start countdown at startup Starte &Countdown bei Programmstart Hide qshutdown at startup if "Start countdown" is checked. Verstecke qshutdown bei Programmstart, wenn "Starte Countdown bei Programmstart" abgehakt ist. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Die Datei "%1" ist nicht beschreibbar! Vielleicht haben Sie dazu einfach keine Rechte. Error Fehler Please read this carefully! Bitte lesen Sie dies sorgfältig! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Das Taskleistensymbol zu deaktivieren bedeutet, dass man qshutdown nicht mehr aus der Taskleiste wiederherstellen kann. Bitte erwäge auch "Beenden beim Schließen des Hauptfensters" und "Starte Countdown bei Programmstart" abzuhaken. Falls qshutdown noch läuft und Sie es wiederherstellen wollen, können Sie einfach qshutdown erneut ausführen so wie sie es gewöhnlich täten. Es wird sich dadurch wiederherstellen. Disable tray &icon Deakt&iviere das Taskleistensymbol &Quit on closing main window B&eenden beim Schließen des Hauptfensters QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> qshutdown wird sich selbst 3 mal als Warnung zeigen, falls weniger als 70 Sekunden übrig sind.<br/><br/>Dieses Programm benutzt qdbus um eine Shutdown/Neustart/Standby/Ruhezustand Anforderung an den Gnome- oder KDE-Session-Manager, zu HAL/ConsoleKit/DeviceKit/UPower zu senden und wenn nichts davon funktioniert, wird der Befehl 'sudo shutdown' benutzt (merke, dass die Sitzung niemals gespeichert werden kann, wenn die Anforderung an HAL oder ConsoleKit gesendet, oder der shutdown Befehl benutzt wird. Falls der shutdown Befehl benutzt wird, kann das Programm nur den Shutdown und Neutstart ausführen). Wenn also beim Erreichen des Shutdown- oder Neustart-Zeitpunkts nichts passiert, liegt das daran, dass einem die Rechte für den shutdown Befehl fehlen. In diesem Fall kann man das Folgende machen:<br/><br/>Füge das Folgende in ein Terminal ein:<pre>EDITOR=nano sudo -E visudo</pre>und füge diese Zeile hinzu:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>wobei * den Benuternamen oder %Gruppennamen ersetzt.<br/><br/>Die maximale Zahl für den Minuten-Countdown ist 1440 (24 Stunden).<br/>Die Konfigurationsdatei befindet sich im Verzeichnis <i>%1</i>.<br/>Die Protokolldatei befindet sich in <i>%2</i><br/><br/><b>Für Administratoren:</b><br/>Wenn Sie möchten, dass qshutdown mit "Kindersicherung" für alle Benutzer läuft, können Sie "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" ausführen und dann die Option Lock_all in /root/.qshutdown/qshutdown.conf auf true setzen. Beachten Sie bitte, dass qshutdown einmal gestartet worden sein muss, um die qshutdown.conf zu generieren. Des Weiteren sollte das Folgende in die sudoers eingetragen werden (wie oben):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>Falls Sie jemals das von Ihnen festgelegte Passwort vergessen sollten, können Sie einfach die ganze mit "Password" beginnende Zeile manuell aus der qshutdown.conf entfernen.<br/><br/><b>Hinweise zur Bedienung:</b><br/>Wenn man möchte, dass qshutdown aufhört zu "nerven", kann man einfach das Häckchen bei "Warnungen an?" entfernen.<br/><br/><b>Kürzel:</b><table border="1"><tr><td>Strg+I</td><td>(dieses) Informationsfenster</td></tr><tr><td>Strg+Q</td><td>Beenden</td></tr><tr><td>Strg+P</td><td>Einstellungen</td></tr><tr><td>Strg+L</td><td>schreibe in die Protokolldatei (funktioniert nur wenn qshutdown beendet wird. Um das permanent zu machen, stelle das in den Einstellungen ein.)</td></tr><tr><td>Strg+S</td><td>stelle auf Shutdown</td></tr><tr><td>Strg+R</td><td>stelle auf Neustart</td></tr><tr><td>Strg+U</td><td>stelle auf Standby (RAM)</td></tr><tr><td>Strg+H</td><td>stelle auf Ruhezustand</td></tr><tr><td>Strg+E</td><td>stoppe den Countdown (funktioniert nur bei laufendem Countdown und wenn der Administrator den Zugriff nicht eingeschränkt hat)</td></tr><tr><td>Umschalttaste(Shift)+E</td><td>zum editieren der Konfigurationsdatei (hierzu ist ein Passwort nötig, das man festlegen kann. Falls man Benutzer ist, kann man einfach ein "leeres Passwort" (Passwortfeld leer lassen) einstellen.)</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. Willkommen to qshutdown! Falls Sie qshutdown z.B. zum Herunterfahren des Systems benutzen möchten und Sie die Gnome Shell benutzen, dann werden Sie vermutlich einen Shutdown-Dialog angezeigt bekommen. Wenn Sie einen direkten Shutdown möchten, können Sie versuchen die Shutdown Methode auf ConsoleKit oder etwas anderes zu setzen. Auf der Internetseite https://launchpad.net/~hakaishi können Sie gerne Bugs berichten oder Übersetungen vorschlagen etc. Die Konfigurationsdatei is hier %1. Weitere Informationen im Info Fenster. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-de_DE.ts000066400000000000000000000761571515201227200276320ustar00rootroot00000000000000 About About qshutdown Über qshutdown Version Version &About &Über &Thanks To &Dank an <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Nutzt Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, ein auf Uhrzeit und Countdown basierendes Werkzeug zum Herunterfahren</p><p >Autor: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023 Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Bitte benutzen Sie <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> oder <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a>, um Problemberichte zu melden.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >Besonderen Dank an:<br /></p><p >Fabian Deuchler für seine Hilfe hier und da.<br /><br />Und den Sponsoren Brian Nelson & Dr. Tobias Quathamer für das Hochladen nach Debian.<br /><br />Ebenso wie Miquel Banchs i Piqué für seine Idee eine Routine zu implementieren, die für jeden Tag eine eigene Einstellung erlaubt.</p> Calendar Calendar Kalender Weekly Wöchentlich activate weekly wöchentlich aktivieren Please note that you might want to enable autostart and countdown at startup. Sie werden vermutlich sowohl den Autostart als auch den automatischen Start des Countdowns bei Programmstart aktivieren wollen. ChangePassword Change Password Passwort ändern Retype password: Passwort wiederholen: New password: Neues Passwort: Old password: Altes Passwort: The current password is not correct! Das aktuelle Passwort ist nicht korrekt! The retyped password doesn't match! Das wiederholte Passwort stimmt nicht überein! Editor Editor Editor Gui &Minimize! &Minimieren! Shutdown-time: Abschaltzeit: Minutes till shutdown: Minuten bis zur Abschaltung: Reboot-time: Neustart-Zeit: Minutes till reboot: Minuten bis zum Neustart: Suspend-time: Standby-Zeit: Minutes till suspend: Minuten bis zum Standby: Hibernate-time: Ruhezustand-Zeit: Minutes till hibernate: Minuten bis zum Ruhezustand: shutdown in abschalten in reboot in Neustart in suspend in Standby in hibernate in Ruhezustand in years Jahren months Monaten hours Stunden days Tagen Res&tore &Wiederherstellen &Minimize &Minimieren day Tag minutes Minuten seconds Sekunden Shutdown Abschalten Reboot Neustart Suspend Standby Hibernate Ruhezustand &Lock after start? &Nach Start sperren? &Warnings on? &Warnungen an? &Now! &Jetzt! You can set a date in the calendar Sie können ein Datum im Kalender festlegen &OK &OK R&eset &Zurücksetzen &Quit &Beenden &Info &Info &Logfile &Protokolldatei &Preferences &Einstellungen &Shutdown &Abschalten &Reboot &Neustarten S&uspend S&tandby &Hibernate Ru&hezustand Lock settings after countdown started Sperre Einstellungen nachdem der Countdown gestartet hat Calendar Kalender &File &Datei &Help &Hilfe &Settings &Einstellungen &About &Über &Reset &Zurücksetzen &Configure &Konfigurieren &Keep proportions Pr&oportionen beibehalten Warning Warnung Action imminent! Ausführung steht kurz bevor! Information Information Countdown is not running! Der Countdown läuft nicht! Turns on/off all warnings Schaltet alle Warungen an/aus About &Qt Ü&ber Qt Version Version Info Info Info PassWord Password Passwort &Set password Passwort &festlegen Password: Passwort: The password is not correct! Das Passwort ist nicht korrekt! &Change password P&asswort ändern Preferences Preferences Einstellungen Enable the &target time at startup Aktiviere &Ziel-Zeit bei Programmstart Shutdown Abschalten Shutdown type: Abschalt-Methode: Target time: Ziel-Zeit: Minutes to countdown: Minuten für Countdown: Font: Schriftart: Font size 1: Schriftgröße 1: Font size 2: Schriftgröße 2: Font size 3: Schriftgröße 3: Size for log file: Größe der Protokolldatei: Reboot Neustart Suspend Standby Hibernate Ruhezustand A&utostart A&utostart &Hide qshutdown at startup &Verstecke qshutdown bei Programmstart Lock screen &for suspend and hibernate Sperre Bildschirm &für Standby und Ruhezustand &Edit configuration file &Konfigurationsdatei editieren Enable the minute &countdown at startup Aktiviere den Minuten-&Countdown bei Programmstart &Reset settings &Einstellungen zurücksetzen Size for log file in KB Größe der Protokolldatei in KB "&Lock after start?" "Nach dem Start &sperren?" "&Warnings on?" "&Warnungen an?" Log start time of qshutdown and how long it was running Protokolliere die Startzeit von qshutdown und wie lange es gelaufen ist L&ogging &Protokollieren checkboxes and "now!" button Checkboxen und "Jetzt!" Knopf OK and Minimize buttons OK und MInimieren Knöpfe Labels for example Z.B Beschriftungen Set a font Lege eine Schriftart fest What target time should be displayed by default at startup? Welche Ziel-Zeit soll bei Programmstart standardmäßig angezeigt werden? How many minutes should be displayed for countdown by default at startup? Wie viele Minuten sollen bei Programmstart standardmäßig für den Countdown angezeigt werden? What should be displayed first by default at startup? Was sollte bei Programmstart standardmäßig zuerst angezeigt werden? Set if the checkbox for "Lock after start?" should be checked by default at startup Setze ob die Checkbox für "Nach dem Start sperren?" standardmäßig gesetzt sein soll Set if the checkbox for "Warnings on?" should be checked by default at startup Setze ob die Checkbox für "Warnungen an?" bei Programmstart standardmäßig gesetzt sein soll The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Der Knopf zum schließen des Fensters versteckt für gewöhnlich das Hauptfenster. Das Verstecken zu deaktivieren bedeutet, dass qshutdown dann stattdessen beendet wird. General Allgemein Advanced Erweitert Suspend method: Methode für den Standby: automatic automatisch user defined benutzerdefiniert Hibernate method: Methode für den Ruhezustand: Shutdown method: Methode zum Abschalten: Reboot method: Methode zum Neustarten: Please input an user specified command for suspend here Bitte geben sie hier einen benutzerdefinierten Befehl für den Neustart ein Gnome session Gnome Session KDE session KDE Session Please input an user specified command for shutdown here Bitte geben sie hier einen benutzerdefinierten Befehl für das Abschalten ein Please input an user specified command for reboot here Bitte geben sie hier einen benutzerdefinierten Befehl für den Neustart ein Please input an user specified command for hibernate here Bitte geben sie hier einen benutzerdefinierten Befehl für den Ruhezustand ein Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Manche Systeme blockieren z.B. den Shutdown weil qshutdown noch läuft. Setze ein Häkchen, wenn qshutdown sich nach dem Ende des Countdowns beenden soll. Quit qshutdown after countdown ended? qshutdown nach dem Countdown beenden? &Start countdown at startup Starte &Countdown bei Programmstart Hide qshutdown at startup if "Start countdown" is checked. Verstecke qshutdown bei Programmstart, wenn "Starte Countdown bei Programmstart" abgehakt ist. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Die Datei "%1" ist nicht beschreibbar! Vielleicht haben Sie dazu einfach keine Rechte. Error Fehler Please read this carefully! Bitte lesen Sie dies sorgfältig! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Das Taskleistensymbol zu deaktivieren bedeutet, dass man qshutdown nicht mehr aus der Taskleiste wiederherstellen kann. Bitte erwäge auch "Beenden beim Schließen des Hauptfensters" und "Starte Countdown bei Programmstart" abzuhaken. Falls qshutdown noch läuft und Sie es wiederherstellen wollen, können Sie einfach qshutdown erneut ausführen so wie sie es gewöhnlich täten. Es wird sich dadurch wiederherstellen. Disable tray &icon Deakt&iviere das Taskleistensymbol &Quit on closing main window B&eenden beim Schließen des Hauptfensters QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> qshutdown wird sich selbst 3 mal als Warnung zeigen, falls weniger als 70 Sekunden übrig sind.<br/><br/>Dieses Programm benutzt qdbus um eine Shutdown/Neustart/Standby/Ruhezustand Anforderung an den Gnome- oder KDE-Session-Manager, zu HAL/ConsoleKit/DeviceKit/UPower zu senden und wenn nichts davon funktioniert, wird der Befehl 'sudo shutdown' benutzt (merke, dass die Sitzung niemals gespeichert werden kann, wenn die Anforderung an HAL oder ConsoleKit gesendet, oder der shutdown Befehl benutzt wird. Falls der shutdown Befehl benutzt wird, kann das Programm nur den Shutdown und Neutstart ausführen). Wenn also beim Erreichen des Shutdown- oder Neustart-Zeitpunkts nichts passiert, liegt das daran, dass einem die Rechte für den shutdown Befehl fehlen. In diesem Fall kann man das Folgende machen:<br/><br/>Füge das Folgende in ein Terminal ein:<pre>EDITOR=nano sudo -E visudo</pre>und füge diese Zeile hinzu:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>wobei * den Benuternamen oder %Gruppennamen ersetzt.<br/><br/>Die maximale Zahl für den Minuten-Countdown ist 1440 (24 Stunden).<br/>Die Konfigurationsdatei befindet sich im Verzeichnis <i>%1</i>.<br/>Die Protokolldatei befindet sich in <i>%2</i><br/><br/><b>Für Administratoren:</b><br/>Wenn Sie möchten, dass qshutdown mit "Kindersicherung" für alle Benutzer läuft, können Sie "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" ausführen und dann die Option Lock_all in /root/.qshutdown/qshutdown.conf auf true setzen. Beachten Sie bitte, dass qshutdown einmal gestartet worden sein muss, um die qshutdown.conf zu generieren. Des Weiteren sollte das Folgende in die sudoers eingetragen werden (wie oben):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>Falls Sie jemals das von Ihnen festgelegte Passwort vergessen sollten, können Sie einfach die ganze mit "Password" beginnende Zeile manuell aus der qshutdown.conf entfernen.<br/><br/><b>Hinweise zur Bedienung:</b><br/>Wenn man möchte, dass qshutdown aufhört zu "nerven", kann man einfach das Häckchen bei "Warnungen an?" entfernen.<br/><br/><b>Kürzel:</b><table border="1"><tr><td>Strg+I</td><td>(dieses) Informationsfenster</td></tr><tr><td>Strg+Q</td><td>Beenden</td></tr><tr><td>Strg+P</td><td>Einstellungen</td></tr><tr><td>Strg+L</td><td>schreibe in die Protokolldatei (funktioniert nur wenn qshutdown beendet wird. Um das permanent zu machen, stelle das in den Einstellungen ein.)</td></tr><tr><td>Strg+S</td><td>stelle auf Shutdown</td></tr><tr><td>Strg+R</td><td>stelle auf Neustart</td></tr><tr><td>Strg+U</td><td>stelle auf Standby (RAM)</td></tr><tr><td>Strg+H</td><td>stelle auf Ruhezustand</td></tr><tr><td>Strg+E</td><td>stoppe den Countdown (funktioniert nur bei laufendem Countdown und wenn der Administrator den Zugriff nicht eingeschränkt hat)</td></tr><tr><td>Umschalttaste(Shift)+E</td><td>zum editieren der Konfigurationsdatei (hierzu ist ein Passwort nötig, das man festlegen kann. Falls man Benutzer ist, kann man einfach ein "leeres Passwort" (Passwortfeld leer lassen) einstellen.)</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. Willkommen to qshutdown! Falls Sie qshutdown z.B. zum Herunterfahren des Systems benutzen möchten und Sie die Gnome Shell benutzen, dann werden Sie vermutlich einen Shutdown-Dialog angezeigt bekommen. Wenn Sie einen direkten Shutdown möchten, können Sie versuchen die Shutdown Methode auf ConsoleKit oder etwas anderes zu setzen. Auf der Internetseite https://launchpad.net/~hakaishi können Sie gerne Bugs berichten oder Übersetungen vorschlagen etc. Die Konfigurationsdatei is hier %1. Weitere Informationen im Info Fenster. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-en_AU.ts000066400000000000000000000734661515201227200276610ustar00rootroot00000000000000 About About qshutdown About qshutdown Version Version &About &About &Thanks To &Thanks To <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, a time and countdown based shut down tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendar Weekly Weekly activate weekly activate weekly Please note that you might want to enable autostart and countdown at startup. Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Change Password Retype password: Retype password: New password: New password: Old password: Old password: The current password is not correct! The current password is not correct! The retyped password doesn't match! The retyped password doesn't match! Editor Editor Editor Gui &Minimize! &Minimise! Shutdown-time: Shutdown-time: Minutes till shutdown: Minutes until shutdown: Reboot-time: Reboot-time: Minutes till reboot: Minutes until reboot: Suspend-time: Suspend-time: Minutes till suspend: Minutes until suspend: Hibernate-time: Hibernate-time: Minutes till hibernate: Minutes till hibernate: shutdown in shutdown in reboot in reboot in suspend in suspend in hibernate in hibernate in years years months months hours hours days days Res&tore Res&tore &Minimize &Minimise day day minutes minutes seconds seconds Shutdown Shutdown Reboot Reboot Suspend Suspend Hibernate Hibernate &Lock after start? &Lock after start? &Warnings on? &Warnings on? &Now! &Now! You can set a date in the calendar You can set a date in the calendar &OK &OK R&eset R&eset &Quit &Quit &Info &Info &Logfile &Logfile &Preferences &Preferences &Shutdown &Shutdown &Reboot &Reboot S&uspend S&uspend &Hibernate &Hibernate Lock settings after countdown started Lock settings after countdown started Calendar Calendar &File &File &Help &Help &Settings &Settings &About &About &Reset &Reset &Configure &Configure &Keep proportions &Keep proportions Warning Warning Action imminent! Action imminent! Information Information Countdown is not running! Countdown is not running! Turns on/off all warnings Turns on/off all warnings About &Qt About &Qt Version Version Info Info Info PassWord Password Password &Set password &Set password Password: Password: The password is not correct! The password is not correct! &Change password &Change password Preferences Preferences Preferences Enable the &target time at startup Enable the &target time at startup Shutdown Shutdown Shutdown type: Shutdown type: Target time: Target time: Minutes to countdown: Minutes to countdown: Font: Font: Font size 1: Font size 1: Font size 2: Font size 2: Font size 3: Font size 3: Size for log file: Size for log file: Reboot Reboot Suspend Suspend Hibernate Hibernate A&utostart A&utostart &Hide qshutdown at startup &Hide qshutdown at startup Lock screen &for suspend and hibernate Lock screen &for suspend and hibernate &Edit configuration file &Edit configuration file Enable the minute &countdown at startup Enable the minute &countdown at startup &Reset settings &Reset settings Size for log file in KB Size for log file in KB "&Lock after start?" "&Lock after start?" "&Warnings on?" "&Warnings on?" Log start time of qshutdown and how long it was running Log start time of qshutdown and how long it was running L&ogging L&ogging checkboxes and "now!" button checkboxes and "now!" button OK and Minimize buttons OK and Minimise buttons Labels for example Labels for example Set a font Set a font What target time should be displayed by default at startup? What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. General General Advanced Advanced Suspend method: Suspend method: automatic automatic user defined user defined Hibernate method: Hibernate method: Shutdown method: Shutdown method: Reboot method: Reboot method: Please input an user specified command for suspend here Please input a user specified command for suspend here Gnome session Gnome session KDE session KDE session Please input an user specified command for shutdown here Please input a user specified command for shut down here Please input an user specified command for reboot here Please input an user specified command for reboot here Please input an user specified command for hibernate here Please input an user specified command for hibernate here Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Some systems block for example the shut down because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? Quit qshutdown after countdown ended? &Start countdown at startup &Start countdown at startup Hide qshutdown at startup if "Start countdown" is checked. Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Error Please read this carefully! Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at start up". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon Disable tray &icon &Quit on closing main window &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-en_GB.ts000066400000000000000000000734631515201227200276410ustar00rootroot00000000000000 About About qshutdown About qshutdown Version Version &About &About &Thanks To &Thanks To <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendar Weekly Weekly activate weekly activate weekly Please note that you might want to enable autostart and countdown at startup. Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Change Password Retype password: Retype password: New password: New password: Old password: Old password: The current password is not correct! The current password is not correct! The retyped password doesn't match! The retyped password doesn't match! Editor Editor Editor Gui &Minimize! &Minimise! Shutdown-time: Shutdown-time: Minutes till shutdown: Minutes til shutdown: Reboot-time: Reboot-time: Minutes till reboot: Minutes til reboot: Suspend-time: Suspend-time: Minutes till suspend: Minutes til suspend: Hibernate-time: Hibernate-time: Minutes till hibernate: Minutes til hibernate: shutdown in shutdown in reboot in reboot in suspend in suspend in hibernate in hibernate in years years months months hours hours days days Res&tore Res&tore &Minimize &Minimise day day minutes minutes seconds seconds Shutdown Shutdown Reboot Reboot Suspend Suspend Hibernate Hibernate &Lock after start? &Lock after start? &Warnings on? &Warnings on? &Now! &Now! You can set a date in the calendar You can set a date in the calendar &OK &OK R&eset R&eset &Quit &Quit &Info &Info &Logfile &Logfile &Preferences &Preferences &Shutdown &Shutdown &Reboot &Reboot S&uspend S&uspend &Hibernate &Hibernate Lock settings after countdown started Lock settings after countdown has begun Calendar Calendar &File &File &Help &Help &Settings &Settings &About &About &Reset &Reset &Configure &Configure &Keep proportions &Keep proportions Warning Warning Action imminent! Action imminent! Information Information Countdown is not running! Countdown is not running! Turns on/off all warnings Turns on/off all warnings About &Qt About &Qt Version Version Info Info Info PassWord Password Password &Set password &Set password Password: Password: The password is not correct! The password is not correct! &Change password &Change password Preferences Preferences Preferences Enable the &target time at startup Enable the &target time at startup Shutdown Shutdown Shutdown type: Shutdown type: Target time: Target time: Minutes to countdown: Minutes to countdown: Font: Font: Font size 1: Font size 1: Font size 2: Font size 2: Font size 3: Font size 3: Size for log file: Size for log file: Reboot Reboot Suspend Suspend Hibernate Hibernate A&utostart A&utostart &Hide qshutdown at startup &Hide qshutdown at startup Lock screen &for suspend and hibernate Lock screen &for suspend and hibernate &Edit configuration file &Edit configuration file Enable the minute &countdown at startup Enable the minute &countdown at startup &Reset settings &Reset settings Size for log file in KB Size for log file in KB "&Lock after start?" "&Lock after start?" "&Warnings on?" "&Warnings on?" Log start time of qshutdown and how long it was running Log start time of qshutdown and how long it was running L&ogging L&ogging checkboxes and "now!" button checkboxes and "now!" button OK and Minimize buttons OK and Minimise buttons Labels for example Labels for example Set a font Set a font What target time should be displayed by default at startup? What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. The close button usually hides the main window. Disabling hiding means that qshutdown will then quit instead. General General Advanced Advanced Suspend method: Suspend method: automatic automatic user defined user-defined Hibernate method: Hibernate method: Shutdown method: Shutdown method: Reboot method: Reboot method: Please input an user specified command for suspend here Please input a user-specified command for suspend here Gnome session Gnome session KDE session KDE session Please input an user specified command for shutdown here Please input a user-specified command for shutdown here Please input an user specified command for reboot here Please input a user-specified command for reboot here Please input an user specified command for hibernate here Please input a user-specified command for hibernate here Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Some systems may block for the shutdown procedure because qshutdown is still running. Set a hook if qshutdown should quit when the countdown ends. Quit qshutdown after countdown ended? Quit qshutdown after countdown ends? &Start countdown at startup &Start countdown at startup Hide qshutdown at startup if "Start countdown" is checked. Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Error Please read this carefully! Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disabling the tray icon means that it is no longer possible to restore qshutdown from the tray. Please also consider checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon Disable tray &icon &Quit on closing main window &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-eo.ts000066400000000000000000000577201515201227200272700ustar00rootroot00000000000000 About About qshutdown Pri qshutdown Version Versio &About &Pri &Thanks To &Dankon al <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Uzado de Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Kalendaro Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password ÅœanÄi pasvorton Retype password: Retajpu pasvorton: New password: Nova pasvorto: Old password: Malnova pasvorto: The current password is not correct! La aktuala pasvorto ne estas korekta! The retyped password doesn't match! La retajpita pasvorto ne kongruas! Editor Editor Redaktilo Gui &Minimize! &Malmaksimigu! Shutdown-time: Tempo de elÅalto: Minutes till shutdown: Minutoj Äis elÅalto: Reboot-time: Tempo de restartigo: Minutes till reboot: Minutoj Äis restartigo: Suspend-time: Tempo de suspendo: Minutes till suspend: Minutoj Äis suspendo: Hibernate-time: Tempo de pasivumigo: Minutes till hibernate: Minutoj Äis pasivumigo: shutdown in elÅalto en reboot in restartigo en suspend in suspendo en hibernate in pasivumigo en years jaroj months monatoj hours horoj days tagoj Res&tore Res&taÅ­rigi &Minimize &Minimumigi day tago minutes minutoj seconds sekundoj Shutdown ElÅalti Reboot Restartigi Suspend Prokrasti Hibernate Pasivumigi &Lock after start? Ĉu Å&losi post starto? &Warnings on? Ĉu enÅalti a&vertojn? &Now! &Nun! You can set a date in the calendar Vi povas agordi daton en la kalendaro &OK &Bone R&eset R&eÅarÄi &Quit &Eliri &Info &Informoj &Logfile Dosierprotoko&lo &Preferences &Agordoj &Shutdown &ElÅalti &Reboot &Restartigi S&uspend S&uspendi &Hibernate &Pasivumigi Lock settings after countdown started Åœlosi agordojn post ol startigo de Äisnombrado Calendar Kalendaro &File &Dosiero &Help &Helpo &Settings &Agordoj &About &Pri &Reset &ReÅarÄi &Configure &Agordi &Keep proportions &Manteni proporciojn Warning Averto Action imminent! Ago tujas! Information Informoj Countdown is not running! Äœisnombrado ne estas rulanta! Turns on/off all warnings EnÅalti/malÅalti ĉiujn avertojn About &Qt Pri &Qt Version Versio Info Info Informoj PassWord Password Pasvorto &Set password Agordi pa&svorton Password: Pasvorto: The password is not correct! La pasvorto ne estas korekta! &Change password ÅœanÄi pa&svorton Preferences Preferences Agordoj Enable the &target time at startup EnÅalti la &tempon de celo je startigo Shutdown ElÅalti Shutdown type: Speco de elÅalto: Target time: Tempo de celo: Minutes to countdown: Minutoj al Äisnombrado: Font: Tiparo: Font size 1: Grando de tiparo 1: Font size 2: Grando de tiparo 2: Font size 3: Grando de tiparo 3: Size for log file: Grando de protokoldosieroj: Reboot Restartigi Suspend Suspendi Hibernate Pasivumigi A&utostart AÅ­t&omata starto &Hide qshutdown at startup &KaÅi qelÅalton je startigo Lock screen &for suspend and hibernate Åœlosi ekranon &por prokrasto kaj pasivumigo &Edit configuration file R&edakti agorddosieron Enable the minute &countdown at startup EnÅalti la &minutan Äisnombradon je starto &Reset settings &Rekomencigi agordojn Size for log file in KB Grando de protokoldosieroj (kB) "&Lock after start?" "Ĉu Å&losi post startigo?" "&Warnings on?" "Ĉu enÅalti a&vertojn?" Log start time of qshutdown and how long it was running L&ogging Pr&otokolado checkboxes and "now!" button OK and Minimize buttons Butonoj Bone kaj Minimumigi Labels for example Set a font Agordi tiparon What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. General Äœenerala Advanced Progresita Suspend method: Prokrasta metodo: automatic aÅ­tomata user defined difinita de uzanto Hibernate method: Pasivumiga metodo: Shutdown method: ElÅalta metodo: Reboot method: Restartiga metodo: Please input an user specified command for suspend here Gnome session GNOME-seanco KDE session KDE-seanco Please input an user specified command for shutdown here Please input an user specified command for reboot here Please input an user specified command for hibernate here Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? &Start countdown at startup &Startigi Äisnombrado je startigo Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-es.ts000066400000000000000000000651241515201227200272710ustar00rootroot00000000000000 About About qshutdown Acerca de qshutdown Version Versión &About &Acerca de &Thanks To Agradecimien&tos a <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Utiliza Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, un tiempo regresivo basado en la herramienta de apagado shutdown tool</p><p >Autor: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, por Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> Para reportar un error.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendario Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Cambiar contraseña Retype password: Vuelva a escribir la contraseña: New password: Contraseña nueva: Old password: Contraseña anterior: The current password is not correct! La contraseña actual no es correcta. The retyped password doesn't match! La contraseña reescrita no coincide. Editor Editor Editor Gui &Minimize! &Minimizar Shutdown-time: Tiempo de apagado: Minutes till shutdown: Minutos hasta apagar: Reboot-time: Tiempo de reinicio: Minutes till reboot: Minutos hasta reiniciar: Suspend-time: Tiempo de suspensión: Minutes till suspend: Minutos hasta suspender: Hibernate-time: Tiempo de hibernado: Minutes till hibernate: Minutos hasta hibernar: shutdown in apagado en reboot in reinicio en suspend in suspensión en hibernate in hibernación en years años months meses hours horas days días Res&tore Res&taurar &Minimize &Minimizar day día minutes minutos seconds segundos Shutdown Apagar Reboot Reiniciar Suspend Suspender Hibernate Hibernar &Lock after start? ¿&Bloquear después de iniciar? &Warnings on? ¿Activar a&visos? &Now! &Ahora You can set a date in the calendar Puede establecer una fecha en el calendario &OK &Aceptar R&eset R&establecer &Quit &Salir &Info &Información &Logfile Archivo de &registro &Preferences &Preferencias &Shutdown &Apagar &Reboot &Reiniciar S&uspend S&uspender &Hibernate &Hibernar Lock settings after countdown started Bloquear la configuración después de iniciada la cuenta atrás Calendar Calendario &File &Archivo &Help Ay&uda &Settings &Opciones &About &Acerca de &Reset &Restablecer &Configure &Configurar &Keep proportions &Mantener proporciones Warning Aviso Action imminent! ¡Acción inminente! Information Información Countdown is not running! La cuenta regresiva no está corriendo! Turns on/off all warnings Activa o desactiva todos los avisos About &Qt Acerca de &Qt Version Versión Info Info Información PassWord Password Contraseña &Set password E&stablecer contraseña Password: Contraseña: The password is not correct! La contraseña no es correcta. &Change password &Cambiar contraseña Preferences Preferences Preferencias Enable the &target time at startup Habilitar el &objetivo y el tiempo en el arranque Shutdown Apagar Shutdown type: Tipo de apagado: Target time: Tiempo Objetivo: Minutes to countdown: Minutos a la cuenta regresiva: Font: Tipo de letra: Font size 1: Tamaño de letra 1: Font size 2: Tamaño de letra 2: Font size 3: Tamaño de letra 3: Size for log file: Tamaño para el archivo log: Reboot Reiniciar Suspend Suspender Hibernate Hibernar A&utostart Iniciar a&utomáticamente &Hide qshutdown at startup &Ocultar qshutdown al inicio Lock screen &for suspend and hibernate &Bloquear la pantalla al suspender o hibernar &Edit configuration file &Editar archivo de configuración Enable the minute &countdown at startup Habilitar el &contador de minutos al inicio &Reset settings &Restablecer opciones Size for log file in KB Tamaño para el archivo log en KB "&Lock after start?" «¿&Bloquear después de iniciar?» "&Warnings on?" «¿Activar a&visos?» Log start time of qshutdown and how long it was running Registrar el tiempo de inicio de qshutdown y por cuánto estuvo en funcionamiento L&ogging &Registro checkboxes and "now!" button casillas de verificación y botón «ahora» OK and Minimize buttons Botones Aceptar y Minimizar Labels for example Etiquetas por ejemplo Set a font Establecer un tipo de letra What target time should be displayed by default at startup? ¿Qué tiempo objetivo debe ser visualizado por defecto en el arranque? How many minutes should be displayed for countdown by default at startup? ¿Cuántos minutos deberán ser mostrados, por defecto, para la cuenta regresiva al inicio? What should be displayed first by default at startup? ¿Qué se debe mostrar en primer lugar por defecto en el arranque? Set if the checkbox for "Lock after start?" should be checked by default at startup Establecer si la casilla de verificación "Bloquear después de empezar?" debe ser marcada por defecto en el arranque Set if the checkbox for "Warnings on?" should be checked by default at startup Establecer si la casilla de verificación de "Advertencias sobre?" debe ser marcada por defecto en el arranque The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Normalmente, el botón de cerrar oculta la ventana principal. Al desactivar el ocultamiento se saldrá completamente de la aplicación al pulsar el botón, en vez de ocultarla. General General Advanced Avanzado Suspend method: Método de suspensión: automatic automático user defined definido por el usuario Hibernate method: Método de hibernación: Shutdown method: Método de apagado: Reboot method: Método de reinicio: Please input an user specified command for suspend here Escriba aquí un comando específico para suspender Gnome session Sesión de Gnome KDE session Sesión de KDE Please input an user specified command for shutdown here Escriba aquí un comando específico para apagar Please input an user specified command for reboot here Escriba aquí un comando específico para reiniciar Please input an user specified command for hibernate here Ingrese un comando específico de usuario para hibernar Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Algunos sistemas bloquean por ejemplo el apagado por que qshutdown esta aún corriendo. Establezca un gancho si qshutdown deberá cerrarse después de terminada la cuenta regresiva. Quit qshutdown after countdown ended? ¿Salir de qshutdown cuando termine la cuenta atrás? &Start countdown at startup &Inicia la cuenta regresiva en el inicio Hide qshutdown at startup if "Start countdown" is checked. Oculta qshutdown al inicio si "Iniciar la cuenta regresiva" está marcado. The File "%1" is not writable! Maybe you just don't have the permissions to do so. El archivo «%1» no es escribible. Quizá no tiene los permisos para hacerlo. Error Error Please read this carefully! Por favor, lea esto cuidadosamente! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Desactivación del icono de la bandeja significa que ya no es posible para restaurar qshutdown desde la bandeja. Por favor, considerar también la comprobación "Salir al cerrar la ventana principal "y" Ocultar qshutdown en el arranque ". Si qshutdown todavía se está ejecutando y desea que reaparezca, a continuación, sólo ejecutar qshutdown de nuevo, del mismo modo como lo haría normalmente. Por lo tanto, volverá a aparecer. Disable tray &icon Desactivar la bandeja y el &icono &Quit on closing main window &Salir al cierre de la ventana principal QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-fr.ts000066400000000000000000001007741515201227200272720ustar00rootroot00000000000000 About About qshutdown À propos de qshutdown Version Version &About À &propos &Thanks To &Remerciements <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Utilisant Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, un outil d'extinction basé sur un compte à rebours par rapport à une heure</p><p >Auteur : Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, par Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Veuillez utiliser <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> ou <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> pour faire remonter des problèmes.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >Remerciements particuliers à :<br /></p><p > Fabian Deuchler pour son aide ici et là.<br /><br />À Brian Nelson et au Dr Tobias Quathamer pour avoir parrainé les téléversements vers Debian.< br /><br />Ainsi qu'à Miquel Banchs i Piqué pour l'idée d'implémenter une routine permettant des réglages personnalisés pour chaque jour de la semaine.</p> Calendar Calendar Agenda Weekly Toutes les semaines activate weekly activer chaque semaine Please note that you might want to enable autostart and countdown at startup. Veuillez noter que vous souhaiterez peut-être activer le démarrage automatique et le compte à rebours au démarrage. ChangePassword Change Password Modifier le mot de passe Retype password: Ressaisir le mot de passe : New password: Nouveau mot de passe : Old password: Ancien mot de passe : The current password is not correct! Le mot de passe actuel n'est pas correct ! The retyped password doesn't match! Le second mot de passe ne correspond pas ! Editor Editor Éditeur Gui &Minimize! &Minimiser ! Shutdown-time: Heure d'extinction : Minutes till shutdown: Minutes avant arrêt : Reboot-time: Heure de redémarrage : Minutes till reboot: Minutes avant redémarrage : Suspend-time: Heure de suspension : Minutes till suspend: Minutes avant mise en veille : Hibernate-time: Heure d'hibernation : Minutes till hibernate: Minutes jusqu'à la mise en veille prolongée : shutdown in arrêt dans reboot in redémarrage dans suspend in mise en veille dans hibernate in mettre en veille prolongée dans years années months mois hours heures days jours Res&tore Res&taurer &Minimize &Minimiser day jour minutes minutes seconds secondes Shutdown Éteindre Reboot Redémarrer Suspend Mettre en veille Hibernate Mettre en veille prolongée &Lock after start? &Verrouiller après le démarrage ? &Warnings on? &Avertissements activés ? &Now! &Maintenant ! You can set a date in the calendar Vous pouvez définir une date dans l'agenda &OK &Valider R&eset R&éinitialiser &Quit &Quitter &Info &Informations &Logfile &Fichier journal &Preferences &Préférences &Shutdown &Arrêt &Reboot &Redémarrage S&uspend Mettre en &veille &Hibernate &Mettre en veille prolongée Lock settings after countdown started Verrouiller les paramètres après le début du compte à rebours Calendar Agenda &File &Fichier &Help &Aide &Settings &Paramètres &About À &propos &Reset &Réinitialiser &Configure &Configurer &Keep proportions &Conserver les proportions Warning Avertissement Action imminent! Action imminente ! Information Informations Countdown is not running! Le compte à rebours n'est pas actif ! Turns on/off all warnings Activer/désactiver tous les avertissements About &Qt À propos de &Qt Version Version Info Info Informations PassWord Password Mot de passe &Set password &Définir le mot de passe Password: Mot de passe : The password is not correct! Le mot de passe n'est pas correct ! &Change password &Modifier le mot de passe Preferences Preferences Préférences Enable the &target time at startup Activer l'heure &cible au démarrage Shutdown Éteindre Shutdown type: Type d'arrêt : Target time: Heure cible : Minutes to countdown: Minutes avant le compte à rebours : Font: Police de caractères : Font size 1: Taille de police de caractères 1 : Font size 2: Taille de police de caractères 2 : Font size 3: Taille de police de caractères 3 : Size for log file: Taille du fichier journal : Reboot Redémarrer Suspend Mettre en veille Hibernate Mettre en veille prolongée A&utostart Démarrage a&utomatique &Hide qshutdown at startup &Masquer qshutdown au démarrage Lock screen &for suspend and hibernate Verrouiller l'écran &durant la veille ou la veille prolongée &Edit configuration file &Modifier le fichier de configuration Enable the minute &countdown at startup Activer le &compte à rebours en minutes au démarrage &Reset settings &Réinitialiser les paramètres Size for log file in KB Taille du fichier journal en ko "&Lock after start?" «&Vérouiller après démarrage?» "&Warnings on?" «&Avertissements activés?» Log start time of qshutdown and how long it was running Enregistrer l'heure de démarrage de qtshutdown et sa durée d'exécution L&ogging J&ournalisation checkboxes and "now!" button cases à cocher et bouton « maintenant ! Â» OK and Minimize buttons Boutons OK et Minimiser Labels for example Étiquettes pour exemple Set a font Définir une police de caractères What target time should be displayed by default at startup? Quelle heure cible doit être affichée par défaut au démarrage ? How many minutes should be displayed for countdown by default at startup? Combien de minutes doivent être affichées pour le compte à rebours par défaut au démarrage ? What should be displayed first by default at startup? Qu'est-ce qui doit être affiché en premier par défaut au démarrage ? Set if the checkbox for "Lock after start?" should be checked by default at startup Définir si la case « Verrouiller après le démarrage ? Â» doit être cochée par défaut au démarrage Set if the checkbox for "Warnings on?" should be checked by default at startup Définir si la case « Avertissements activés ? Â» doit être cochée par défaut au démarrage The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Le bouton fermer masque habituellement la fenêtre principale. Désactiver le masquage signifie que qshutdown sera alors réellement fermé à la place. General Général Advanced Avancé Suspend method: Méthode de mise en veille : automatic automatique user defined défini par l'utilisateur Hibernate method: Méthode de mise en veille prolongée : Shutdown method: Méthode d'arrêt : Reboot method: Méthode de redémarrage : Please input an user specified command for suspend here Veuillez saisir ici une commande spécifiée par l'utilisateur/trice pour la suspension Gnome session Session GNOME KDE session Session KDE Please input an user specified command for shutdown here Veuillez entrer ici une commande spécifiée par l'utilisateur/trice pour l'extinction Please input an user specified command for reboot here Veuillez saisir ici une commande spécifiée par l'utilisateur/trice pour le redémarrage Please input an user specified command for hibernate here Veuillez saisir ici une commande spécifiée par l'utilisateur/trice pour l'hibernation Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Certains systèmes bloquent par exemple l'extinction car qshutdown est toujours en cours d'exécution. Cochez si qshutdown doit quitter après que le compte à rebours soit terminé. Quit qshutdown after countdown ended? Quitter qshutdown après la fin du compte à rebours ? &Start countdown at startup &Démarrer le compte à rebours au démarrage Hide qshutdown at startup if "Start countdown" is checked. Masquer qshutdown au démarrage si « Démarrer le compte à rebours Â»  est coché. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Le fichier « %1 Â» n'est pas accessible en écriture ! Peut-être que vous n'avez tout simplement pas les autorisations pour le faire. Error Erreur Please read this carefully! Veuillez lire ceci attentivement ! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. La désactivation de l'icône de la barre de notification signifie qu'il n'est plus possible de restaurer qshutdown à partir de cette barre. Veuillez aussi réfléchir à cocher « Quitter à la fermeture de la fenêtre principale » et « Masquer qshutdown au démarrage » . Si qshutdown est toujours en cours d'exécution et que vous souhaitez qu'il réapparaisse, alors exécutez tout simplement de nouveau qshutdown, tout comme vous le feriez normalement. Il réapparaîtra ainsi. Disable tray &icon Désactiver l'&icône de la barre d'état &Quit on closing main window &Quitter en fermant la fenêtre principale QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> qshutdown s'affichera 3 fois comme un avertissement s'il reste moins de 70 secondes.<br/><br/>Ce programme utilise qdbus pour envoyer une requête arrêt/redémarrage/mise en veille/mise en veille prolongée au gestionnaire gnome- ou kde-session-manager, à HAL/ConsoleKit/DeviceKit/UPower et si aucun ne fonctionne, la commande « sudo shutdown Â» sera utilisé (notez que lors de l'envoi de la demande d'arrêt à HAL ou à ConsoleKit, ou que la commande d'arrêt est utilisée, la session ne sera jamais enregistrée. Si la commande d'arrêt est utilisée, le programme ne pourra que s'arrêter et redémarrer). Donc, si rien ne se produit lorsque l'heure d'arrêt ou de redémarrage est atteinte, vous n'aurez pas les droits pour la commande d'arrêt. Dans ce cas, vous pouvez faire ce qui suit.<br/><br/>Collez ce qui suit dans un terminal :<pre>EDITOR=nano sudo -E visudo</pre> et ajoutez cette ligne :<pre>* ALL = NOPASSWD:/sbin/shutdown</pre> tandis que * remplace le nom d'utilisateur ou %groupname.<br/><br/>Le nombre maximum de countdown_minutes est de 1440 (24 heures).<br/>Le fichier de configuration se trouve à<i>%1</i>.<br/>Le fichier journal se trouve à %2<br/><br/><b>Pour les administrateurs :</b><br/>si vous souhaitez que qshutdown s'exécute avec « parental lock Â» pour chaque utilisateur, vous pouvez faire « ssudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/ Â» et définir l'option Lock_all dans le fichier ini à vrai. Notez que qshutdown doit démarrer une fois pour générer le fichier de paramètres qshutdown. De plus, il est nécessaire d'ajouter la ligne suivante aux sudoers (comme ci-dessus) :<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>Si jamais vous oubliez votre mot de passe, supprimez manuellement la ligne entière commençant par « Password Â» dans les paramètres de qshutdown.<br/><br/><b>Conseils sur l'utilisation :</b><br/>Si vous voulez que qshutdown arrête de « vous embêter Â», retirez simplement le crochet de « Avertissements ? Â». Pour le rendre permanent, faites simplement la même chose dans les préférences.<br/><br/><b>Raccourcis clavier :</b><table border=\"1\"><tr><td>Ctrl + I</td><td>(cette) fenêtre d'informations</td></tr><tr><td>Ctrl+Q</td><td>Quitter</td></tr><tr><td>Ctrl + P</td><td>Préférences</td></tr><tr><td>Ctrl + L</td><td>écrire le temps d'exécution une fois dans le fichier journal (ne fonctionne que si qshutdown se ferme. Pour le rendre permanent, définissez-le dans les préférences.)</td></tr><tr><td>Ctrl + S</td><td>définir l'arrêt</td></tr><tr><td>Ctrl + R</td><td>définir le redémarrage</td></tr><tr><td>Ctrl + U</td><td>définir la mise en veille de la RAM</td></tr><tr><td>Ctrl + H</td><td>définir la mise en veille prolongée</td></tr><tr><td>Ctrl + E</td><td>arrêter le compte à rebours (uniquement si le compte à rebours a commencé et que l'administrateur n'a pas restreint l'accès)</td></tr><tr><td>Shift + E/td><td>pour éditer le fichier de configuration (un mot de passe est nécessaire. Si vous êtes un utilisateur, vous pouvez définir un « mot de passe vide Â» (laissez le champ mot de passe vide)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. Bienvenue sur qprogram-starter ! Si vous voulez que qprogram-starter arrête automatiquement le système et que vous utilisez Gnome Shell, vous obtiendrez probablement une boîte de dialogue d'arrêt. Si vous souhaitez un arrêt direct, veuillez vous rendre dans les préférences et définir la méthode d'arrêt sur ConsoleKit ou autre. N'hésitez pas à visiter https://launchpad.net/~hakaishi pour signaler des bogues ou pour tout ce qui concerne les traductions. Le fichier de paramètres se trouve à %1. Pour plus d'informations, consultez la fenêtre d'informations. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-gl.ts000066400000000000000000000646051515201227200272670ustar00rootroot00000000000000 About About qshutdown Sobre qshutdown Version Versión &About &Sobre &Thanks To A&gradecementos <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">emprega Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >O qshutdown é unha ferramenta de apagado en función da hora ou da conta atrás</p><p >Autor: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Dereitos de autor &copy; 2010-2023, por Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> ou <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> para informar dos fallos.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendario Weekly Semanal activate weekly activar semanal Please note that you might want to enable autostart and countdown at startup. Teña en conta que quizais vostede desexa activar o inicio automático e a conta atrás no arranque. ChangePassword Change Password Cambiar o contrasinal Retype password: Escriba de novo o contrasinal: New password: Novo contrasinal: Old password: Contrasinal antigo: The current password is not correct! O contrasinal actual non é correcto! The retyped password doesn't match! O contrasinal rescrito non coincide! Editor Editor Editor Gui &Minimize! &Minimizar! Shutdown-time: Hora do apagado: Minutes till shutdown: Minutos ata apagar: Reboot-time: Hora do reinicio: Minutes till reboot: Minutos ata reiniciar: Suspend-time: Hora da suspensión: Minutes till suspend: Minutos ata suspender: Hibernate-time: Hora da hibernación: Minutes till hibernate: Minutos ata hibernar: shutdown in apagado en reboot in reinicio en suspend in suspensión en hibernate in hibernación en years anos months meses hours horas days días Res&tore &Restaurar &Minimize &Minimizar day día minutes minutos seconds segundos Shutdown Apagar Reboot Reiniciar Suspend Suspender Hibernate Hibernar &Lock after start? &Bloquear despois de iniciar? &Warnings on? Activar os a&visos? &Now! A&gora! You can set a date in the calendar Pode estabelecer unha data no calendario &OK &Aceptar R&eset R&estabelecer &Quit &Saír &Info &Información &Logfile Ficheiro de &rexistro &Preferences &Preferencias &Shutdown &Apagar &Reboot &Reiniciar S&uspend S&uspender &Hibernate &Hibernar Lock settings after countdown started Bloquear os axustes despois de iniciada a conta atrás Calendar Calendario &File &Ficheiro &Help &Axuda &Settings &Configuracións &About &Sobre &Reset &Restaurar &Configure &Configurar &Keep proportions &Manter as proporcións Warning Aviso Action imminent! Acción inminente! Information Información Countdown is not running! A conta atrás non está a traballar! Turns on/off all warnings Activa ou desactiva todos os avisos About &Qt Sobre &Qt Version Versión Info Info Información PassWord Password Contrasinal &Set password E&stabelecer o contrasinal Password: Contrasinal: The password is not correct! O contrasinal non é correcto! &Change password &Cambiar o contrasinal Preferences Preferences Preferencias Enable the &target time at startup Activar a &hora obxectivo no arrinque Shutdown Apagar Shutdown type: Tipo de apagado: Target time: Hora da activación: Minutes to countdown: Minutos para a conta atrás: Font: Tipo de letra: Font size 1: Tamaño de letra 1: Font size 2: Tamaño de letra 2: Font size 3: Tamaño de letra 3: Size for log file: Tamaño do ficheiro de rexistro: Reboot Reiniciar Suspend Suspender Hibernate Hibernar A&utostart Iniciar a&utomaticamente &Hide qshutdown at startup &Agochar o qshutdown no arrinque Lock screen &for suspend and hibernate &Bloquear a pantalla ao suspender ou hibernar &Edit configuration file &Editar o ficheiro de configuración Enable the minute &countdown at startup Activar a &conta atrás en minutos no arrinque &Reset settings &Restabelecer os axustes Size for log file in KB Tamaño do ficheiro de rexistro en KB "&Lock after start?" «&Bloquear despois de iniciar?» "&Warnings on?" «Activar os a&visos?» Log start time of qshutdown and how long it was running Rexistrar a hora de inicio de qshutdown e o tempo que está en execución L&ogging Re&xistro checkboxes and "now!" button caixas de verificación e botón «agora» OK and Minimize buttons Botóns Aceptar e Minimizar Labels for example Etiquetas por exemplo Set a font Estabelecer un tipo de letra What target time should be displayed by default at startup? Que hora de activación desexa amosar de xeito predeterminado no arrinque? How many minutes should be displayed for countdown by default at startup? Cantos minutos deberán amosarse, de xeito predeterminado na conta atrás no arrinque? What should be displayed first by default at startup? Debería amosarse de xeito predeterminado ao arrincar por primeira vez? Set if the checkbox for "Lock after start?" should be checked by default at startup Estabelece se a caixiña de comprobación «Bloquear despois de iniciar?» debe ser marcada de xeito predeterminado no arrinque Set if the checkbox for "Warnings on?" should be checked by default at startup Establece se a caixiña de comprobación «Activar os avisos?» debe ser marcada de xeito predeterminado no arrinque The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Normalmente, o botón de pechar agocha a xanela principal. Ao desactivar o agochamento pecharase o aplicativo ao premer o botón. General Xeral Advanced Avanzado Suspend method: Método de suspensión: automatic automático user defined definido polo usuario Hibernate method: Método de hibernación: Shutdown method: Método de apagado: Reboot method: Método de reinicio: Please input an user specified command for suspend here Escriba aquí unha orde específica para suspender Gnome session Sesión de Gnome KDE session Sesión de KDE Please input an user specified command for shutdown here Escriba aquí unha orde específica para apagar Please input an user specified command for reboot here Escriba aquí unha orde específica para reiniciar Please input an user specified command for hibernate here Escriba aquí unha orde específica para hibernar Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Algúns sistemas poden bloquear, por exemplo, o apagado xa que qshutdown aínda está a traballar. Esta opción define que qshutdown debe pecharse despois rematar a conta atrás. Quit qshutdown after countdown ended? Saír de qshutdown cando remate a conta atrás? &Start countdown at startup &Iniciar a conta atras no arrinque Hide qshutdown at startup if "Start countdown" is checked. Agochar qshutdown no arrinque se está marcado «Iniciar a conta atrás». The File "%1" is not writable! Maybe you just don't have the permissions to do so. O ficheiro «%1» non é escribíbel. E probábel que non teña permisos para facelo. Error Erro Please read this carefully! Por favor, lea isto detidamente! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Se desactiva a icona da bandexa xa non poderá restabelecer o qshutdown desde a bandexa. Considere tamén marcar «Saír ao pechar a xanela principal» e «Agochar o qshutdown no arrinque». Se o programa está aínda en execución e desexa que reapareza, execute o qshutdown de novo, como faría normalmente. Disable tray &icon Desactivar a &icona da bandexa &Quit on closing main window &Saír ao pechar a xanela principal QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-he.ts000066400000000000000000000602751515201227200272600ustar00rootroot00000000000000 About About qshutdown על ×ודות qshutdown Version גרסה &About על &×ודות &Thanks To &תודות <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">השימוש ב־Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar לוח שנה Weekly שבועי activate weekly הפעלה שבועית Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password החלפת הססמה Retype password: × × ×œ×”×§×œ×™×“ ×ת הססמה מחדש: New password: ססמה חדשה: Old password: ססמה ישנה: The current password is not correct! הססמה הנוכחית שגויה! The retyped password doesn't match! הססמה שהוקלדה מחדש ××™× ×” תו×מת! Editor Editor עורך Gui &Minimize! מ&זעור! Shutdown-time: זמן לכיבוי: Minutes till shutdown: דקות עד לכיבוי Reboot-time: זמן להפעלה מחדש: Minutes till reboot: דקות עד להפעלה מחדש: Suspend-time: זמן להשהיה: Minutes till suspend: דקות עד להשהיה: Hibernate-time: זמן לתרדמת: Minutes till hibernate: דקות עד לתרדמת: shutdown in כיבוי בעוד reboot in הפעלה מחדש בעוד suspend in השהיה בעוד hibernate in תרדמת בעוד years ×©× ×™× months ×—×•×“×©×™× hours שעות days ×™×ž×™× Res&tore ש&חזור &Minimize מ&זעור day ×™×•× minutes דקות seconds שניות Shutdown כיבוי Reboot הפעלה מחדש Suspend השהייה Hibernate תרדמת &Lock after start? ל&נעול ל×חר ההפעלה? &Warnings on? ×&זהרות פעילות? &Now! &עכשיו! You can set a date in the calendar ניתן להגדיר ת×ריך בלוח השנה &OK &×ישור R&eset ××™&פוס &Quit ×™&צי××” &Info &מידע &Logfile &קובץ תיעוד &Preferences ×”&עדפות &Shutdown &כיבוי &Reboot הפעלה מ&חדש S&uspend ×”&שהיה &Hibernate ת&רדמת Lock settings after countdown started לנעול ×ת ההגדרות ל×חר תחילת הספירה ל×חור Calendar לוח שנה &File &קובץ &Help ×¢&זרה &Settings ×”&גדרות &About על &×ודות &Reset ××™&פוס &Configure &Keep proportions ל&שמור על יחס Warning ×זהרה Action imminent! Information מידע Countdown is not running! הספירה ל×חור ××™× ×” פעילה! Turns on/off all warnings כיבוי/הפעלה של כל ×”×זהרות About &Qt &על Qt Version גרסה Info Info מידע PassWord Password ססמה &Set password ×”&גדרת ססמה Password: ססמה: The password is not correct! הססמה שגויה! &Change password ×”&חלפת ססמה Preferences Preferences העדפות Enable the &target time at startup Shutdown כיבוי Shutdown type: סוג כיבוי: Target time: מועד היעד: Minutes to countdown: דקות לספירה ל×חור: Font: גופן: Font size 1: גודל גופן 1: Font size 2: גודל גופן 2: Font size 3: גודל גופן 3: Size for log file: גודל קובץ יומן התיעוד: Reboot הפעלה מחדש Suspend השהייה Hibernate תרדמת A&utostart &Hide qshutdown at startup Lock screen &for suspend and hibernate &Edit configuration file Enable the minute &countdown at startup &Reset settings Size for log file in KB "&Lock after start?" "&Warnings on?" Log start time of qshutdown and how long it was running L&ogging checkboxes and "now!" button OK and Minimize buttons Labels for example תוויות לדוגמה Set a font הגדרת גופן What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. General כללי Advanced ×ž×ª×§×“× Suspend method: שיטת השהיה: automatic ×וטומטית user defined בהגדרת המשתמש Hibernate method: שיטת תרדמת: Shutdown method: שיטת כיבוי: Reboot method: שיטת הפעלה מחדש: Please input an user specified command for suspend here Gnome session הפעלה של Gnome KDE session הפעלה של KDE Please input an user specified command for shutdown here Please input an user specified command for reboot here Please input an user specified command for hibernate here Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? &Start countdown at startup Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Error שגי××” Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-hr.ts000066400000000000000000000607511515201227200272740ustar00rootroot00000000000000 About About qshutdown O qshutdown Version InaÄica &About &O programu &Thanks To &Zahvale <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">koristi Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Kalendar Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Promijeni lozinku Retype password: Ponovi lozinku: New password: Nova lozinka: Old password: Stara lozinka: The current password is not correct! Trenutna lozinka nije ispravna! The retyped password doesn't match! Potvrda lozinke se ne poklapa! Editor Editor UreÄ‘ivaÄ Gui &Minimize! &Smanji! Shutdown-time: Vrijeme do gaÅ¡enja: Minutes till shutdown: Minuta do gaÅ¡enja: Reboot-time: Vrijeme do ponovnog pokretanja: Minutes till reboot: Minuta do ponovnog pokretanja: Suspend-time: Vrijeme suspenzije: Minutes till suspend: Minuta do suspenzije: Hibernate-time: Vrijeme hibernacije: Minutes till hibernate: Minuta do hibernacije: shutdown in gaÅ¡enje u reboot in ponovno pokretanje u suspend in suspenzija u hibernate in hibernacija u years godina months mjeseci hours sati days dani Res&tore Pri&kaži &Minimize &Minimiziraj day dan minutes minute seconds sekunde Shutdown IskljuÄi Reboot Ponovno pokreni Suspend Suspenzija Hibernate Hiberniraj &Lock after start? &ZakljuÄaj nakon pokretanja? &Warnings on? &Prikaži upozorenja? &Now! &IskljuÄi odmah! You can set a date in the calendar Datum možete postaviti u kalendaru &OK &U redu R&eset P&oniÅ¡ti &Quit &Prestanak &Info &Informacije &Logfile &Dnevnik datoteka &Preferences &Postavke &Shutdown &IskljuÄivanje &Reboot &Ponovno pokretanje S&uspend S&uspendiraj &Hibernate &Hiberniraj Lock settings after countdown started ZakljuÄaj postavke nakon Å¡to je pokrenuto odbrojavnje Calendar Kalendar &File &Datoteka &Help &Pomoć &Settings &Postavke &About &O programu &Reset &PoniÅ¡ti &Configure &PodeÅ¡avanje &Keep proportions &Zadrži razmjer Warning Upozorenje Action imminent! Radnja je neminovna! Information Informacije Countdown is not running! Odbrojavanje nije pokrenuto! Turns on/off all warnings UkljuÄi/IskljuÄi sva upozorenja About &Qt O &Qt Version InaÄica Info Info Informacije PassWord Password Lozinka &Set password &Postavi lozinku Password: Lozinka: The password is not correct! Lozinka nije ispravna! &Change password &Promijeni lozinku Preferences Preferences Postavke Enable the &target time at startup Omogući &ciljano vrijeme pri pokretanju Shutdown IskljuÄi Shutdown type: NaÄin iskljuÄivanja: Target time: Ciljano vrijeme: Minutes to countdown: Minute za odbrojavanje: Font: Slovo: Font size 1: VeliÄina slova 1: Font size 2: VeliÄina slova 2: Font size 3: VeliÄina slova 3: Size for log file: VeliÄina datoteke dnevnika: Reboot Ponovno pokreni Suspend Suspendiraj Hibernate Hiberniraj A&utostart A&utomatsko pokretanje &Hide qshutdown at startup &Sakrij qshutdown pri pokretanju Lock screen &for suspend and hibernate ZakljuÄaj zaslon &pri suspenziji i hibernaciji &Edit configuration file Uredi konfiguracijsku datoteku Enable the minute &countdown at startup Omogući odbrojavanje &minuta pri pokretanju &Reset settings &Vrati poÄetne postavke Size for log file in KB VeliÄina za dnevnik datoteku u KB "&Lock after start?" "&ZakljuÄaj nakon pokretanja?" "&Warnings on?" "&Prikaži upozorenja?" Log start time of qshutdown and how long it was running ZapiÅ¡i vrijeme pokretanja programa qshutdown i koliko dugo je bio pokrenut L&ogging Z&apisivanje dnevnika checkboxes and "now!" button potvrdni okviri i "sad!" gumb OK and Minimize buttons OK i Minimiziraj buttons gumbi Labels for example Oznake za primjer Set a font Postavi slova What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. General Općenito Advanced Napredno Suspend method: NaÄin suspenzije: automatic automatski user defined korisniÄki definirano Hibernate method: NaÄin hibernacije: Shutdown method: NaÄin iskljuÄivanja: Reboot method: NaÄin ponovnog pokretanja: Please input an user specified command for suspend here Molim vas, ovdje unesite korisniÄki odreÄ‘enu naredbu za suspendiranje Gnome session Gnome sesija KDE session KDE sesija Please input an user specified command for shutdown here Molim vas, ovdje unesite korisniÄki odreÄ‘enu naredbu za iskljuÄivanje Please input an user specified command for reboot here Molim vas, ovdje unesite korisniÄki odreÄ‘enu naredbu za ponovno pokretanje Please input an user specified command for hibernate here Molim vas, ovdje unesite korisniÄki odreÄ‘enu naredbu za hibernaciju Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? Ugasi qshutdown nakon Å¡to je odbrojavanja zavrÅ¡ilo? &Start countdown at startup &PoÄetak odbrojavanja pri pokretanju Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. U Datoteku "%1" nije dopuÅ¡teno pisanje! Možda naprosto nemate dopuÅ¡tenja za to. Error Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-id.ts000066400000000000000000000632611515201227200272560ustar00rootroot00000000000000 About About qshutdown Tentang qshutdown Version Versi &About Tent&ang &Thanks To &Terima kasih kepada <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, alat shutdown berdasar waktu dan hitung mundur</p><p >Penulis: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Hak cipta &copy; 2010-2023, pada Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Silakan gunakan <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> untuk melaporkan bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Kalender Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Ubah Sandi Retype password: Ulangi sandi: New password: Sandi Baru: Old password: Sandi Lama: The current password is not correct! Sandi saat ini tidak valid! The retyped password doesn't match! Pengulangan sandi tidak cocok! Editor Editor Penyunting Gui &Minimize! &Memperkecil! Shutdown-time: Waktu pemadaman: Minutes till shutdown: Menit sampai padam: Reboot-time: Waktu menyala ulang: Minutes till reboot: Menit sampai menyala ulang: Suspend-time: Waktu suspend: Minutes till suspend: Menit sampai suspend: Hibernate-time: Waktu hibernasi: Minutes till hibernate: Menit sampai hibernasi: shutdown in padam dalam reboot in nyala ulang dalam suspend in suspend dalam hibernate in hibernasi dalam years tahun months bulan hours jam days hari Res&tore M&emulihkan &Minimize &Memperkecil day hari minutes menit seconds detik Shutdown Padamkan Reboot Nyalakan Ulang Suspend Suspensi Hibernate Hibernasi &Lock after start? Kunci sete&lah mulai? &Warnings on? H&idupkan peringatan? &Now! Sekara&ng! You can set a date in the calendar Anda dapat mengatur tanggal pada kalender &OK &OK R&eset Atu&r Ulang &Quit &Keluar &Info &Info &Logfile Berkas &log &Preferences &Preferensi &Shutdown &Matikan &Reboot &Nyalakan ulang S&uspend S&uspensi &Hibernate &Hibernasi Lock settings after countdown started Kunci pengaturan setelah hitung mundur dimulai Calendar Kalender &File &Berkas &Help Ba&ntuan &Settings &Pengaturan &About Tent&ang &Reset Atu&r Ulang &Configure &Konfigurasi &Keep proportions &Jaga proporsi Warning Peringatan Action imminent! Aksi dekat! Information Informasi Countdown is not running! Hitung mundur tidak berjalan! Turns on/off all warnings Nyalakan/matikan semua peringatan About &Qt Tentang &Qt Version Versi Info Info Info PassWord Password Sandi &Set password Atur &sandi Password: Sandi: The password is not correct! Sandi salah! &Change password &Ganti sandi Preferences Preferences Preferensi Enable the &target time at startup Gunakan waktu &target saat menyalakan Shutdown Padamkan Shutdown type: Jenis pemadaman: Target time: Waktu target: Minutes to countdown: Menit sampai hitung mundur: Font: Fonta: Font size 1: Ukuran fonta 1: Font size 2: Ukuran fonta 2: Font size 3: Ukuran fonta 3: Size for log file: Ukuran untuk berkas log: Reboot Nyalakan Ulang Suspend Suspensi Hibernate Hibernasi A&utostart Mul&ai otomatis &Hide qshutdown at startup Sembunyikan qs&hutdown saat menyalakan Lock screen &for suspend and hibernate Kunci layar &saat suspensi dan hibernasi &Edit configuration file Sunting konfigurasi b&erkas Enable the minute &countdown at startup &aktifkan hitung mundur menit saat menyalakan &Reset settings Atu&r ulang pengaturan Size for log file in KB Ukuran berkas log dalam KB "&Lock after start?" "Kunci sete&lah mulai?" "&Warnings on?" "Nyalakan &peringatan?" Log start time of qshutdown and how long it was running Log waktu mulai qshutdown dan berapa lama ia berjalan L&ogging L&ogging checkboxes and "now!" button kotak centang dam tombol "Sekarang!" OK and Minimize buttons Tombol OK dan Mengecilkan Labels for example Label untuk contoh Set a font Atur fonta What target time should be displayed by default at startup? Kapan waktu target yang harus ditampilkan secara default saat menyalakan? How many minutes should be displayed for countdown by default at startup? Berapa menit yg ditampilkan untuk hitung mundur default saat menyalakan? What should be displayed first by default at startup? Apa yang pertama harus ditampilkan secara default saat menyalakan? Set if the checkbox for "Lock after start?" should be checked by default at startup Atur apakah kotak centang "Kunci saat mulai?" harus dicentang otomatis saat menyalakan? Set if the checkbox for "Warnings on?" should be checked by default at startup Atur apakah kotak "Nyalakan peringatan?" harus dicentang otomatis saat menyalakan The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Tombol keluar [X] biasanya menyembunyikan jendela utama Mematikan penyembunyian berarti bahwa qshutdown akan langsung keluar. General Umum Advanced Lanjutkan Suspend method: Metode suspensi: automatic otomatis user defined diatur pengguna Hibernate method: Metode hibernasi: Shutdown method: Metode pemadaman: Reboot method: Metode nyalakan ulang: Please input an user specified command for suspend here Silakan masukan perintah yang pengguna untuk suspensi disini Gnome session Sesi Gnome KDE session Sesi KDE Please input an user specified command for shutdown here Silakan masukan perintah yang pengguna untuk pemadaman disini Please input an user specified command for reboot here Silakan masukan perintah yang pengguna untuk menyalakan ulang disini Please input an user specified command for hibernate here Silakan masukan perintah yang pengguna untuk hibernasi disini Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Sistem memblok contoh pemadaman karena qshutdown masih berjalan. atur kait agar qshutdown keluar setelah hitung mundur. Quit qshutdown after countdown ended? Keluarkan qshutdown setelah hitung mundur selesai? &Start countdown at startup Mulai hitung mundur &saat menyalakan Hide qshutdown at startup if "Start countdown" is checked. Menyembunyikan qshutdown saat menyalakan jika "mulai hitung mundur" tercentang. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Berkas "%1" tidak dapat ditulis! Mungkin anda tidak memiliki ijin untuk melakukannya. Error Kesalahan Please read this carefully! Mohon baca dengan teliti! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon Nonaktifkan tray &ikon &Quit on closing main window Keluar saat menutup jendela ( Alt + &Q ) QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-it.ts000066400000000000000000000637541515201227200273050ustar00rootroot00000000000000 About About qshutdown Informazioni su qshutdown Version Versione &About &Informazioni su &Thanks To &Grazie a <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Uso di Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, uno strumento di spegnimento a tempo</p><p >Autore: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Per la segnalazione di errori, usare <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> o <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a></p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendario Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Cambia password Retype password: Digitare nuovamente la password: New password: Nuova password: Old password: Vecchia password: The current password is not correct! L'attuale password non è corretta! The retyped password doesn't match! Le password non corrispondono. Editor Editor Editor Gui &Minimize! &Minimizza! Shutdown-time: Tempo di spegnimento: Minutes till shutdown: Minuti allo spegnimento: Reboot-time: Tempo di riavvio: Minutes till reboot: Minuti al riavvio: Suspend-time: Tempo di sospensione: Minutes till suspend: Minuti alla sospensione: Hibernate-time: Tempo di ibernazione: Minutes till hibernate: Minuti all'ibernazione: shutdown in spegnimento in reboot in riavvio in suspend in sospensione in hibernate in ibernazione in years anni months mesi hours ore days giorni Res&tore Ripris&tina &Minimize &Minimizza day giorno minutes minuti seconds secondi Shutdown Spegni Reboot Riavvia Suspend Sospendi Hibernate Iberna &Lock after start? &Bloccare dopo l'avvio? &Warnings on? Mostrare &avvisi? &Now! &Ora! You can set a date in the calendar È possibile impostare una data nel calendario &OK &OK R&eset Azz&era &Quit &Esci &Info &Informazioni &Logfile File &registro &Preferences &Preferenze &Shutdown &Spegni &Reboot &Riavvia S&uspend S&ospendi &Hibernate &Iberna Lock settings after countdown started Blocca le impostazioni dopo che il conto alla rovescia è iniziato Calendar Calendario &File &File &Help Ai&uto &Settings Imp&ostazioni &About &Informazioni su &Reset &Azzera &Configure &Configura &Keep proportions &Mantieni proporzioni Warning Avviso Action imminent! Azione imminente! Information Informazione Countdown is not running! Il conto alla rovescia non è avviato! Turns on/off all warnings Attiva/disattiva tutti gli avvisi About &Qt Informazioni su &Qt Version Versione Info Info Informazioni PassWord Password Password &Set password &Imposta password Password: Password: The password is not correct! La password è sbagliata! &Change password &Cambia password Preferences Preferences Preferenze Enable the &target time at startup Abilita il tempo &prestabilito all'avvio Shutdown Spegni Shutdown type: Tipo di spegnimento: Target time: Tempo prestabilito: Minutes to countdown: Minuti del conto alla rovescia: Font: Carattere: Font size 1: Dimensione car. 1: Font size 2: Dimensione car. 2: Font size 3: Dimensione car. 3: Size for log file: Dimensione file registro: Reboot Riavvia Suspend Sospendi Hibernate Iberna A&utostart Avvio a&utomatico &Hide qshutdown at startup &Nascondi qshutdown all'avvio Lock screen &for suspend and hibernate &Blocca schermo in sospensione e ibernazione &Edit configuration file &Modifica file di configurazione Enable the minute &countdown at startup Abilita il &conto alla rovescia all'avvio &Reset settings A&zzera impostazioni Size for log file in KB Dimensione in KB del file registro "&Lock after start?" «&Bloccare dopo l'avvio?» "&Warnings on?" «Mostrare a&vvisi?» Log start time of qshutdown and how long it was running Ora di avvio del registro di qshutdown e sua durata L&ogging &Registro checkboxes and "now!" button Caselle di selezione e pulsante «Ora!» OK and Minimize buttons Pulsanti OK e Minimizza Labels for example Didascalie per gli esempi Set a font Imposta un carattere What target time should be displayed by default at startup? Che tempo predefinito deve essere visualizzato all'avvio? How many minutes should be displayed for countdown by default at startup? Quanti minuti predefiniti devono essere visualizzati per il conto alla rovescia all'avvio? What should be displayed first by default at startup? Cosa deve essere visualizzato per primo all'avvio? Set if the checkbox for "Lock after start?" should be checked by default at startup Scegliere se la casella «Blocco dopo l'avvio?» deve essere attivata in modo predefinito all'avvio Set if the checkbox for "Warnings on?" should be checked by default at startup Scegliere se la casella «Mostro avvisi?» deve essere attivata in modo predefinito all'avvio The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Il pulsante Chiudi in genere nasconde la finestra principale. Disabilitare l'opzione «Nascondi» significa invece che qshutdown verrà chiuso. General Generali Advanced Avanzate Suspend method: Metodo di sospensione: automatic automatico user defined definito dall'utente Hibernate method: Metodo di ibernazione: Shutdown method: Metodo di spegnimento: Reboot method: Metodo di riavvio: Please input an user specified command for suspend here Inserire qui il comando specificato dall'utente per la sospensione Gnome session Sessione Gnome KDE session Sessione KDE Please input an user specified command for shutdown here Inserire qui il comando specificato dall'utente per lo spegnimento Please input an user specified command for reboot here Inserire qui il comando specificato dall'utente per il riavvio Please input an user specified command for hibernate here Inserire qui il comando specificato dall'utente per l'ibernazione Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Alcuni sistemi bloccano lo spegnimento, per esempio se qshutdown è ancora in esecuzione. Impostare un collegamento in modo che qshutdown termini dopo aver concluso il conto alla rovescia. Quit qshutdown after countdown ended? Terminare qshutdown dopo che il conto alla rovescia è concluso? &Start countdown at startup &Avvia il conto alla rovescia all'avvio Hide qshutdown at startup if "Start countdown" is checked. Nasconde qshutdown all'avvio se «Avvia conto alla rovescia» è selezionato. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Il file «%1» non è scrivibile! Forse non si hanno i permessi per eseguire l'operazione. Error Errore Please read this carefully! Leggere con attenzione! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-ja.ts000066400000000000000000000670431515201227200272560ustar00rootroot00000000000000 About About qshutdown qshutdown ã«ã¤ã„㦠Version ãƒãƒ¼ã‚¸ãƒ§ãƒ³ &About qshutdown ã«ã¤ã„ã¦(&A) &Thanks To è¬è¾ž(&T) <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Qt を使用ã—ã¦ã„ã¾ã™</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdownã¯ã€æ™‚é–“ã¨ã‚«ã‚¦ãƒ³ãƒˆãƒ€ã‚¦ãƒ³ã®ã‚‚ã¨ã§å‹•ã„ã¦ã„るシャットダウンツール</p><p >デベロッパー:メッãƒãƒ£ãƒ¼ãƒ»ã‚¯ãƒªã‚¹ãƒ†ã‚£ã‚¢ãƒ³&lt;hakaishi@web.de&gt;</p><p >コピーライト &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >ãƒã‚°ãƒ¬ãƒãƒ¼ãƒˆã¯ã€<a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a>ãれã¨ã‚‚<a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a>ã«ã¦å®œã—ããŠé¡˜ã„ã—ã¾ã™ã€‚</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar カレンダー Weekly 毎週 activate weekly 毎週設定を有効ã«ã— Please note that you might want to enable autostart and countdown at startup. 備考:自動起動やカウントダウンãªã©ã‚’有効ã—ãŸã‚‰ã„ã„ã‹ã‚‚ã—れã¾ã›ã‚“。 ChangePassword Change Password パスワードã®å¤‰æ›´ Retype password: ã‚‚ã†ä¸€åº¦å…¥åŠ›ã—ã¦ä¸‹ã•ã„: New password: æ–°ã—ã„パスワード: Old password: 旧パスワード: The current password is not correct! パスワードãŒé–“é•ã£ã¦ã„ã¾ã™ï¼ The retyped password doesn't match! パスワードãŒä¸€è‡´ã—ã¦ã„ã¾ã›ã‚“ï¼ Editor Editor エディター Gui &Minimize! 最å°åŒ–ï¼(&M) Shutdown-time: シャットダウンã™ã‚‹æ™‚é–“: Minutes till shutdown: シャットダウンã¾ã§ã®åˆ†æ•°: Reboot-time: å†èµ·å‹•ã™ã‚‹æ™‚é–“: Minutes till reboot: å†èµ·å‹•ã¾ã§ã®åˆ†æ•°: Suspend-time: サスペンドã™ã‚‹æ™‚é–“: Minutes till suspend: サスペンドã¾ã§ã®åˆ†æ•°: Hibernate-time: ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ã™ã‚‹æ™‚é–“: Minutes till hibernate: ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ã¾ã§ã®åˆ†æ•°: shutdown in シャットダウンã¾ã§ reboot in å†èµ·å‹•ã¾ã§ suspend in サスペンドã¾ã§ hibernate in ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ã¾ã§ years å¹´ months 月 hours 時間 days æ—¥ Res&tore 表示ã™ã‚‹(&T) &Minimize 最å°åŒ–(&M) day æ—¥ minutes 分 seconds ç§’ Shutdown シャットダウン Reboot å†èµ·å‹• Suspend サスペンド Hibernate ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ &Lock after start? 開始後ã«ãƒ­ãƒƒã‚¯ã™ã‚‹ï¼Ÿ(&L) &Warnings on? 警告をオンã«ã™ã‚‹ï¼Ÿ(&W) &Now! 今ã™ãï¼(&N) You can set a date in the calendar ã‚«ãƒ¬ãƒ³ãƒ€ãƒ¼ã«æ—¥æ™‚を設定ã§ãã‚‹ &OK &OK R&eset å†è¨­å®š(&E) &Quit 終了(&Q) &Info インフォ(&I) &Logfile ログファイル(&L) &Preferences 設定(&P) &Shutdown シャットダウン(&S) &Reboot å†èµ·å‹•(&R) S&uspend サスペンド(&U) &Hibernate ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³(&H) Lock settings after countdown started 開始後ã«è¨­å®šã‚’ロックã™ã‚‹ Calendar カレンダー &File ファイル(&F) &Help ヘルプ(&L) &Settings 設定(&S) &About qshutdown ã«ã¤ã„ã¦(&A) &Reset å†è¨­å®š(&R) &Configure 環境設定ã™ã‚‹(&C) &Keep proportions 形を変ãˆãªã„(&K) Warning 警告 Action imminent! 後ã‚ãšã‹! Information インフォメーション Countdown is not running! カウントダウンã¯èµ·å‹•ã—ã¦ã„ã¾ã›ã‚“ï¼ Turns on/off all warnings 警告をオン/オフ About &Qt &Qt ã«ã¤ã„㦠Version ãƒãƒ¼ã‚¸ãƒ§ãƒ³ Info Info インフォ PassWord Password パスワード &Set password パスワードを設定ã—ã¦ä¸‹ã•ã„(&S) Password: パスワード: The password is not correct! ãƒ‘ã‚¹ãƒ¯ãƒ¼ãƒ‰ãŒæ­£ã—ãã‚りã¾ã›ã‚“! &Change password パスワードを変更ã™ã‚‹(&C) Preferences Preferences 設定 Enable the &target time at startup 起動時ã«ç›®æ¨™æ™‚間を有効化ã™ã‚‹(&T) Shutdown シャットダウン Shutdown type: シャットダウンタイプ: Target time: 目標時間: Minutes to countdown: カウントダウンã®åˆ†æ•°: Font: フォント: Font size 1: フォントサイズ 1: Font size 2: フォントサイズ 2: Font size 3: フォントサイズ 3: Size for log file: ログファイルã®ã‚µã‚¤ã‚º: Reboot å†èµ·å‹• Suspend サスペンド Hibernate ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ A&utostart 自動起動(&U) &Hide qshutdown at startup 起動後㫠qshutdown ã‚’éš ã™(&H) Lock screen &for suspend and hibernate サスペンドã¨ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ã®ç‚ºã«ç”»é¢ã‚’ロックã™ã‚‹(&F) &Edit configuration file ãƒ•ã‚¡ã‚¤ãƒ«ã®æ§‹æˆç·¨é›†(&E) Enable the minute &countdown at startup 起動時ã«ã‚«ã‚¦ãƒ³ãƒˆãƒ€ã‚¦ãƒ³ã®åˆ†æ•°ã‚’有功ã«ã™ã‚‹(&C) &Reset settings è¨­å®šã‚’å…ƒã«æˆ»ã™(&R) Size for log file in KB ログファイルã®ã‚µã‚¤ã‚ºï¼ˆKB) "&Lock after start?" 「開始後ã«ãƒ­ãƒƒã‚¯ã™ã‚‹ï¼Ÿ(&L)〠"&Warnings on?" 「警告をオンã«ã™ã‚‹ï¼Ÿ(&W)〠Log start time of qshutdown and how long it was running åˆã‚ã‹ã‚‰çµ‚ã‚りã¾ã§ã®æ™‚間を記録ã™ã‚‹ L&ogging 記録ã™ã‚‹(&L) checkboxes and "now!" button ãƒã‚§ãƒƒã‚¯ãƒœãƒƒã‚¯ã‚¹ã¨ã€Œä»Šã™ã!ã€ãƒœã‚¿ãƒ³ OK and Minimize buttons OK ã¨æœ€å°åŒ–ボタン Labels for example 例ã¯ãƒ©ãƒ™ãƒ«ã§ã™ Set a font フォントを設定ã—ã¦ä¸‹ã•ã„ What target time should be displayed by default at startup? ã©ã®ç›®çš„æ™‚é–“ãŒã€èµ·å‹•æ™‚ã®æ¨™æº–設定ã§è¡¨ç¤ºã•れるã¹ãã‹ã€‚ How many minutes should be displayed for countdown by default at startup? èµ·å‹•ã®éš›ã€ã‚«ã‚¦ãƒ³ãƒˆãƒ€ã‚¦ãƒ³ã®ç‚ºã®åŸºæº–時間ã¯ä½•分ã¨è¡¨ç¤ºã•れるã¹ãã‹ã€‚ What should be displayed first by default at startup? 機動ã®éš›ã€åŸºæº–ã§ã¯ä½•ãŒæœ€åˆã«è¡¨ç¤ºã•れるã¹ãã‹ã€‚ Set if the checkbox for "Lock after start?" should be checked by default at startup 「開始後ã«ãƒ­ãƒƒã‚¯ã™ã‚‹ï¼Ÿã€ã®é …目を基準ã¨ã—ã¦è¨­ç½®ã™ã‚‹ã€‚ Set if the checkbox for "Warnings on?" should be checked by default at startup 「警告をオンã«ã™ã‚‹ï¼Ÿã€ã®é …目を基準ã¨ã—ã¦è¨­ç½®ã™ã‚‹ã€‚ The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. 通常通りã€ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‰ã‚ã‚‹ãŸã‚ã®ãƒœã‚¿ãƒ³ã‚’押ã—〠メインウィンドウを隠ã—ã¾ã™ã€‚ 隠匿機能ã®ç„¡åŠ¹åŒ–ã¨ã¯ã€qshutdown㌠ãã®ä»£ã‚りã«é–‰ã˜ã‚‰ã‚Œã‚‹ã“ã¨ã‚’指ã—ã¾ã™ã€‚ General 一般的 Advanced 詳細 Suspend method: ã‚µã‚¹ãƒšãƒ³ãƒ‰ã®æ–¹æ³•: automatic 自動的 user defined 利用者ã®å®šç¾© Hibernate method: ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ã®æ–¹æ³•: Shutdown method: ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã®æ–¹æ³•: Reboot method: å†èµ·å‹•ã®æ–¹æ³•: Please input an user specified command for suspend here ユーザーã®ã¿ã€ã“ã“ã«ã‚µã‚¹ãƒšãƒ³ãƒ‰ã®æŒ‡ç¤ºã‚’入力ã—ã¦ãã ã•ã„。 Gnome session Gnome session KDE session KDE session Please input an user specified command for shutdown here ユーザーã®ã¿ã€ã“ã“ã«ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã®æŒ‡ç¤ºã‚’入力ã—ã¦ãã ã•ã„。 Please input an user specified command for reboot here ユーザーã®ã¿ã€ã“ã“ã«å†èµ·å‹•ã®æŒ‡ç¤ºã‚’入力ã—ã¦ãã ã•ã„。 Please input an user specified command for hibernate here ユーザーã®ã¿ã€ã“ã“ã«ãƒã‚¤ãƒãƒãƒ¼ã‚·ãƒ§ãƒ³ã®æŒ‡ç¤ºã‚’入力ã—ã¦ãã ã•ã„。 Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. qshutdownãŒç¶šè¡Œä¸­ãªã®ã§ã€ã„ãã¤ã‹ã®ã‚·ã‚¹ãƒ†ãƒ ã¯ シャットダウンãªã©ã‚’ブロックã—ã¾ã™ã€‚ qshutdownãŒã‚«ã‚¦ãƒ³ãƒˆãƒ€ã‚¦ãƒ³å¾Œã«çµ‚了ã•れるã¹ãå ´åˆã¯ã€ ãƒã‚§ãƒƒã‚¯ã‚’ã—ã¦ãã ã•ã„。 Quit qshutdown after countdown ended? カウントダウンã®å¾Œã§ qshutdown を終了ã™ã‚‹ã‹ï¼Ÿ &Start countdown at startup 起動後ã«ã‚«ã‚¦ãƒ³ãƒˆãƒ€ã‚¦ãƒ³ã‚’å§‹ã‚ã‚‹(&S) Hide qshutdown at startup if "Start countdown" is checked. â€ã‚«ã‚¦ãƒ³ãƒˆãƒ€ã‚¦ãƒ³ã‚’å§‹ã‚ã‚‹â€ãŒãƒã‚§ãƒƒã‚¯ã•れるã¨ã€ プログラム起動時ã«qshutdownãŒéš ã‚Œã‚‹ã€‚ The File "%1" is not writable! Maybe you just don't have the permissions to do so. "%1"ã®ãƒ•ァイルã¯ã€æ›¸ãã“ã‚€ã“ã¨ãŒã§ãã¾ã›ã‚“。 ãŠãらãã€ã‚ãªãŸã¯ãれを許å¯ã•れã¦ã„ã¾ã›ã‚“。 Error エラー Please read this carefully! ä¸‹è¨˜ã®æ–‡ç« ã‚’よã読んã§ãã ã•ã„。 Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. トレイアイコンを無効ã«ã™ã‚‹ã¨qshutdownã‚’ トレイã‹ã‚‰è¡¨ç¤ºã™ã‚‹ã“ã¨ã¯ã§ããªããªã‚Šã¾ã™ã€‚ 「メインウィンドウを閉ã‚ã‚‹éš›ã«çµ‚了ã™ã‚‹ã€ã¨ 「起動後㫠qshutdown ã‚’éš ã™ã€ã‚’有効ã«ã™ã‚‹ ã“ã¨ã‚’考慮ã—ã¦ãã ã•ã„。qshutdown㌠起動ã—ã¦ã„ã‚‹é–“ã«è¡¨ç¤ºã—ãŸã„時ã«ã€qshutdown ã‚’å†ã³å®Ÿè¡Œã™ã‚‹ã¨å‡ºã¾ã™ã€‚ Disable tray &icon トレイアイコンを無効ã™ã‚‹(&I) &Quit on closing main window メインウィンドウを閉ã‚ã‚‹éš›ã«çµ‚了ã™ã‚‹(&Q) QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-ms.ts000066400000000000000000000640771515201227200273070ustar00rootroot00000000000000 About About qshutdown Perihal qshutdown Version Versi &About Perih&al &Thanks To &Terima Kasih Kepada <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Menggunakan Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, adalah masa dan kiraan mengundur berasaskan alat shutdown</p><p >Pengarang: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Hakcipta &copy; 2010-2023, oleh Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Sila guna <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> atau <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> untuk laporkan pepijat.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Kalendar Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Ubah Kata Laluan Retype password: Taip Semula kata laluan: New password: Kata laluan baru: Old password: Kata laluan lama: The current password is not correct! Kata laluan semasa salah! The retyped password doesn't match! Kata laluan yang ditaip semula tidak sepadan! Editor Editor Penyunting Gui &Minimize! &Minimumkan! Shutdown-time: Masa-dimatikan: Minutes till shutdown: Minit sehingga dimatikan: Reboot-time: Masa-but-semula: Minutes till reboot: Minit sehingga but semula: Suspend-time: Masa-tangguh: Minutes till suspend: Minit sehingga tangguh: Hibernate-time: Masa-hibernasi: Minutes till hibernate: Minit sehingga hibernasi: shutdown in dimatikan dalam reboot in dibut semula dalam suspend in ditangguh dalam hibernate in dihibernasi dalam years tahun months bulan hours jam days hari Res&tore Puli&h &Minimize &Minimumkan day hari minutes minit seconds saat Shutdown Matikan Reboot But Semula Suspend Tangguh Hibernate Hibernasi &Lock after start? &Kunci selepas mula? &Warnings on? &Amaran dihidupkan? &Now! S&ekarang! You can set a date in the calendar Anda boleh tetapkan tarikh dalam kalendar &OK &OK R&eset Teta&p Semula &Quit Ke&luar &Info Makl&umat &Logfile &Fail log &Preferences &Keutamaan &Shutdown &Matikan &Reboot &But Semula S&uspend &Tangguh &Hibernate &Hibernasi Lock settings after countdown started Tetapan kunci selepas kiraan mengundur bermula Calendar Kalendar &File &Fail &Help &Bantuan &Settings Teta&pan &About Perih&al &Reset &Tetap semula &Configure Konfi&gur &Keep proportions K&ekal perkadaran Warning Amaran Action imminent! Tindakan hampir! Information Maklumat Countdown is not running! Kiraan mengundur tidak berjalan! Turns on/off all warnings Matikan/hidupkan semua amaran About &Qt Perihal &Qt Version Versi Info Info Maklumat PassWord Password Kata laluan &Set password T&etap kata laluan Password: Kata Laluan: The password is not correct! Kata laluan salah! &Change password &Ubah kata laluan Preferences Preferences Keutamaan Enable the &target time at startup Benarkan masa sasa&ran pada permulaan Shutdown Matikan Shutdown type: Jenis matikan: Target time: Masa sasaran: Minutes to countdown: Minit untuk kiraan mengundur: Font: Fon: Font size 1: Fon saiz 1: Font size 2: Fon saiz 2: Font size 3: Fon saiz 3: Size for log file: Saiz untuk fail log: Reboot But Semula Suspend Tangguh Hibernate Hibernasi A&utostart Mula-sen&diri &Hide qshutdown at startup Sembuun&yi qshutdown pada permulaan Lock screen &for suspend and hibernate Kunci skrin u&ntuk tangguh dan hibernasi &Edit configuration file Sunt&ing fail konfigurasi Enable the minute &countdown at startup Benarkan minit ki&raan mengundur semasa permulaan &Reset settings T&etap semula tetapan Size for log file in KB Saiz bagi fail log dalam KB "&Lock after start?" "Kun&ci selepas mula?" "&Warnings on?" "&Amaran dihidupkan?" Log start time of qshutdown and how long it was running Masa mula log bagi qshutdown dan berapa lamakah ia berjalan L&ogging Pengel&ogan checkboxes and "now!" button kotak tanda dan butang "sekarang!" OK and Minimize buttons Butang OK dan Minimumkan Labels for example Label untuk contoh Set a font Tetapkan fon What target time should be displayed by default at startup? Apakah masa sasaran yang patut dipaparkan secara lalai semasa permulaan? How many minutes should be displayed for countdown by default at startup? Berapa minitkah patut dipaparkan untuk kiraan mengundur secara lalai pada permulaan? What should be displayed first by default at startup? Apakah yang patut dipaparkan dahulu secara lalai semasa permulaan? Set if the checkbox for "Lock after start?" should be checked by default at startup Tetapkan jika kotak tanda untuk "kunci selepas mula?" patut ditanda secara lalai semasa permulaan Set if the checkbox for "Warnings on?" should be checked by default at startup Tetapkan jika kotak tanda untuk "Amaran dihidupkan?" patut ditanda secara lalai semasa permulaan The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Butang tutup biasanya sembunyian tetingkap utama. Pelumpuhan sembunyi bermaksud, qshutdown akan ditutup. General Am Advanced Lanjutan Suspend method: Kaedah tangguh: automatic automatik user defined ditakrif pengguna Hibernate method: Kaedah hibernasi: Shutdown method: Kaedah matikan: Reboot method: Kaedah but semula: Please input an user specified command for suspend here Sila masukkan perintah dinyatakan pengguna untuk tangguh disini Gnome session Sesi Gnome KDE session Sesi KDE Please input an user specified command for shutdown here Sila masukkan perintah dinyatakan pengguna untuk matikan disini Please input an user specified command for reboot here Sila masukkan perintah dinyatakan pengguna untuk but semula disini Please input an user specified command for hibernate here Sila masukkan perintah dinyatakan pengguna untuk hibernasi disini Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Beberapa sekatan sistem contohnya shutdown kerana qshutdown masih berjalan. Tetapkan cangkuk jika qshutdown patut keluar selepas kiraan mengundur tamat. Quit qshutdown after countdown ended? Keluar qshutdown selepas kiraan mengundur tamat? &Start countdown at startup &Mula kiraan mengundur semasa permulaan Hide qshutdown at startup if "Start countdown" is checked. Sembunyi qshutdown semasa permulaan jika "mula kiraan undur" ditanda. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Fail "%1" tidak boleh ditulis! Mungkin anda tidak mempunyai keizinan membuatnya. Error Ralat Please read this carefully! Sila baca dengan teliti! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Melumpuhkan ikon talam bermaksud ia tidak berupaya memulihkan qshutdown dari talam. Sila tanda "Keluar jika menutup tetingkap utama" dan "Sembunyi qshutdown semasa permulaan". Jika qshutdown masih berjalan dan anda mahu ia hilang, hanya lakukan qshutdown sekali lagi, sepertimana anda biasa buat. Ia akan muncul semula. Disable tray &icon Lumpuhkan &ikon talam &Quit on closing main window &Keluar bila menutup tetingkap utama QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-my.ts000066400000000000000000000662451515201227200273140ustar00rootroot00000000000000 About About qshutdown qshutdown အကြောင်း Version ဗားရှင်း &About &A အကြောင်း &Thanks To &T ကျေးဇူးá€á€„်လွှာ <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Qt ကိုသုံးပြီး</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar ပြက္á€á€’ိန် Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password စကားá€á€¾á€€á€º ကိုပြောင်းမည်ዠRetype password: စကားá€á€¾á€€á€ºá€€á€­á€¯ ပြန်ရိုက်ပါዠNew password: စကားá€á€¾á€€á€ºá€¡á€žá€…် - Old password: စကားá€á€¾á€€á€ºá€¡á€Ÿá€±á€¬á€„်း - The current password is not correct! ယá€á€¯á€…ကားá€á€¾á€€á€ºá€žá€Šá€ºá€™á€™á€¾á€”်ကန်ပါ The retyped password doesn't match! ပြန်ရိုက်သည့်စကားá€á€¾á€€á€ºá€”ှစ်á€á€¯á€žá€Šá€ºá€™á€á€°á€Šá€®á€•ါዠEditor Editor Editor Gui &Minimize! &M á€á€»á€¯á€¶á€·á€™á€Šá€º Shutdown-time: ပိá€á€ºá€™á€Šá€·á€ºá€¡á€á€»á€­á€”်- Minutes till shutdown: မပိá€á€ºá€á€„်လိုသည့်မိနစ် - Reboot-time: Minutes till reboot: ပြန်မစá€á€„်လိုသည့်မိနစ် Suspend-time: ဆိုင်းငံ့မည့်အá€á€»á€­á€”် - Minutes till suspend: မဆိုင်းငံ့á€á€„်လိုသည့်မိနစ် Hibernate-time: Minutes till hibernate: shutdown in ပိá€á€ºá€á€±á€¬á€·á€™á€Šá€·á€º reboot in ပြန်စá€á€±á€¬á€·á€™á€Šá€·á€º suspend in ဆိုင်းငံ့á€á€±á€¬á€·á€™á€Šá€·á€º hibernate in years နှစ်များ months လများ hours နာရီများ days နေ့များ Res&tore &Minimize &M á€á€»á€¯á€¶á€·á€™á€Šá€º day နေ့ minutes မိနစ် seconds စက္ကန့်များ Shutdown ပိá€á€ºá€™á€Šá€º Reboot စနစ်ပြန်လည်စá€á€„်ရန် Suspend ဆိုင်းငံ့ထားမည် Hibernate လက်ရှိ အá€á€¼á€±á€¡á€”ေá€á€­á€¯á€„်းမှá€á€ºá€žá€¬á€¸á အပြီးထွက်မည် &Lock after start? &L ​ပြန်စပြီးပါက သော့á€á€á€ºá€‘ားမလားዠ&Warnings on? &Now! &N ယá€á€¯á€á€»á€€á€ºá€á€»á€„်း You can set a date in the calendar ပြက္á€á€’ိန်á€á€½á€„်ရက်စွဲသá€á€ºá€™á€¾á€á€ºá€”ိုင်ပါသည်ዠ&OK &O အိုကေ R&eset &e ပြန်စမည် &Quit &Q ထွက် &Info &I သá€á€„်းအá€á€»á€€á€ºá€¡á€œá€€á€º &Logfile &Logfile &Preferences &Preferences &Shutdown &Sလုံးá€á€•ိá€á€ºá€™á€Šá€º &Reboot &R အစကနေပြန်စမည် S&uspend &u ဆိုင်းငံ့ထားမည် &Hibernate Lock settings after countdown started Calendar ပြက္á€á€’ိန် &File &Fဖိုင် &Help &H အကူအညီ &Settings &Settings &About &A အကြောင်း &Reset &Reset &Configure &Keep proportions Warning သá€á€­á€•ေးá€á€»á€€á€º Action imminent! Information အá€á€»á€€á€ºá€¡á€œá€€á€º Countdown is not running! အá€á€»á€­á€”်ကိုနောက်ပြန်ရေá€á€½á€€á€ºá€á€¼á€„်းကိုမဖွင့်ထားပါ Turns on/off all warnings သá€á€­á€•ေးá€á€»á€€á€ºá€™á€»á€¬á€¸á€¡á€¬á€¸á€œá€¯á€¶á€¸á€€á€­á€¯á€–ွင့်မည်áŠá€•ိá€á€ºá€‘ားမည် About &Qt &Qt အကြောင်း Version ဗားရှင်း Info Info အá€á€»á€€á€ºá€¡á€œá€€á€º PassWord Password စကားá€á€¾á€€á€º &Set password &S စကားá€á€¾á€€á€ºá€žá€á€ºá€™á€¾á€á€ºá€™á€Šá€º Password: စကားá€á€¾á€€á€º − The password is not correct! စကားá€á€¾á€€á€ºá€™á€™á€¾á€”်ကန်ပါ &Change password &C စကားá€á€¾á€€á€ºá€€á€­á€¯á€•ြောင်းမည် Preferences Preferences Preferences Enable the &target time at startup Shutdown ပိá€á€ºá€™á€Šá€º Shutdown type: ပိá€á€ºá€™á€Šá€·á€ºá€¡á€™á€»á€­á€¯á€¸á€¡á€…ား- Target time: Target အá€á€»á€­á€”်- Minutes to countdown: Font: စာလုံးပုံစံ- Font size 1: စာလုံးအရွယ်အစား á - Font size 2: စာလုံးအရွယ်အစား á‚ - Font size 3: စာလုံးအရွယ်အစား რ- Size for log file: သိမ်းမည့်ဖိုင်အá€á€½á€€á€ºá€¡á€›á€½á€šá€ºá€¡á€…ား- Reboot စနစ်ပြန်လည်စá€á€„်ရန် Suspend ဆိုင်းငံ့ထားမည် Hibernate လက်ရှိ အá€á€¼á€±á€¡á€”ေá€á€­á€¯á€„်းမှá€á€ºá€žá€¬á€¸á အပြီးထွက်မည် A&utostart &u အလိုအလျောက်စမည် &Hide qshutdown at startup &H qshutdown ကိုစက်စá€á€„်ဖွင့်ဖွင့်á€á€¼á€„်းá€á€½á€„် ဖျောက်ထားမည် Lock screen &for suspend and hibernate &Edit configuration file Enable the minute &countdown at startup &Reset settings &Reset settings Size for log file in KB သိမ်းမည့်ဖိုင်အရွယ်အစားKB ဖြင့် "&Lock after start?" "&Lပြန်စပြီးသည့်အá€á€»á€­á€”်á€á€½á€„်သော့á€á€á€ºá€•ိá€á€ºá€‘ားမလား" "&Warnings on?" Log start time of qshutdown and how long it was running L&ogging checkboxes and "now!" button OK and Minimize buttons အိုကေ နှင့် á€á€»á€¯á€¶á€·á€™á€Šá€·á€ºá€á€œá€¯á€á€ºá€™á€»á€¬á€¸ Labels for example Set a font စာလုံးပုံစံသá€á€ºá€™á€¾á€á€ºá€™á€Šá€º What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? What should be displayed first by default at startup? Set if the checkbox for "Lock after start?" should be checked by default at startup Set if the checkbox for "Warnings on?" should be checked by default at startup The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. General အထွေထွေ Advanced အဆင့်မြင့် Suspend method: ဆိုင်းငံ့မည့်နည်းလမ်း- automatic အလိုအလျောက် user defined အသုံးပြုသူမှသá€á€ºá€™á€¾á€á€ºá€‘ားသော Hibernate method: Hibernate နည်းလမ်း- Shutdown method: လုံးá€á€•ိá€á€ºá€™á€Šá€·á€ºá€”ည်းလမ်း - Reboot method: စက်ကိုပိá€á€ºá€•ြီးပြန်ဖွင့်နိုင်မည့်နည်းလမ်း- Please input an user specified command for suspend here Gnome session Gnome ကá€á€¹á€ KDE session KDE ကá€á€¹á€ Please input an user specified command for shutdown here Please input an user specified command for reboot here Please input an user specified command for hibernate here Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? အá€á€»á€­á€”်ရေá€á€½á€€á€ºá€™á€¾á€¯á€·á€•ြီးပါက qshutdown ကိုထွက်မလားዠ&Start countdown at startup &S စက်စဖွင့်ဖွင့်á€á€¼á€„်းမှာ အá€á€»á€­á€”်ရေá€á€½á€€á€ºá€™á€¾á€¯á€·á€€á€­á€¯á€…မည် Hide qshutdown at startup if "Start countdown" is checked. The File "%1" is not writable! Maybe you just don't have the permissions to do so. ဖိုင် "%1" ကိုရေးလို့မရပါ သင်á€á€½á€„့်ပြုá€á€»á€€á€ºá€™á€›á€¾á€­á€œá€­á€¯á€·á€œá€Šá€ºá€¸á€–ြစ်နိုင်ပါသည်ዠError Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-ro.ts000066400000000000000000000633461515201227200273060ustar00rootroot00000000000000 About About qshutdown Despre qshutdown Version Versiunea &About &Despre &Thanks To &MulÈ›umiri <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Utilizează Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, utilitar de închidere programată a calculatorului</p><p >Autor: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Vă rugăm utilizaÈ›i <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> sau <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> pentru raportarea defectelor.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Calendar Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password SchimbaÈ›i parola Retype password: ReintroduceÈ›i parola: New password: Parola nouă: Old password: Parolă veche: The current password is not correct! Parola actuală nu este corectă! The retyped password doesn't match! Parola nouă nu se potriveÈ™te! Editor Editor Editor Gui &Minimize! &Minimizează! Shutdown-time: Oră oprire: Minutes till shutdown: Minute până la oprire: Reboot-time: Oră repornire: Minutes till reboot: Minute până la repornire: Suspend-time: Oră suspendare: Minutes till suspend: Minute până la suspendare: Hibernate-time: Oră hibernare: Minutes till hibernate: Minute până la hibernare: shutdown in opreÈ™te în reboot in reporneÈ™te în suspend in suspendă în hibernate in hibernează în years ani months luni hours ore days zile Res&tore &Reface &Minimize &Minimizare day zi minutes minute seconds secunde Shutdown ÃŽnchidere Reboot Repornire Suspend Suspendare Hibernate Hibernare &Lock after start? B&lochează după pornire? &Warnings on? A&vertizări? &Now! Acu&m! You can set a date in the calendar PuteÈ›i stabili data în calendar &OK &OK R&eset R&esetare &Quit &IeÈ™ire &Info &Info &Logfile Jurna&l &Preferences &PreferinÈ›e &Shutdown &Oprire &Reboot &Repornire S&uspend &Suspendare &Hibernate &Hibernare Lock settings after countdown started Blocare setări după începerea numărătorii inverse Calendar Calendar &File &FiÈ™ier &Help &Ajutor &Settings &Configurări &About &Despre &Reset &Resetare &Configure &Configurare &Keep proportions &Păstrează proporÈ›iile Warning AtenÈ›ie Action imminent! AcÈ›iune iminentă! Information InformaÈ›ii Countdown is not running! Numărătoarea inversă nu este activă! Turns on/off all warnings Activare/Dezactivare atenÈ›ionări About &Qt Despre &Qt Version Versiunea Info Info Info PassWord Password Parolă &Set password &Stabilire parolă Password: Parolă: The password is not correct! Parolă incorectă! &Change password S&chimbă parola Preferences Preferences PreferinÈ›e Enable the &target time at startup Activează ora dori&tă la pornirea calculatorului Shutdown ÃŽnchidere Shutdown type: Tip închidere: Target time: Oră dorită: Minutes to countdown: Numărătoare inversă - minute: Font: Font: Font size 1: Mărime font 1: Font size 2: Mărime font 2: Font size 3: Mărime font 3: Size for log file: Mărime fiÈ™ier jurnal: Reboot Repornire Suspend Suspendare Hibernate Hibernare A&utostart A&utostart &Hide qshutdown at startup Ascu&nde qshutdown la pornirea calculatorului Lock screen &for suspend and hibernate Blochează ecranul &la suspendare È™i hibernare &Edit configuration file &Editare fiÈ™ier de configurare Enable the minute &countdown at startup Activare numărătoare &minute la pornirea calculatorului &Reset settings &Resetare configurare Size for log file in KB Mărime în KB pentru fiÈ™ierul jurnal "&Lock after start?" „B&locare după pornire?†"&Warnings on?" „Acti&vare avetizări?†Log start time of qshutdown and how long it was running ScrieÈ›i în fiÈ™ierul jurnal când a pornit qshutdown È™i cât timp a funcÈ›ionat L&ogging FiÈ™ier &jurnal checkboxes and "now!" button CăsuÈ›e bifare È™i butonul „acum!†OK and Minimize buttons Butoanele OK È™i Minimizează Labels for example Etichete de exemplu Set a font Alegere font What target time should be displayed by default at startup? Ce oră doriÈ›i să fie afiÈ™ată implicit la pornire? How many minutes should be displayed for countdown by default at startup? Câte minute să fie afiÈ™ate la pornire pentru numărătoarea inversă? What should be displayed first by default at startup? Ce să fie afiÈ™at mai întâi la pornire? Set if the checkbox for "Lock after start?" should be checked by default at startup CăsuÈ›a „Blochează după pornire?†să fie bifată implicit la pornire Set if the checkbox for "Warnings on?" should be checked by default at startup CăsuÈ›a „Activare avertizări?†să fie bifată implicit la pornire The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Butonul de închidere de obicei ascunde fereastra principală. Dezactivarea ascunderii înseamnă că qshutdown se va închide complet. General General Advanced Avansat Suspend method: Metodă suspendare: automatic automat user defined stabilit de utilizator Hibernate method: Metodă hibernare: Shutdown method: Metodă oprire: Reboot method: Metodă repornire: Please input an user specified command for suspend here IntroduceÈ›i aici o comandă personalizată pentru suspendare Gnome session Sesiune Gnome KDE session Sesiune KDE Please input an user specified command for shutdown here IntroduceÈ›i aici o comandă personalizată pentru oprire Please input an user specified command for reboot here IntroduceÈ›i aici o comandă personalizată pentru repornire Please input an user specified command for hibernate here IntroduceÈ›i aici o comandă personalizată pentru hibernare Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Unele sisteme blochează oprirea pentru că qshutdown rulează pe ele. StabiliÈ›i dacă qshutdown trebuie să se închidă la terminarea numărătorii. Quit qshutdown after countdown ended? ÃŽnchidere qshutdown la terminarea numărătorii? &Start countdown at startup &ÃŽncepere numărătoare la pornire Hide qshutdown at startup if "Start countdown" is checked. Ascunde qshutdown la pornirea calculatorului dacă este bifat „Pornire numărătoareâ€. The File "%1" is not writable! Maybe you just don't have the permissions to do so. FiÈ™ierul „%1†nu poate fi scris! Poate nu aveÈ›i permisiune de scriere. Error Eroare Please read this carefully! CitiÈ›i aceasta cu atenÈ›ie! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-ru.ts000066400000000000000000001173751515201227200273160ustar00rootroot00000000000000 About About qshutdown О пакете qshutdown &About &О программе &Thanks To &БлагодарноÑти <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">С иÑпользованием Qt</span></p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown позволÑет оÑущеÑтвлÑть выключение по времени и обратному отÑчёту</p><p >Ðвтор: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >ÐвторÑкие права; 2010-2023, принадлежат Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >ИÑпользуйте <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> или <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ Ñообщений об ошибках.</p> Version ВерÑÐ¸Ñ Calendar Calendar Календарь Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Изменить пароль Retype password: Повторите пароль: New password: Ðовый пароль: Old password: Старый пароль: The current password is not correct! Текущий пароль не верен! The retyped password doesn't match! Пароли не Ñовпадают! Editor Editor Редактор Gui Minutes till shutdown: Минут до выключениÑ: Shutdown-time: Ð’Ñ€ÐµÐ¼Ñ Ð²Ñ‹ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ: Shutdown Выключить Reboot Перезагрузить Suspend Режим Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Hibernate СпÑщий режим You can set a date in the calendar Ð’Ñ‹ можете уÑтановить дату в календаре Calendar Календарь Lock settings after countdown started Заблокировать наÑтройки поÑле начала обратного отÑчёта &Lock after start? &Блокировать поÑле запуÑка? Turns on/off all warnings Вкл/Выкл вÑе Ð¿Ñ€ÐµÐ´ÑƒÐ¿Ñ€ÐµÐ¶Ð´ÐµÐ½Ð¸Ñ &Warnings on? &Включить предупреждениÑ? minutes минуты &OK &OK &Now! &СейчаÑ! &File &Файл &Help &Справка &Settings &ÐаÑтройки &Quit &Закончить &Info &Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ &About &О программе &Preferences &ÐаÑтройки &Reset &Ð¡Ð±Ñ€Ð¾Ñ &Logfile &Журнал &Configure &Параметры &Keep proportions &СохранÑть пропорции About &Qt Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ &Qt Version ВерÑÐ¸Ñ &Minimize &Свернуть R&eset С&Ð±Ñ€Ð¾Ñ &Shutdown &Выключение &Reboot &Перезагрузка S&uspend &Ожидание &Hibernate С&пÑщий режим &Minimize! &Свернуть! Reboot-time: Ð’Ñ€ÐµÐ¼Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸: Minutes till reboot: Минут до перезагрузки: Suspend-time: Ð’Ñ€ÐµÐ¼Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° в ÑпÑщий режим: Minutes till suspend: Минут до перехода в ÑпÑщий режим: Hibernate-time: СпÑщий режим-времÑ: Minutes till hibernate: Минут до перехода в ÑпÑщий режим: Warning Предупреждение Action imminent! Событие приближаетÑÑ! Information Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Countdown is not running! Обратный отÑчёт не запущен! shutdown in выключение через reboot in перезагрузка через suspend in переход в ждущий режим через hibernate in переход в ÑпÑщий режим через years лет months меÑÑцев days дней day день hours чаÑов seconds Ñекунды Res&tore &ВоÑÑтановить Info Info Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ PassWord Password Пароль &Set password &ÐаÑтроить пароль Password: Пароль: The password is not correct! Ðеправильный пароль! &Change password &Изменить пароль Preferences Preferences Параметры &Edit configuration file &Редактирование файла конфигурации &Reset settings С&Ð±Ñ€Ð¾Ñ Ð½Ð°Ñтроек General Общие Shutdown type: Тип выключениÑ: Target time: Контрольное времÑ: Minutes to countdown: Минут до обратного отÑчёта: Font: Шрифт: Font size 1: Размер шрифта 1: Font size 2: Размер шрифта 2: Font size 3: Размер шрифта 3: Size for log file: Размер файла ÑиÑтемного журнала: What target time should be displayed by default at startup? Какое контрольное Ð²Ñ€ÐµÐ¼Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ отображатьÑÑ Ð¿Ð¾ умолчанию при запуÑке? How many minutes should be displayed for countdown by default at startup? Сколько минут обратного отÑчёта должно отображатьÑÑ Ð¿Ð¾ умолчанию при запуÑке? Set a font ÐаÑтройка шрифта Labels for example Метки например OK and Minimize buttons Кнопки OK и Свернуть checkboxes and "now!" button флажки и кнопка "СейчаÑ!" Size for log file in KB Размер ÑиÑтемного журнала в КБ What should be displayed first by default at startup? Что должно отображатьÑÑ Ñначала по умолчанию при запуÑке? Shutdown Выключение Reboot Перезагрузка Suspend Режим Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Hibernate СпÑщий режим Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Отключение значка в трее означает, что Ð½ÐµÐ»ÑŒÐ·Ñ Ð±ÑƒÐ´ÐµÑ‚ открыть qshutdown из треÑ. Проверьте также наÑтройки параметров "Завершить при закрытии главного окна" и "Скрывать qshutdown поÑле запуÑка". ЕÑли qshutdown работает, а вы хотите Ñнова открыть программу, то проÑто запуÑтите qshutdown как обычно. ПоÑле Ñтого qshutdown поÑвитÑÑ Ñнова. Disable tray &icon Отключить &значок в трее The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Кнопка "закрыть" обычно Ñкрывает главное окно. Отключение функции "Ñкрыть" означает завершение работы qshutdown. &Quit on closing main window За&вершить при закрытии главного окна Enable the &target time at startup Включить &контрольное Ð²Ñ€ÐµÐ¼Ñ Ð¿Ñ€Ð¸ запуÑке Enable the minute &countdown at startup Включить &обратный отÑчёт при запуÑке A&utostart &Ðвтозагрузка Set if the checkbox for "Lock after start?" should be checked by default at startup УÑтановка флажка "Блокировать поÑле запуÑка?" по умолчанию при загрузке "&Lock after start?" "Б&локировка поÑле запуÑка?" Set if the checkbox for "Warnings on?" should be checked by default at startup УÑтановка флажка "Включить предупреждениÑ?" по умолчанию при загрузке "&Warnings on?" "&Включить предупреждениÑ?" &Start countdown at startup &ЗапуÑк обратного отÑчёта при Ñтарте Hide qshutdown at startup if "Start countdown" is checked. Скрыть qshutdown поÑле запуÑка, еÑли Ñтоит флажок "Ðачать обратный отÑчёт". &Hide qshutdown at startup &Скрывать qshutdown поÑле запуÑка Log start time of qshutdown and how long it was running РегиÑтрировать Ð²Ñ€ÐµÐ¼Ñ Ð·Ð°Ð¿ÑƒÑка qshutdown и продолжительноÑть работы L&ogging &Журналирование Lock screen &for suspend and hibernate Блокировка Ñкрана &в режиме Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Ð¸ ÑпÑщем режиме Advanced Дополнительные automatic автоматичеÑки Gnome session СеÑÑÐ¸Ñ Gnome KDE session СеÑÑÐ¸Ñ KDE user defined по выбору Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Suspend method: Переход в режим ожиданиÑ: Hibernate method: Переход в ÑпÑщий режим: Shutdown method: Выключение: Reboot method: Перезагрузка: Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Ðекоторые ÑиÑтемы блокируют, например, выключение, поÑкольку qshutdown продолжает работу. ÐаÑтройте hook, еÑли работа qshutdown должна быть завершена поÑле Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ñ Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð¾Ð³Ð¾ отÑчёта. Quit qshutdown after countdown ended? Завершить работу qshutdown поÑле Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ñ Ð¾Ð±Ñ€Ð°Ñ‚Ð½Ð¾Ð³Ð¾ отÑчёта? Please input an user specified command for shutdown here Задайте команду Ð´Ð»Ñ Ð²Ñ‹ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Please input an user specified command for reboot here Задайте команду Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸ Please input an user specified command for suspend here Задайте команду Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° в режим Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ Please input an user specified command for hibernate here Задайте команду Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÑ…Ð¾Ð´Ð° в ÑпÑщий режим Error Ошибка The File "%1" is not writable! Maybe you just don't have the permissions to do so. Файл "%1" не доÑтупен Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи! Возможно, отÑутÑтвуют права на данную операцию. Please read this carefully! Прочтите внимательно! QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-tr.ts000066400000000000000000000641221515201227200273040ustar00rootroot00000000000000 About About qshutdown qshutdown hakkında Version Sürüm &About &Hakkında &Thanks To &TeÅŸekkürler <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Qt Kullanılarak</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, bir süreli ve geri sayımlı kapatma aracı</p><p >Yazar: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Telif Hakkı &copy; 2010-2023, Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Lütfen hata raporları için <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> veya <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> kullanın.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Takvim Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Parolayı DeÄŸiÅŸtir Retype password: Parolayı tekrar giriniz: New password: Yeni parola: Old password: Eski parola: The current password is not correct! Åžu anki parola doÄŸru deÄŸil! The retyped password doesn't match! Yeniden yazılan parola uyuÅŸmuyor! Editor Editor Düzenleyici Gui &Minimize! &Küçült! Shutdown-time: Kapanma zamanı: Minutes till shutdown: Kapatmaya kalan dakika: Reboot-time: Yeniden baÅŸlatma zamanı: Minutes till reboot: Yeniden baÅŸlatmaya kalan dakika: Suspend-time: Askıya alma zamanı: Minutes till suspend: Askıya almaya kalan dakika: Hibernate-time: Bekletme zamanı: Minutes till hibernate: Beklemeye kalan dakika: shutdown in kapanıyor reboot in yeniden baÅŸlatılıyor suspend in askıya alınıyor hibernate in beklemeye geçiyor years yıl months ay hours saat days gün Res&tore &Geri Yükle &Minimize &Küçült day gün minutes dakika seconds sâniye Shutdown Bilgisayarı Kapat Reboot Yeniden BaÅŸlat Suspend Askıya Al Hibernate Beklet &Lock after start? BaÅŸladıktan sonra ki&litlensin mi? &Warnings on? &Uyarılar açık mı? &Now! &Åžimdi! You can set a date in the calendar Takvimden bir târih seçebilirsiniz &OK &Tamam R&eset &Sıfırla &Quit &Çıkış &Info &Bilgi &Logfile &Kayıt dosyası &Preferences &Tercihler &Shutdown &Bilgisayarı Kapat &Reboot &Yeniden BaÅŸlat S&uspend &Uyku &Hibernate &Hazırda Beklet Lock settings after countdown started Geri sayım baÅŸladıktan sonra ayarları kilitle Calendar Takvim &File &Dosya &Help &Yardım &Settings &Ayarlar &About &Hakkında &Reset &Sıfırla &Configure &Yapılandır &Keep proportions &Ana pencere orantılarını sâbit tut Warning Uyarı Action imminent! Az kaldı! Information Bilgilendirme Countdown is not running! Geri sayım baÅŸlatılmadı! Turns on/off all warnings Bütün uyarıları açar/kapatır About &Qt &Qt Hakkında Version Sürüm Info Info Bilgi PassWord Password Parola &Set password &Parola belirle Password: Parola: The password is not correct! Parola yanlış! &Change password Parolayı &deÄŸiÅŸtir Preferences Preferences Tercihler Enable the &target time at startup &Hedef zamanı baÅŸlangıçta etkinleÅŸtir Shutdown Bilgisayarı Kapat Shutdown type: Kapatma türü: Target time: Hedef zaman: Minutes to countdown: Geri sayıma kalan dakika: Font: Yazı tipi: Font size 1: Yazı tipi boyutu 1: Font size 2: Yazı tipi boyutu 2: Font size 3: Yazı tipi boyutu 3: Size for log file: Kayıt dosyası boyutu: Reboot Yeniden BaÅŸlat Suspend Askıya Al Hibernate Hazırda Beklet A&utostart &ÖziÅŸler BaÅŸlat &Hide qshutdown at startup &qshutdown'ı baÅŸlangıçta gizle Lock screen &for suspend and hibernate Bekleme ve u&ykuda ekranı kilitle &Edit configuration file Yapılandırma dosyasını düz&enle Enable the minute &countdown at startup BaÅŸlanfıçta dakika &geri sayımını etkinleÅŸtir &Reset settings Ayarları sıfı&rla Size for log file in KB Günlük dosyasının KB cinsinden boyutu "&Lock after start?" "&BaÅŸladıktan sonra kilitlensin mi?" "&Warnings on?" "&Uyarılar açık mı?" Log start time of qshutdown and how long it was running qshutdown'ın günlük baÅŸlama zamanı ve ne kadar süredir çalışıyor olduÄŸu L&ogging G&ünlükleme checkboxes and "now!" button iÅŸaret kutuları ve "ÅŸimdi!" düğmesi OK and Minimize buttons TAMAM ve Simge Durumuna Küçült düğmeleri Labels for example ÖrneÄŸin etiketler Set a font Bir yazı tipi ayarlayın What target time should be displayed by default at startup? BaÅŸlangıçta öntanımlı hangi hedef zamanı görüntülenmeli? How many minutes should be displayed for countdown by default at startup? Geri sayım için baÅŸlangıçta öntanımlı olarak kaç dakika gösterilsin? What should be displayed first by default at startup? BaÅŸlangıçta öntanımlı ilk ne görüntülenmeli? Set if the checkbox for "Lock after start?" should be checked by default at startup "BaÅŸlangıçtan sonra kilitlensin mi?" iÅŸaret kutusunun baÅŸlangıçta iÅŸaretlenip iÅŸaretlenmemesini ayarla Set if the checkbox for "Warnings on?" should be checked by default at startup "Uyarılar açık mı?" iÅŸaret kutusunun baÅŸlangıçta iÅŸaretlenip iÅŸaretlenmemesini ayarla The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Kapat düğmesi genellikle ana pencereyi gizler. Gizlemeyi kapatmak, qshutdown'ın bunun yerine kapatılmasını saÄŸlar. General Genel Advanced GeliÅŸmiÅŸ Suspend method: Askıya alma yöntemi: automatic otomatik user defined kullanıcı tanımlı Hibernate method: Bekletme yöntemi: Shutdown method: Kapatma yöntemi: Reboot method: Yeniden baÅŸlatma yöntemi: Please input an user specified command for suspend here Buraya lütfen askıya alma için kullanıcı tanımlı bir komut girin Gnome session Gnome oturumu KDE session KDE oturumu Please input an user specified command for shutdown here Buraya lütfen kapatmak için kullanıcı tanımlı bir komut girin Please input an user specified command for reboot here Buraya lütfen yeniden baÅŸlatma için kullanıcı tanımlı bir komut girin Please input an user specified command for hibernate here Buraya lütfen bekletme için kullanıcı tanımlı bir komut girin Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Bazı sistemler qshutdown hala çalıştığı için kapatmayı engeller. qshutdown'ın geri sayımdan sonra çıkmasını isterseniz bir kanca ayarlayın. Quit qshutdown after countdown ended? Geri sayım bittikten sonra qshutdown kapatılsın mı? &Start countdown at startup &BaÅŸlangıçta geri sayımı baÅŸlat Hide qshutdown at startup if "Start countdown" is checked. "Geri sayımı baÅŸlat" iÅŸaretliyse baÅŸlangıçta qshutdown'ı gizle. The File "%1" is not writable! Maybe you just don't have the permissions to do so. "%1" dosyası yazılabilir deÄŸil! Belki yazmak için yetkiye sahip olmayabilirsiniz. Error Hata Please read this carefully! Lütfen bunu dikkatle okuyun! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-ug.ts000066400000000000000000000706321515201227200272750ustar00rootroot00000000000000 About About qshutdown qshutdown ھەققىدە Version نەشرى &About ھەققىدە(&A) &Thanks To تەشەككۈرلەر(&T) <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <html dir="rtl"><p><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">ئىشلىتىدۇ Qt</span></p></html> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <html dir="rtl"><p>qshutdown ۋاقىت Û‹Û• تەتۈر ساناق ئاساسىدىكى تاقاش قورالى</p><p>يازغۇچى: &lt;Christian Metscher &lt;hakaishi@web.de</p><p>نەشر ھوقۇقىغا ئىگە &copy; 2010-â€2019, ל־Christian Metscher </p><p><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p>خاتالىق دوكلاتىنى <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> ياكى <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;\">https://bugs.launchpad.net/qt-shutdown-p</span></a> غا يوللاڭ.</p></body></html> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar يىلنامە Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password ئىم ئۆزگەرت Retype password: ئىمنى قايتا كىرگۈزۈڭ: New password: ÙŠÛÚ­Ù‰ ئىم: Old password: كونا ئىم: The current password is not correct! نۆۋەتتىكى ئىم خاتا! The retyped password doesn't match! قايتا كىرگۈزگەن ئىم ماس كەلمىدى! Editor Editor تەھرىرلىگۈچ Gui &Minimize! كىچىكلەت(&M)! Shutdown-time: تاقاش ۋاقتى: Minutes till shutdown: تاقاشقىچە قالغان ۋاقىت: Reboot-time: قايتا قوزغىتىش ۋاقتى: Minutes till reboot: قايتا قوزغىتىشقىچە قالغان ۋاقىت: Suspend-time: Ø¦ÛØ³Ù‰Ù„غان ۋاقىت: Minutes till suspend: Ø¦ÛØ³Ù‰Ø´Ù‚Ù‰Ú†Û• بولغان ۋاقىت: Hibernate-time: ئۆچەك ۋاقتى: Minutes till hibernate: ئۈچەككىچە بولغان ۋاقىت: shutdown in دە Ø¦ÛØªÙ‰Ø´ reboot in دە قايتا قوزغىتىش suspend in Ø¦ÛØ³Ù‰Ù¾ قويدى hibernate in ئۈچەكتە years يىللار months ئايلار hours سائەت days ÙƒÛˆÙ† Res&tore ئەسلىگە كەلتۈر(&T) &Minimize كىچىكلەت(&M) day ÙƒÛˆÙ† minutes مىنۇت seconds سÛكۇنت Shutdown تاقا Reboot قايتا قوزغىتىش Suspend توڭلىتىش Hibernate ئۈچەك &Lock after start? قوزغاتقاندىن كىيىن قۇلۇپلا؟(&L) &Warnings on? ئاگاھلاندۇرامدۇ؟(&W) &Now! دەرھال(&N)! You can set a date in the calendar يىلنامە Ú†ÛØ³Ù„اسىنى تەڭشىيەلەيسىز &OK جەزملە(&O) R&eset ئەسلىگە قايتۇر(&E) &Quit Ú†Ûكىن(&Q) &Info ئۇچۇرى(&I) &Logfile خاتىرە ھۆججەت(&L) &Preferences مايىللىق(&P) &Shutdown تاقا(&S) &Reboot قايتا قوزغات(&R) S&uspend Ø¦ÛØ³Ù‰Ù¾ قويۇلدى(&U) &Hibernate ئۆچەككە كىرگۈز(&H) Lock settings after countdown started تەتۈر ساناق باشلانغاندا تەڭشەكنى قۇلۇپلا Calendar يىلنامە &File ھۆججەت(&F) &Help ياردەم(&H) &Settings تەڭشەكلەر(&S) &About ھەققىدە(&A) &Reset ئەسلىگە قايتۇر(&R) &Configure سەپلە(&C) &Keep proportions نىسبەتنى ساقلاپ قال(&K) Warning ئاگاھلاندۇرۇش Action imminent! مەشغۇلات ÙŠÛقىنلاپ قالدى! Information ئۇچۇر Countdown is not running! تەتۈر ساناق ئىجرا قىلىنمايۋاتىدۇ! Turns on/off all warnings ھەممە ئاگاھلاندۇرۇشنى ئاچ/تاقا About &Qt &Qt ھەققىدە Version نەشرى Info Info ئۇچۇر PassWord Password ئىم &Set password ئىم تەڭشەك(&S) Password: ئىم: The password is not correct! ئىم خاتا! &Change password ئىم ئۆزگەرت(&C) Preferences Preferences مايىللىق Enable the &target time at startup قوزغاتقاندا نىشان ۋاقىتنى قوزغات(&T) Shutdown تاقا Shutdown type: تاقاش تىپى: Target time: نىشان ۋاقىت: Minutes to countdown: تەتۈر ساناش ۋاقتى: Font: خەت نۇسخا: Font size 1: خەت نۇسخا 1: Font size 2: خەت نۇسخا 2: Font size 3: خەت نۇسخا 3: Size for log file: خاتىرە ھۆججەت چوڭلۇقى: Reboot قايتا قوزغات Suspend توڭلات Hibernate ئۈچەك A&utostart ئۆزلۈكىدىن قوزغات&U) &Hide qshutdown at startup قوزغالغاندا qshutdown نى يوشۇر (&H) Lock screen &for suspend and hibernate توڭلاتقان Û‹Û• ئۆچەككە كىرگەندە ئÛكراننى قۇلۇپلا (&F) &Edit configuration file سەپلىمە ھۆججەت تەھرىر(&E) Enable the minute &countdown at startup قوزغالغاندا مىنۇت تەتۈر ساناقنى قوزغات(&C) &Reset settings تەڭشەكلەرنى ئەسلىگە قايتۇر(&R) Size for log file in KB خاتىرە ھۆججەت سىغىمى كىلوبايت "&Lock after start?" «قوزغالغاندىن ÙƒÛيىن قۇلۇپلامدۇ؟(&L)» "&Warnings on?" «ئاگاھلاندۇرامدۇ؟(&W)» Log start time of qshutdown and how long it was running qshutdown نىڭ قوزغالغان ۋاقتى Û‹Û• قانچىلىك ۋاقىت ئىجرا قىلىنغانلىقىنى خاتىرىلەيدۇ L&ogging تىزىمغا كىرىۋاتىدۇ(&O) checkboxes and "now!" button ÙƒÛ†Ù¾ تاللاش رامكىسى Û‹Û• «دەرھال!» توپچىسى OK and Minimize buttons جەزملە Û‹Û• كىچىكلەت توپچا Labels for example مىسالنىڭ بەلگىسى Set a font خەت نۇسخا تەڭشەك What target time should be displayed by default at startup? كۆڭۈلدىكى ئەھۋالدا قوزغالغاندا قانداق نىشان ۋاقىتنى كۆرسىتىدۇ؟ How many minutes should be displayed for countdown by default at startup? كۆڭۈلدىكى ئەھۋالدا قوزغالغاندا تەتۈر ساناقنى قانچە مىنۇت كۆرسىتىدۇ؟ What should be displayed first by default at startup? كۆڭۈلدىكى ئەھۋالدا قوزغالغاندا ئالدى بىلەن Ù†Ûمىنى كۆرسىتىدۇ؟ Set if the checkbox for "Lock after start?" should be checked by default at startup ئەگەر «قوزغىلىشتىن ئىلگىرى قۇلۇپلانسۇنمۇ؟» تاللانما رامكا تاللانغان بولسا كۆڭۈلدىكى ئەھۋالدا قوزغىتىش قىلىپ تەڭشىلىدۇ. Set if the checkbox for "Warnings on?" should be checked by default at startup ئەگەر «ئاگاھلاندۇرۇشنى ئاچامدۇ؟» تاللانما رامكا تاللانغان بولسا كۆڭۈلدىكى ئەھۋالدا قوزغىتىش قىلىپ تەڭشىلىدۇ. The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. تاقا توپچىسى ئادەتتە ئاساسىي كۆزنەكنى يوشۇرىدۇ. يوشۇرۇشنى چەكلەش qshutdown دىن شۇئان Ú†Ûكىنىشنى بىلدۈرىدۇ. General ئادەتتىكى Advanced ئالىي Suspend method: توڭلىتىش ئۇسۇلى: automatic ئاپتوماتىك user defined ئىشلەتكۈچى بەلگىلىگەن Hibernate method: ئۈچەك ئۇسۇلى: Shutdown method: تاقاش ئۇسۇلى: Reboot method: قايتا قوزغىتىش ئۇسۇلى: Please input an user specified command for suspend here بۇ جايدا توڭلىتىش ئۈچۈن ئىشلەتكۈچى بەلگىلىگەن بۇيرۇقنى كىرگۈزۈڭ Gnome session Gnome ئەڭگىمە KDE session KDE ئەڭگىمە Please input an user specified command for shutdown here بۇ جايدا تاقاش ئۈچۈن ئىشلەتكۈچى بەلگىلىگەن بۇيرۇقنى كىرگۈزۈڭ Please input an user specified command for reboot here بۇ جايدا قايتا قوزغىتىش ئۈچۈن ئىشلەتكۈچى بەلگىلىگەن بۇيرۇقنى كىرگۈزۈڭ Please input an user specified command for hibernate here بۇ جايدا ئۈچەككە كىرىش ئۈچۈن ئىشلەتكۈچى بەلگىلىگەن بۇيرۇقنى كىرگۈزۈڭ Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. بەزى سىستÛمىلار ÙƒÙˆÙ…Ù¾ÙŠÛ‡ØªÛØ±Ù†Ù‰ تاقاشقا ئوخشاش مەشغۇلاتنى توسىدۇ چۈنكى qshutdown ئىجرا قىلىنىۋاتىدۇ. تەتۈر ساناق ئاخىرلاشقاندىن ÙƒÛيىن qshutdown Ú†Ûكىنىدىغان بولسا ئىلمەك (hook)تىن بىرنى تەڭشەڭ. Quit qshutdown after countdown ended? تەتۈر ساناق ئاخىرلاشقاندىن ÙƒÛيىن qshutdown دىن Ú†Ûكىنەمدۇ؟ &Start countdown at startup قوزغالغاندا countdown نى قوزغات(&S) Hide qshutdown at startup if "Start countdown" is checked. «قوزغالغاندا countdown نى قوزغات» تاللانغان بولسا قوزغالغاندا qshutdown نى يوشۇر. The File "%1" is not writable! Maybe you just don't have the permissions to do so. بۇ "%1" ھۆججەتكە يازالمايدۇ! بەلكىم ÙŠÛØ²Ù‰Ø´ ھوقۇقىڭىز بولماسلىقى مۇمكىن. Error خاتالىق Please read this carefully! بۇنى تەپسىلىي ئوقۇڭ ! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-uk.ts000066400000000000000000000755041515201227200273040ustar00rootroot00000000000000 About About qshutdown Про qshutdown Version ВерÑÑ–Ñ &About Пр&о програму &Thanks To &ПодÑки <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">З викориÑтаннÑм Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p>qshutdown — програма Ð´Ð»Ñ Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð¿â€™ÑŽÑ‚ÐµÑ€Ð° у певний момент чаÑу або за відліком</p><p >Ðвтор: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >&copy; Christian Metscher, 2010–2023</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p>ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ вади можна залишати на <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> або <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a>.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p>ОÑобливі подÑки:<br /></p><p>Фабіану Дойхлеру (Fabian Deuchler) за допомогою.<br /><br />І БраÑну ÐельÑону (Brian Nelson) та д-ру ТобіаÑу Кватгамеру (Tobias Quathamer) за ÑпонÑÐ¾Ñ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ð¸Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð¾ Debian.<br /><br />а також Мікелю БанхÑу-Ñ–-Піке (Miquel Banchs i Piqué) за ідею щодо реалізації підпрограми Ð´Ð»Ñ Ð½ÐµÑ‚Ð¸Ð¿Ð¾Ð²Ð¸Ñ… параметрів кожного Ð´Ð½Ñ Ñ‚Ð¸Ð¶Ð½Ñ.</p> Calendar Calendar Календар Weekly Ð©Ð¾Ñ‚Ð¸Ð¶Ð½Ñ activate weekly активувати Ñ‰Ð¾Ñ‚Ð¸Ð¶Ð½Ñ Please note that you might want to enable autostart and countdown at startup. Будь лаÑка, зауважте, що вам варто увімкнути авто запуÑк Ñ– відлік при запуÑку. ChangePassword Change Password Зміна Ð¿Ð°Ñ€Ð¾Ð»Ñ Retype password: Введіть пароль ще раз: New password: Ðовий пароль: Old password: Старий пароль: The current password is not correct! Поточний пароль Ñ” помилковим! The retyped password doesn't match! Повторно введений пароль не збігаєтьÑÑ Ð· початковим! Editor Editor Редактор Gui &Minimize! &Мінімізувати! Shutdown-time: Ð§Ð°Ñ Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ: Minutes till shutdown: Ð§Ð°Ñ Ñƒ хвилинах до вимиканнÑ: Reboot-time: Ð§Ð°Ñ Ð¿ÐµÑ€ÐµÐ·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ: Minutes till reboot: Ð§Ð°Ñ Ñƒ хвилинах до перезавантаженнÑ: Suspend-time: Ð§Ð°Ñ Ð¿Ñ€Ð¸Ð·ÑƒÐ¿Ð¸Ð½ÐºÐ¸: Minutes till suspend: Ð§Ð°Ñ Ñƒ хвилинах до призупинки: Hibernate-time: Ð§Ð°Ñ Ð¿Ñ€Ð¸ÑиплÑннÑ: Minutes till hibernate: Ð§Ð°Ñ Ñƒ хвилинах до приÑиплÑннÑ: shutdown in завершити роботу за reboot in перезавантажити за suspend in призупинити за hibernate in приÑпати за years років months міÑÑців hours години days днів Res&tore Ð’&ідновити &Minimize &Мінімізувати day день minutes хвилини seconds Ñекунд Shutdown Вимкнути Reboot Перезавантажити Suspend Призупинити Hibernate ПриÑпати &Lock after start? За&блокувати піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку? &Warnings on? &Попередити? &Now! &Зараз! You can set a date in the calendar Ви можете вказати дату у календарі &OK &Гаразд R&eset С&кинути &Quit Ви&йти &Info &Ð†Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ &Logfile &Файл журналу &Preferences &Параметри &Shutdown Ви&мкнути &Reboot П&ерезавантажити S&uspend Приз&упинити &Hibernate П&риÑпати Lock settings after countdown started Заблокувати параметри піÑÐ»Ñ Ð¿Ð¾Ñ‡Ð°Ñ‚ÐºÑƒ відліку Calendar Календар &File &Файл &Help &Довідка &Settings П&араметри &About Пр&о програму &Reset &Скинути &Configure &Ðалаштувати &Keep proportions З&берігати пропорції Warning ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Action imminent! Буде виконано дію з Ð¿Ñ€Ð¸Ð¿Ð¸Ð½ÐµÐ½Ð½Ñ Ñ€Ð¾Ð±Ð¾Ñ‚Ð¸! Information Ð†Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ Countdown is not running! ВиконуєтьÑÑ Ð²Ñ–Ð´Ð»Ñ–Ðº! Turns on/off all warnings Увімкнути або вимкнути Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ About &Qt Про бібліотеку &Qt Version ВерÑÑ–Ñ Info Info Ð†Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ PassWord Password Пароль &Set password Ð’Ñтановити &пароль Password: Пароль: The password is not correct! Ðеправильний пароль! &Change password З&мінити пароль Preferences Preferences Параметри Enable the &target time at startup Увімкнути &Ñ‡Ð°Ñ Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¿Ñ–Ð´ Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку Shutdown Вимкнути Shutdown type: Тип вимиканнÑ: Target time: Ð§Ð°Ñ Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ: Minutes to countdown: Ð§Ð°Ñ Ð²Ñ–Ð´Ð»Ñ–ÐºÑƒ у хвилинах: Font: Шрифт: Font size 1: Розмір шрифту 1: Font size 2: Розмір шрифту 2: Font size 3: Розмір шрифту 3: Size for log file: Розмір файла журналу: Reboot Перезавантажити Suspend Призупинити Hibernate ПриÑпати A&utostart &ÐвтозапуÑк &Hide qshutdown at startup &Ховати вікно qshutdown піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку Lock screen &for suspend and hibernate Блокувати екран піÑÐ»Ñ Ð¿&ризупинки та приÑиплÑÐ½Ð½Ñ &Edit configuration file &Редагувати файл налаштувань Enable the minute &countdown at startup Увімкнути відлік &хвилин піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку &Reset settings По&вернути початкові параметри Size for log file in KB Розмір файла журналу у кБ "&Lock after start?" «За&блокувати піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку?» "&Warnings on?" «&Попередити?» Log start time of qshutdown and how long it was running ЗапиÑувати Ñ‡Ð°Ñ Ð·Ð°Ð¿ÑƒÑку qshutdown та триваліÑть роботи програми L&ogging &Ð–ÑƒÑ€Ð½Ð°Ð»ÑŽÐ²Ð°Ð½Ð½Ñ checkboxes and "now!" button пункти Ð´Ð»Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ñ– кнопка «Зараз!» OK and Minimize buttons Кнопки «Гаразд» Ñ– «Мінімізувати» Labels for example Мітки Ð´Ð»Ñ Ð¿Ñ€Ð¸ÐºÐ»Ð°Ð´Ñƒ Set a font Ð’Ñтановити шрифт What target time should be displayed by default at startup? Який Ñ‡Ð°Ñ Ð¿Ñ€Ð¸Ð·Ð½Ð°Ñ‡ÐµÐ½Ð½Ñ Ð¼Ð°Ñ” бути типово показано піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку? How many minutes should be displayed for countdown by default at startup? За Ñкільки хвилин до Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ Ð´Ñ–Ñ— Ñлід показувати відлік піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку? What should be displayed first by default at startup? Що має бути типово показано першим піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку? Set if the checkbox for "Lock after start?" should be checked by default at startup Визначає, чи Ñлід типово позначати пункт «Заблокувати піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку?» піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку Set if the checkbox for "Warnings on?" should be checked by default at startup Визначає, чи Ñлід типово позначати пункт «Попереджати?» піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Кнопка Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð·Ð°Ð·Ð²Ð¸Ñ‡Ð°Ð¹ приховує головне вікно. Ð’Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿Ñ€Ð¸Ñ…Ð¾Ð²ÑƒÐ²Ð°Ð½Ð½Ñ Ð¾Ð·Ð½Ð°Ñ‡Ð°Ñ”, що роботу qshutdown буде проÑто завершено. General Загальне Advanced Додатково Suspend method: СпоÑіб призупинки: automatic автоматичний user defined визначений кориÑтувачем Hibernate method: СпоÑіб приÑиплÑннÑ: Shutdown method: СпоÑіб вимиканнÑ: Reboot method: СпоÑіб перезавантаженнÑ: Please input an user specified command for suspend here Будь лаÑка, вкажіть тут потрібну вам команду Ð¿Ñ€Ð¸Ð·ÑƒÐ¿Ð¸Ð½ÐµÐ½Ð½Ñ Gnome session Ð¡ÐµÐ°Ð½Ñ KDE KDE session Ð¡ÐµÐ°Ð½Ñ KDE Please input an user specified command for shutdown here Будь лаÑка, вкажіть тут потрібну вам команду Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Please input an user specified command for reboot here Будь лаÑка, вкажіть тут потрібну вам команду Ð¿ÐµÑ€ÐµÐ·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Please input an user specified command for hibernate here Будь лаÑка, вкажіть тут потрібну вам команду приÑиплÑÐ½Ð½Ñ Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. У деÑких ÑиÑтемах, Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð±Ð»Ð¾ÐºÑƒÑ”Ñ‚ÑŒÑÑ, наприклад через те, що qshutdown продовжує працювати. Щоб запобігти неналежній поведінці ÑиÑтеми, ви можете наказати qshutdown завершити роботу, щойно буде завершено відлік. Quit qshutdown after countdown ended? Вийти з qshutdown піÑÐ»Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð»Ñ–ÐºÑƒ? &Start countdown at startup &Розпочати відлік одразу піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку Hide qshutdown at startup if "Start countdown" is checked. Приховати вікно qshutdown піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку, Ñкщо позначено пункт «Розпочинати відлік піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку». The File "%1" is not writable! Maybe you just don't have the permissions to do so. Файл «%1» Ñ” непридатним до запиÑу! Ймовірно, ви не маєте належних прав доÑтупу до цього файла. Error Помилка Please read this carefully! Будь лаÑка, ознайомтеÑÑ Ð· цією інформацією! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Ð’Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð¿Ñ–ÐºÑ‚Ð¾Ð³Ñ€Ð°Ð¼Ð¸ у лотку призведе до неможливоÑті відкрити вікно qshutdown з лотка. Вам варто також позначити пункти «Виходити піÑÐ»Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð³Ð¾Ð»Ð¾Ð²Ð½Ð¾Ð³Ð¾ вікна» та «Ховати вікно qshutdown піÑÐ»Ñ Ð·Ð°Ð¿ÑƒÑку». Якщо qshutdown працює, Ñ– вам потрібно відкрити вікно програми, проÑто ще раз віддайте команду qshutdown. У відповідь буде відкрито вікно програми. Disable tray &icon Вимкнути &піктограму у лотку &Quit on closing main window Ви&ходити піÑÐ»Ñ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ñ‚Ñ Ð³Ð¾Ð»Ð¾Ð²Ð½Ð¾Ð³Ð¾ вікна QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. Вітаємо у qshutdown! Якщо ви хочете ÑкориÑтатиÑÑ qprogram-starter Ð´Ð»Ñ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ÑиÑтеми Ñ– викориÑтовуєте Gnome Shell, ймовірно, діалогове вікно Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ Ð±ÑƒÐ´Ðµ показано прÑмо зараз. Якщо ви хочете вимикати ÑиÑтему безпоÑередньо, будь лаÑка, відкрийте вікно налаштувань Ñ– вÑтановіть у пункті ÑпоÑобу Ð²Ð¸Ð¼Ð¸ÐºÐ°Ð½Ð½Ñ ConsoleKit або щоÑÑŒ інше. Щоб повідомити про ваду у програмі або перекладі, ÑкориÑтайтеÑÑ Ñторінкою https://launchpad.net/~hakaishi. Файл параметрів зберігаєтьÑÑ Ñ‚ÑƒÑ‚: %1. Подальші відомоÑті можна знайти у вікні відомоÑтей. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-uz.ts000066400000000000000000000715651515201227200273260ustar00rootroot00000000000000 About About qshutdown qshutdown ҳақида Version ВерÑиÑÑи &About &Ҳақида &Thanks To &Раҳмат, Ñизга, <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Qt'дан фойдаланиш</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown, вақт ва ўчириш вақти ҳиÑобига аÑоÑланган ўчириш воÑитаÑи</p><p >Муаллифи: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Муаллифлик ҳуқуқи &copy; 2010-2023, Christian Metscher'га тегишли</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Марҳамат, <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> Ñайтидан фойдаланинг ёки ноÑозликларни хабар бериш <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> Ñайтидан фойдаланинг.</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar Календар Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password Махфий Ñўзни ўзгартириш Retype password: Махфий Ñўзни қайта киритинг: New password: Янги махфий Ñўз: Old password: ЭÑки махфий Ñўз: The current password is not correct! Жорий махфий Ñўз хато! The retyped password doesn't match! Кейинги киритилган махфий Ñўзингиз олдингиÑидан фарқли! Editor Editor Таҳрирчи Gui &Minimize! &Ðиғиш! Shutdown-time: Ўчиш вақти: Minutes till shutdown: Ўчгунгача дақиқалар: Reboot-time: Ўчиб-ёниш вақти: Minutes till reboot: Ўчиб-ёнгунга қадар дақиқалар: Suspend-time: Кутиш уÑули вақти: Minutes till suspend: Кутиш уÑулига қадар дақиқалар: Hibernate-time: Уйқуга кетиш вақти: Minutes till hibernate: Уйқуга кетганга қадар дақиқалар: shutdown in ўчириш: reboot in ўчириб-ёқиш: suspend in кутиш уÑулига ўтиш: hibernate in уйқуга кетиш: years йиллар months ойлар hours Ñоатлар days кунлар Res&tore Қайта &тиклаш &Minimize Й&иғиш day кун minutes дақиқалар seconds ÑониÑлар Shutdown Ўчириш Reboot Ўчириб-ёқиш Suspend Кутиш уÑули Hibernate Уйқуга кетиш уÑули &Lock after start? Ишга туширилгандан Ñўнг &қулфланÑинми? &Warnings on? &ОгоҳлантирилÑинми? &Now! &Ҳозир! You can set a date in the calendar Сиз вақтни тақвимда ўрната олаÑиз &OK &OK R&eset Т&иклаш &Quit Чи&қиш &Info &Маълумот &Logfile &Маълумотлар файли &Preferences &МоÑлаш &Shutdown ÐŽ&чириш &Reboot &Ўчириб-ёқиш S&uspend К&тиш уÑулига ўтиш &Hibernate &Уйқуга кетиш Lock settings after countdown started Вақт ҳиÑоби ишга тушгандан Ñўнг моÑлашларни қулфлаш Calendar Тақвим &File &Файл &Help &Ðрдам &Settings &МоÑламалар &About &Ҳақида &Reset &Тиклаш &Configure &МоÑлаш &Keep proportions ПропорциÑни &Ñақлаш Warning Диққат Action imminent! Ðмални бекор қилиб бўлмайди! Information Маълумот Countdown is not running! ТеÑкари вақт ҳиÑоби ишга туширилмаган! Turns on/off all warnings Огоҳлантиришларни ўчириш/ёқиш About &Qt &Qt ҳақида Version ВерÑиÑÑи Info Info Маълумот PassWord Password Махфий Ñўз &Set password Махфий Ñўз &ўрнатиш Password: Махфий Ñўз: The password is not correct! Махфий Ñўз - хато! &Change password Махфий Ñўзни &ўзгартириш Preferences Preferences Параметрлар Enable the &target time at startup Ишга тушиш &мўлжал вақтини ёқиш Shutdown Ўчириш Shutdown type: Ўчириш тури: Target time: Мўлжалланган вақт: Minutes to countdown: ТеÑкари ҳиÑоб вақти дақиқалари: Font: Шрифт: Font size 1: Шрифт ҳажми 1: Font size 2: Шрифт ҳажми 2: Font size 3: Шрифт ҳажми 3: Size for log file: Лог файл ҳажми: Reboot Ўчириб-ёқиш Suspend Кутиш уÑули Hibernate Уйқуга кетиш уÑули A&utostart Ð&вто ишга тушиш &Hide qshutdown at startup qshutdown ишга тушганда &Ñшириш Lock screen &for suspend and hibernate Кутиш ва уйқуга кетиш уÑули &учун Ñкранни қулфлаш &Edit configuration file МоÑлаш файлини &ўзгартириш Enable the minute &countdown at startup Ушбу дақиқа ва &теÑкари ҳиÑоб вақти ишга туширилганда ёқилÑин &Reset settings МоÑлашларни &тиклаш Size for log file in KB Маълумот файлининг КБлардаги ҳажми "&Lock after start?" "Ишга тушганда &қулфланÑинми?" "&Warnings on?" "&ОгоҳлантирилÑинми?" Log start time of qshutdown and how long it was running qshutdown'нинг ишга тушиш вақти ва қанча вақт ишлаганини журналга қўшиш L&ogging Л&оглаш checkboxes and "now!" button байроқча ва "Ҳозир!" тугмаÑи OK and Minimize buttons ОК ва тугмаларни йиғиш Labels for example Ðамуна учун ёрлиқлар Set a font Шрифт ўрнатиш What target time should be displayed by default at startup? Стандарт ҳолатда ишга тушганда, қанча мўлжал вақт кўриниши керак? How many minutes should be displayed for countdown by default at startup? Стандарт ҳолатда ишга тушганда, теÑкари вақт ҳиÑоби учун қанча дақиқа кўриниши керак? What should be displayed first by default at startup? Стандарт ҳолатда ишга тушганда, биринчи нима кўриниши керак? Set if the checkbox for "Lock after start?" should be checked by default at startup Ðгарда байроқча "Ишга тушгандан Ñўнг қулфланÑинми?" учун ўрнатилган бўлÑа, Ñтандарт ҳолатда ишга тушган вақтда текширилади Set if the checkbox for "Warnings on?" should be checked by default at startup Ðгарда байроқча "Огоҳлантиришлар ёқилÑинми?" учун ўрнатилган бўлÑа, Ñтандарт ҳолатда ишга тушган вақтда текширилади The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. Одатда Ñшириш тугмаÑи аÑоÑий ойнани Ñширади. Яширишни ўчириш - qshutdown'дан тўғридан-тўғри чиқиб кетиш деганидир. General Умумий Advanced Қўшимча Suspend method: Кутиш уÑули: automatic автоматик user defined аниқ фойдаланувчи Hibernate method: Уйқуга кетиш уÑули: Shutdown method: Ўчириш уÑули: Reboot method: Ўчириб-ёқиш уÑули: Please input an user specified command for suspend here Марҳамат, кутиш уÑулига ўтиш учун бу ерга фойдаланувчи кўрÑатган буйруқни киритинг Gnome session Gnome ÑеанÑи KDE session KDE ÑеанÑи Please input an user specified command for shutdown here Марҳамат, ўчириш учун бу ерга фойдаланувчи кўрÑатган буйруқни киритинг Please input an user specified command for reboot here Марҳамат, ўчириб-ёқиш учун бу ерга фойдаланувчи кўрÑатган буйруқни киритинг Please input an user specified command for hibernate here Марҳамат, уйқуга кетиш учун бу ерга фойдаланувчи кўрÑатган буйруқни киритинг Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Баъзи тизим блокланган, маÑалан, ўчириш, чунки qshutdown ҳалигача ишламоқда. Ðгар теÑкари ҳиÑоб тугагандан Ñўнг qshutdown`дан чиқиш керак бўлÑа, унга "тўғри" белгиÑини белгиланг. Quit qshutdown after countdown ended? ТеÑкари ҳиÑоб вақти тугаганда qshutdown даÑтуридан чиқилÑинми? &Start countdown at startup ТеÑкари ҳиÑоб вақтини тизим юкланганда &ишга тушириш Hide qshutdown at startup if "Start countdown" is checked. "ТеÑкари ҳиÑоб вақти ишга тушганда" текширилÑа, qshutdown ишга тушиш вақтида ÑширилÑин. The File "%1" is not writable! Maybe you just don't have the permissions to do so. Файл "%1" ёзиб бўлмайди! Балки, Ñизга ўзгартиришга рухÑат берилмагандир. Error Please read this carefully! Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-zh_CN.ts000066400000000000000000000725031515201227200276620ustar00rootroot00000000000000 About About qshutdown 关于 qshutdown Version 版本 &About 关于(&A) &Thanks To 感谢(&T) <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">使用 Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p>qshutdown,一款基于时间和倒计时的关机工具</p><p>作者:Christian Metscher &lt;hakaishi@web.de&gt;</p><p>ç‰ˆæƒæ‰€æœ‰ &copy; 2010-2023, Christian Metscher</p><p><a href="https://launchpad.net/~hakaishi"> <span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p>请使用 <a href="https://bugs.launchpad.net/qt-shutdown-p"> <span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> 或 <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> æ¥æŠ¥å‘Šæ•…éšœã€‚</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> <p >特别感谢::<br /></p><p >Fabian Deuchler 在个方é¢çš„帮助。<br /><br />ä»¥åŠ Brian Nelson å’Œ Dr. Tobias Quathamer 赞助上传至 Debian。<br /><br />ä»¥åŠ Miquel Banchs i Piqué for 实施å…许在一周中的æ¯ä¸€å¤©è¿›è¡Œè‡ªå®šä¹‰è®¾ç½®ä¾‹ç¨‹çš„æƒ³æ³•。</p> Calendar Calendar 日历 Weekly æ¯å‘¨ activate weekly æ¯å‘¨æ¿€æ´» Please note that you might want to enable autostart and countdown at startup. 请注æ„,您å¯èƒ½å¸Œæœ›åœ¨å¯åŠ¨æ—¶å¯ç”¨è‡ªåЍå¯åŠ¨å’Œå€’è®¡æ—¶ã€‚ ChangePassword Change Password æ›´æ”¹å¯†ç  Retype password: å†è¾“入一次密ç ï¼š New password: 新密ç ï¼š Old password: 旧密ç ï¼š The current password is not correct! 当å‰å¯†ç ä¸æ­£ç¡®ï¼ The retyped password doesn't match! 釿–°è¾“入的密ç ä¸åŒ¹é…ï¼ Editor Editor 编辑器 Gui &Minimize! 最å°åŒ–(&M)ï¼ Shutdown-time: 关机时间: Minutes till shutdown: 离关机还剩时间(分钟): Reboot-time: é‡å¯æ—¶é—´ï¼š Minutes till reboot: 离é‡å¯è¿˜æœ‰æ—¶é—´(分钟): Suspend-time: 挂起时间: Minutes till suspend: 离挂起还有(分钟): Hibernate-time: 休眠时间: Minutes till hibernate: 离休眠还有(分钟): shutdown in 关机倒计时 reboot in é‡å¯å€’计时 suspend in 挂起倒计时 hibernate in 休眠倒计时 years å¹´ months 月 hours å°æ—¶ days 天 Res&tore æ¢å¤(&T) &Minimize 最å°åŒ–(&M) day 天 minutes 分 seconds ç§’ Shutdown 关机 Reboot é‡å¯ Suspend 挂起 Hibernate 休眠 &Lock after start? å¯åЍåŽé”定(&L)? &Warnings on? å¼€å¯è­¦å‘Š(&W)? &Now! 现在(&N)ï¼ You can set a date in the calendar 您å¯ä»¥åœ¨æ—¥åŽ†ä¸­è®¾ç½®ä¸€ä¸ªæ—¥æœŸ &OK 确定(&O) R&eset é‡ç½®(&E) &Quit 退出(&Q) &Info ä¿¡æ¯(&I) &Logfile 日志文件(&L) &Preferences 首选项(&P) &Shutdown 关机(&S) &Reboot é‡å¯(&R) S&uspend 挂起(&U) &Hibernate 休眠(&H) Lock settings after countdown started 倒计时开始åŽé”定设置 Calendar 日历 &File 文件(&F) &Help 帮助(&H) &Settings 设置(&S) &About 关于(&A) &Reset é‡ç½®(&R) &Configure é…ç½®(&C) &Keep proportions ä¿æŒçª—å£å°ºå¯¸æ¯”例(&K) Warning 警告 Action imminent! å³å°†æ‰§è¡Œï¼ Information ä¿¡æ¯ Countdown is not running! 倒计时没有è¿è¡Œï¼ Turns on/off all warnings å¼€å¯/关闭所有警告 About &Qt 关于 Qt(&Q) Version 版本 Info Info ä¿¡æ¯ PassWord Password å¯†ç  &Set password 设置密ç (&S) Password: 密ç ï¼š The password is not correct! 密ç ä¸æ­£ç¡®ï¼ &Change password 更改密ç (&C) Preferences Preferences 首选项 Enable the &target time at startup å¯åŠ¨æ—¶å¯ç”¨ç›®æ ‡æ—¶é—´(&T) Shutdown 关机 Shutdown type: 关机类型: Target time: 目标时间: Minutes to countdown: 倒计时(分钟): Font: 字体: Font size 1: å­—å· 1: Font size 2: å­—å· 2: Font size 3: å­—å· 3: Size for log file: 日志文件大å°ï¼š Reboot é‡å¯ Suspend 挂起 Hibernate 休眠 A&utostart 自动å¯åЍ(&U) &Hide qshutdown at startup å¯åЍåŽéšè— qshutdown (&H) Lock screen &for suspend and hibernate 挂起和休眠期间é”å±(&F) &Edit configuration file 编辑é…置文件(&E) Enable the minute &countdown at startup å¯åŠ¨æ—¶å¼€å¯åˆ†é’Ÿå€’计时(&C) &Reset settings é‡ç½®è®¾ç½®(&R) Size for log file in KB 日志文件大å°(å•ä½ï¼šKB) "&Lock after start?" “å¯åŠ¨æ—¶é”定(&L)?†"&Warnings on?" “开å¯è­¦å‘Š(&W)?†Log start time of qshutdown and how long it was running 记录 qshutdown çš„å¯åŠ¨æ—¶åˆ»å’Œå®ƒçš„è¿è¡Œæ—¶é—´ L&ogging 日志(&O) checkboxes and "now!" button å¤é€‰æ¡†å’Œâ€œçŽ°åœ¨ï¼â€æŒ‰é’® OK and Minimize buttons 确认和最å°åŒ–按钮 Labels for example 如标签(Label) Set a font 设置字体 What target time should be displayed by default at startup? å¯åŠ¨æ—¶é»˜è®¤æ˜¾ç¤ºä»€ä¹ˆç›®æ ‡æ—¶é—´ï¼Ÿ How many minutes should be displayed for countdown by default at startup? å¯åŠ¨æ—¶é»˜è®¤æ˜¾ç¤ºå‡ åˆ†é’Ÿçš„å€’è®¡æ—¶ï¼Ÿ What should be displayed first by default at startup? å¯åŠ¨æ—¶é»˜è®¤æ˜¾ç¤ºä»€ä¹ˆï¼Ÿ Set if the checkbox for "Lock after start?" should be checked by default at startup 设置在å¯åŠ¨æ—¶æ˜¯å¦é»˜è®¤é€‰ä¸­ “å¯åЍåŽé”定?â€å¤é€‰æ¡† Set if the checkbox for "Warnings on?" should be checked by default at startup 设置å¯åŠ¨æ—¶æ˜¯å¦é»˜è®¤é€‰ä¸­ “开å¯è­¦å‘Šï¼Ÿâ€å¤é€‰æ¡† The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. 点击关闭按钮通常会关闭主窗å£ã€‚ ç¦ç”¨éšè—则会退出 qshutdown。 General 常规 Advanced 高级 Suspend method: 挂起方å¼ï¼š automatic 自动 user defined 用户定义 Hibernate method: 休眠方å¼ï¼š Shutdown method: 关机方å¼ï¼š Reboot method: é‡å¯æ–¹å¼ï¼š Please input an user specified command for suspend here 请在这里输入一个用户指定的“挂起â€å‘½ä»¤ Gnome session Gnome ä¼šè¯ KDE session KDE ä¼šè¯ Please input an user specified command for shutdown here 请在这里输入一个用户指定的“关机â€å‘½ä»¤ Please input an user specified command for reboot here 请在这里输入一个用户指定的“é‡å¯â€å‘½ä»¤ Please input an user specified command for hibernate here 请在这里输入一个用户指定的“休眠â€å‘½ä»¤ Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. 有些系统会阻止关机等æ“作,因为 qshutdown 还 在è¿è¡Œã€‚å¦‚æžœéœ€è¦ qshutdown åœ¨å€’è®¡æ—¶ç»“æŸæ—¶ 退出,设置一个钩å­(hook)。 Quit qshutdown after countdown ended? å€’è®¡æ—¶ç»“æŸæ—¶é€€å‡º qshutdown? &Start countdown at startup å¯åŠ¨æ—¶å¼€å¯å€’计时(&S) Hide qshutdown at startup if "Start countdown" is checked. 若选择了“å¯åŠ¨å€’è®¡æ—¶â€åˆ™ 在å¯åŠ¨æ—¶éšè— qshutdown。 The File "%1" is not writable! Maybe you just don't have the permissions to do so. 文件“%1â€ä¸å¯å†™ï¼ 您也许没有写æƒé™ã€‚ Error 错误 Please read this carefully! è¯·ä»”ç»†é˜…è¯»ï¼ Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. ç¦ç”¨æ‰˜ç›˜å›¾æ ‡æ„味ç€å°†æ— æ³•å†ä»Žæ‰˜ç›˜æ¢å¤ qshutdown。 è¯·è€ƒè™‘æ£€æŸ¥â€œå…³é—­ä¸»çª—å£æ—¶é€€å‡ºâ€å’Œâ€œå¯åŠ¨æ—¶éšè— qshutdownâ€ã€‚ 如果 qshutdown ä»åœ¨è¿è¡Œå¹¶ä¸”æ‚¨å¸Œæœ›å®ƒé‡æ–°å‡ºçŽ°ï¼Œé‚£ä¹ˆåªéœ€ 冿¬¡æ‰§è¡Œ qshutdown ï¼Œå°±åƒæ‚¨å¹³æ—¶ä¸€æ ·ã€‚å®ƒå°†å†æ¬¡å‡ºçŽ°ã€‚ Disable tray &icon ç¦ç”¨æ‰˜ç›˜å›¾æ ‡(&I) &Quit on closing main window å…³é—­ä¸»çª—å£æ—¶é€€å‡º(&Q) QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> 在剩余ä¸åˆ° 70 秒时,qshutdown 会显示 3 次。<br/><br/>该程åºä½¿ç”¨ qdbus æ¥å‘ gnome- 或 kde-session-manager 或 HAL/ConsoleKit/DeviceKit/UPower å‘é€ å…³æœº/é‡å¯/挂起/休眠 请求。如果都ä¸è¡Œï¼Œåˆ™ä½¿ç”¨â€œsudo shutdownâ€å‘½ä»¤(注æ„ï¼Œåœ¨å‘ HAL 或 ConsoleKit å‘é€è¯·æ±‚,或使用 shutdown 命令时,会è¯å°†ä¸èƒ½ä¿å­˜ã€‚ 使用 shutdown 命令时,程åºåªèƒ½å…³æœºæˆ–é‡å¯)。因此,如果关机或é‡å¯æ—¶é—´åˆ°äº†ï¼Œå´æ²¡æœ‰åŠ¨ä½œï¼Œè¯´æ˜Žç”¨æˆ·æ²¡æœ‰æ‰§è¡Œ shutdown 命令的æƒé™ã€‚è¿™ç§æƒ…况下,用户å¯ä»¥è¿™æ ·åšï¼š<br/><br/>将以下命令粘贴到终端中:<pre>EDITOR=nano sudo -E visudo</pre>添加这一行命令<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>其中 * ç”¨ç”¨æˆ·åæˆ– %group åæ›¿æ¢ã€‚<br/><br/>关机倒计时最多 1440 分钟(24 å°æ—¶)。<br/>é…置文件ä½äºŽ <i>%1</i>。<br/>日志文件ä½äºŽ%2<br/><br/><b>对于管ç†å‘˜ï¼š</b><br/>如果您想让æ¯ä½ç”¨æˆ·ä»¥å¸¦â€œå®¶é•¿æŽ§åˆ¶â€çš„æ–¹å¼è¿è¡Œ qshutdown,您å¯ä»¥æ‰§è¡Œâ€œsudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/â€å¹¶å°† ini 中的 Lock_all 选项设为 trueã€‚æ³¨æ„ qshutdown å¿…é¡»å¯åŠ¨ä¸€æ¬¡æ¥ç”Ÿæˆ qshutdown 设置文件。å¦å¤–还需è¦å‘ sudoers 中添加一行(和上é¢ä¸€æ ·):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>如果您ä¸å°å¿ƒå¿˜è®°äº†è‡ªå·±è®¾ç½®çš„密ç ï¼Œä»Ž qshutdown 设置中删除带有“Passwordâ€çš„那一行å³å¯ã€‚<br/><br/><b>用法æç¤ºï¼š</b><br/>å¦‚æžœæ‚¨ä¸æƒ³è®© qshutdown â€œéªšæ‰°â€æ‚¨ï¼Œåªéœ€ä»Žâ€œå¼€å¯è­¦å‘Šï¼Ÿâ€ä¸­ç§»é™¤è¿™ä¸ªé’©å­ã€‚è¦ä½¿å…¶æ°¸ä¹…存在,åªéœ€åœ¨é¦–选项中执行相åŒçš„æ“ä½œã€‚<br/><br/><b>å¿«æ·é”®ï¼š</b><table border=\"1\"><tr><td>Ctrl+I</td><td>(这个)ä¿¡æ¯çª—å£</td></tr><tr><td>Ctrl+Q</td><td>退出</td></tr><tr><td>Ctrl+P</td><td>首选项</td></tr><tr><td>Ctrl+L</td><td>å°†è¿è¡Œæ—¶é—´å†™å…¥æ—¥å¿—文件一次(åªæœ‰ qshutdown é€€å‡ºæ‰æœ‰æ•ˆã€‚想永久设置请在首选项中修改。)</td></tr><tr><td>Ctrl+S</td><td>设置为关机</td></tr><tr><td>Ctrl+R</td><td>设置为é‡å¯</td></tr><tr><td>Ctrl+U</td><td>设置为挂起到内存</td></tr><tr><td>Ctrl+H</td><td>设置为休眠</td></tr><tr><td>Ctrl+E</td><td>åœæ­¢å€’计时(åªæœ‰å€’计时已å¯åŠ¨ä¸”ç®¡ç†å‘˜æœªä½œé™åˆ¶æ—¶æ‰æœ‰æ•ˆ)</td></tr><tr><td>Shift+E</td><td>编辑é…置文件(这需è¦ä¸€ä¸ªå¯†ç ã€‚å¦‚æžœåªæœ‰æ‚¨ä¸€ä½ç”¨æˆ·ï¼Œæ‚¨å¯ä»¥è®¾ç½®ä¸€ä¸ªâ€œç©ºå¯†ç â€(密ç å­—段ä¸å¡«))。</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. 欢迎使用 qshutdownï¼ å¦‚æžœæ‚¨æƒ³è¦ä½¿ç”¨ qshutdown,例如关闭系统,并且您正在使用 Gnome Shell,那么您å¯èƒ½ä¼šä»Žé‚£é‡Œå¾—åˆ°ä¸€ä¸ªå…³é—­å¯¹è¯æ¡†ã€‚如果您想è¦ç›´æŽ¥å…³æœºï¼Œé‚£ä¹ˆè¯·è€ƒè™‘进入首选项并将关机方法设置为 ConsoleKit 或其他方å¼ã€‚ æ¬¢è¿Žéšæ—¶è®¿é—® https://launchpad.net/~hakaishi 报告错误或æäº¤æœ‰å…³ç¿»è¯‘的信æ¯ã€‚ 设置文件ä½äºŽ %1。 有关更多详情,请å‚è§ä¿¡æ¯çª—å£ã€‚ hakaishi-shutdown-qapps-543a9ee/qshutdown/src/translations/qshutdown-zh_TW.ts000066400000000000000000000631101515201227200277060ustar00rootroot00000000000000 About About qshutdown 關於qshutdown Version 版本 &About 關於(&A) &Thanks To 感è¬(&T) <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">使用 Qt</span></p> <p >qshutdown, a time and countdown based shutdown tool</p><p >Author: Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >Please use <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> to report bugs.</p> <p >qshutdown是一種以時間倒數機制的關機工具</p><p >作者:Christian Metscher &lt;hakaishi@web.de&gt;</p><p >Copyright &copy; 2010-2023, by Christian Metscher</p><p ><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p><p >請使用 <a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a> or <a href="http://www.debian.org/Bugs/Reporting"><span style=" text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a> 來回報臭蟲。</p> <p >Special thanks to:<br /></p><p >Fabian Deuchler for helping here and there.<br /><br />And Brian Nelson & Dr. Tobias Quathamer for sponsoring the uploads to Debian.<br /><br />As well as to Miquel Banchs i Piqué for the idea of implementing a routine allowing custom settings for each day of the week.</p> Calendar Calendar 行事曆 Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. ChangePassword Change Password 變更密碼 Retype password: 釿–°è¼¸å…¥å¯†ç¢¼ï¼š New password: 新的密碼: Old password: 舊的密碼: The current password is not correct! ç•¶å‰çš„å¯†ç¢¼ä¸æ­£ç¢º! The retyped password doesn't match! 釿–°å˜—è©¦å¾Œçš„å¯†ç¢¼ä¸æ­£ç¢º! Editor Editor 編輯器 Gui &Minimize! &最å°åŒ–! Shutdown-time: 關機時間: Minutes till shutdown: 分é˜ç›´åˆ°é—œæ©Ÿï¼š Reboot-time: 釿–°é–‹æ©Ÿæ™‚間: Minutes till reboot: 分é˜ç›´åˆ°é‡æ–°é–‹æ©Ÿï¼š Suspend-time: æš«åœæ™‚間: Minutes till suspend: 分é˜ç›´åˆ°æš«åœï¼š Hibernate-time: 休眠時間: Minutes till hibernate: 分é˜ç›´åˆ°ä¼‘眠: shutdown in 關機時間 reboot in é‡é–‹æ©Ÿæ™‚é–“ suspend in æš«åœæ™‚é–“ hibernate in 休眠時間 years å¹´ months 月 hours 時 days æ—¥ Res&tore æ¢å¾©(&T) &Minimize 最å°åŒ–(&M) day æ—¥ minutes 分 seconds ç§’ Shutdown 關機 Reboot 釿–°é–‹æ©Ÿ Suspend æš«åœ Hibernate 休眠 &Lock after start? 鎖定後開始?(&L) &Warnings on? 警告(&W)? &Now! ç¾åœ¨(&N)! You can set a date in the calendar 您å¯ä»¥åœ¨è¡Œäº‹æ›†è£¡è¨­å®šä¸€å€‹æ—¥æœŸ &OK 確定(&O) R&eset é‡ç½®(&E) &Quit çµæŸ(&Q) &Info 訊æ¯(&I) &Logfile 紀錄檔(&L) &Preferences å好設定(&P) &Shutdown 關機(&S) &Reboot 釿–°é–‹æ©Ÿ(&R) S&uspend æš«åœ(&U) &Hibernate 休眠(&H) Lock settings after countdown started 在開始到數時計時後鎖ä½è¨­å®š Calendar 行事曆 &File 檔案(&F) &Help 幫助(&H) &Settings 設定(&S) &About 關於(&A) &Reset é‡ç½®(&R) &Configure 設定(&C) &Keep proportions ä¿æŒæ¯”例(&K) Warning 警告 Action imminent! å³å°‡ç™¼ç”Ÿçš„動作! Information ä¿¡æ¯ Countdown is not running! 倒數計時沒有執行! Turns on/off all warnings 開啟或關閉所有警告 About &Qt 關於 &Qt Version 版本 Info Info ä¿¡æ¯ PassWord Password 密碼 &Set password 設定密碼(&S) Password: 密碼: The password is not correct! å¯†ç¢¼ä¸æ­£ç¢º! &Change password 變更密碼(&C) Preferences Preferences å好設定 Enable the &target time at startup 在啟動時啟用這個目標時間 Shutdown 關機 Shutdown type: 關機類型: Target time: 目標時間: Minutes to countdown: 倒數計時的分é˜ï¼š Font: 字型: Font size 1: 字型大å°1: Font size 2: 字型大å°2: Font size 3: 字型大å°3: Size for log file: 紀錄檔的大å°é™åˆ¶ Reboot 釿–°é–‹æ©Ÿ Suspend æš«åœ Hibernate 休眠 A&utostart 自動開始(&A) &Hide qshutdown at startup 在啟動後隱è—qshutdown(&H) Lock screen &for suspend and hibernate å°æ–¼æš«åœå’Œä¼‘眠鎖ä½èž¢å¹•(&F) &Edit configuration file 編輯設定檔(&E) Enable the minute &countdown at startup 在啟動後啟用分的倒數計時(&C) &Reset settings 釿–°è¨­å®š(&R) Size for log file in KB 紀錄檔案的大å°(KB) "&Lock after start?" "在開始後鎖定(&L)?" "&Warnings on?" "警告(&W)?" Log start time of qshutdown and how long it was running qshutdown的紀錄開始時間和多久 它被é‹è¡Œ L&ogging 紀錄中(&L) checkboxes and "now!" button ã€Žé¸æ“‡æ¡†ã€å’Œã€Žç¾åœ¨ï¼ã€çš„æŒ‰éˆ• OK and Minimize buttons 『確定ã€å’Œã€Žæœ€å°åŒ–ã€çš„æŒ‰éˆ• Labels for example 範例標籤 Set a font 設定字型 What target time should be displayed by default at startup? 什麼樣的目標時間會被顯示 é»˜èªæƒ…æ³ä¸‹çš„啟動? How many minutes should be displayed for countdown by default at startup? æœ‰å¤šå°‘åˆ†é˜æœƒè¢«é¡¯ç¤º å°æ–¼é»˜èªæƒ…æ³ä¸‹å•Ÿå‹•的倒數計時? What should be displayed first by default at startup? 什麼是會第一個顯示 é»˜èªæƒ…æ³ä¸‹å•Ÿå‹•? Set if the checkbox for "Lock after start?" should be checked by default at startup è¨­å®šå¦‚æžœã€Žé¸æ“‡æ¡†ã€æœ‰é¸æ“‡"在啟動後鎖定?" 將在啟動的默èªä¸‹æª¢æŸ¥ Set if the checkbox for "Warnings on?" should be checked by default at startup è¨­å®šå¦‚æžœé€™å€‹ã€Žé¸æ“‡æ¡†ã€æœ‰é¸æ“‡"警告"? 將會檢查啟動下的é è¨­å€¼ The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. 關閉的按鈕平常隱è—主è¦çš„視窗. ç¦æ­¢éš±è—的方法,然後qshutdown會用退出來替代。 General 一般 Advanced 進階 Suspend method: æš«åœæ–¹æ³•: automatic 自動 user defined 使用者自訂 Hibernate method: 休眠方法: Shutdown method: 關機方法: Reboot method: 釿–°é–‹æ©Ÿæ–¹æ³•: Please input an user specified command for suspend here è«‹åœ¨é€™è£¡å°æ–¼ã€Žæš«åœã€è¼¸å…¥ä½¿ç”¨è€…特定的指令 Gnome session Gnome session KDE session KDE session Please input an user specified command for shutdown here è«‹åœ¨é€™è£¡å°æ–¼ã€Žé—œæ©Ÿã€è¼¸å…¥ä½¿ç”¨è€…特定的指令 Please input an user specified command for reboot here è«‹åœ¨é€™è£¡å°æ–¼ã€Žé‡æ–°é–‹æ©Ÿã€è¼¸å…¥ä½¿ç”¨è€…特定的指令 Please input an user specified command for hibernate here è«‹åœ¨é€™è£¡å°æ–¼ã€Žä¼‘眠ã€è¼¸å…¥ä½¿ç”¨è€…特定的指令 Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. 有些系統å€å¡Šé‡å°é—œæ©Ÿçš„範例 因為qshutdownç›®å‰ä»ç„¶åœ¨åŸ·è¡Œä¸­ã€‚設定一個監控,當 qshutdownå°‡åœ¨å€’æ•¸è¨ˆæ™‚çµæŸå¾Œé—œé–‰ã€‚ Quit qshutdown after countdown ended? åœ¨å€’æ•¸è¨ˆæ™‚çµæŸå¾Œé—œé–‰qshutdown? &Start countdown at startup 在啟動後開始倒數計時&(S) Hide qshutdown at startup if "Start countdown" is checked. 在啟動後隱è—qshutdown,如果 已經檢查éŽ"開始倒數計時"。 The File "%1" is not writable! Maybe you just don't have the permissions to do so. 這個檔案 "%1" æ²’æœ‰è¾¦æ³•å¯«å…¥ï¼ å¯èƒ½æ‚¨æ²’有寫入的權é™ã€‚ Error 錯誤 Please read this carefully! è«‹ä»”ç´°çš„é–±è®€ï¼ Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon &Quit on closing main window QObject qshutdown will show itself 3 times as a warning if there are less than 70 seconds left.<br/><br/>This program uses qdbus to send a shutdown/reboot/suspend/hibernate request to either the gnome- or kde-session-manager, to HAL/ConsoleKit/DeviceKit/UPower and if none of these works, the command 'sudo shutdown' will be used (note that when sending the shutdown request to HAL or ConsoleKit, or the shutdown command is used, the Session will never be saved. If the shutdown command is used, the program will only be able to shutdown and reboot). So if nothing happens when the shutdown- or reboot-time is reached, it means that one lacks the rights for the shutdown command. In this case one can do the following:<br/><br/>Paste the following in a terminal:<pre>EDITOR=nano sudo -E visudo</pre>and add this line:<pre>* ALL = NOPASSWD:/sbin/shutdown</pre>whereas * replaces the user name or %group name.<br/><br/>The maximum Number of countdown_minutes is 1440 (24 hours).<br/>The configuration file is located at <i>%1</i>.<br/>The log file is located at <i>%2</i><br/><br/><b>For admins:</b><br/>If you want qshutdown to run with "parental lock" for every user, you can do "sudo cp /usr/share/qshutdown/autostart/99qshutdown /etc/X11/Xsession.d/" and set the option Lock_all in the ini file to true. Note that qshutdown has to start once to generate the qshutdown settings file. Furthermore there is a need to add the following line to the sudoers (as above):<pre>* ALL = NOPASSWD:/usr/bin/qshutdown</pre><br/>If you should ever forget your set password, just remove the whole line starting with "Password" manually from the qshutdown settings.<br/><br/><b>Hints on usage:</b><br/>If you want qshutdown to stop "bugging" you, just remove the hook from "warnings on?".To make that permanent, just do the same in the preferences.<br/><br/><b>Hotkeys:</b><table border="1"><tr><td>Ctrl+I</td><td>(this) information window</td></tr><tr><td>Ctrl+Q</td><td>Quit</td></tr><tr><td>Ctrl+P</td><td>Preferences</td></tr><tr><td>Ctrl+L</td><td>write the run time once into the logfile (works only if qshutdown quits. To make it permanent set it in the preferences.)</td></tr><tr><td>Ctrl+S</td><td>set to shutdown</td></tr><tr><td>Ctrl+R</td><td>set to restart</td></tr><tr><td>Ctrl+U</td><td>set to suspend to RAM</td></tr><tr><td>Ctrl+H</td><td>set to hibernate</td></tr><tr><td>Ctrl+E</td><td>stop countdown (only if the countdown has started and the admin didn't restrict the access)</td></tr><tr><td>Shift+E</td><td>to edit the configuration file (for this a password is necessary. If you are a user, you can set an "empty password" (leave the password field empty)).</td></tr></table> Welcome to qshutdown! If you want qshutdown e.g. to shutdown the system and you are using the Gnome Shell, then you are likely to get a shutdown dialog from there. If you want a direct shutdown, then please consider going into the preferences and setting the shutdown method to ConsoleKit or something else. Please feel free to visit https://launchpad.net/~hakaishi to report bugs or for anything concerning translations. The settings file is located at %1. For further information see the info window. hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/000077500000000000000000000000001515201227200221445ustar00rootroot00000000000000hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/about.ui000066400000000000000000000221511515201227200236160ustar00rootroot00000000000000 About 0 0 425 424 About qshutdown :/red_glasses:/red_glasses Qt::Horizontal QDialogButtonBox::Close 60 60 0 0 0 &About true QFrame::NoFrame QFrame::Plain <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">qshutdown, a time and countdown based shutdown tool</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Author: Christian Metscher &lt;hakaishi@web.de&gt;</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Copyright © 2010-2020, by Christian Metscher</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><a href="https://launchpad.net/~hakaishi"><span style=" text-decoration: underline; color:#0000ff;">https://launchpad.net/~hakaishi</span></a></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">Please use </span><a href="https://bugs.launchpad.net/qt-shutdown-p"><span style=" font-size:11pt; text-decoration: underline; color:#0000ff;">https://bugs.launchpad.net/qt-shutdown-p</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">or </span><a href="http://www.debian.org/Bugs/Reporting"><span style=" font-size:11pt; text-decoration: underline; color:#0000ff;">http://www.debian.org/Bugs/Reporting</span></a></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-size:11pt;">to report bugs.</span></p></body></html> &Thanks To true QFrame::NoFrame QFrame::Plain <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Sans'; font-size:10pt; font-weight:400; font-style:normal;"> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Special thanks to:</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">Fabian Deuchler for helping here and there.</p> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><br /></p> <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;">And Brian Nelson for sponsoring the uploads to Debian.</p></body></html> 10 75 true Version x.x.x Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter QLabel { background: white } QFrame::StyledPanel <p ><span style=" font-size:20pt;">qshutdown</span><br /><span style=" font-size:14pt;">Using Qt</span></p> buttonBox rejected() About reject() 316 260 286 274 hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/calendar.ui000066400000000000000000000106031515201227200242540ustar00rootroot00000000000000 Calendar 0 0 325 360 Calendar :/red_glasses:/red_glasses Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok 0 Calendar Weekly activate weekly Please note that you might want to enable autostart and countdown at startup. true Qt::Horizontal true Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop 0 0 283 180 5 0 5 buttonBox accepted() Calendar close() 248 254 157 274 buttonBox rejected() Calendar close() 316 260 286 274 weekly toggled(bool) calendarWidget setDisabled(bool) 60 48 158 173 hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/ch_passwd.ui000066400000000000000000000060401515201227200244560ustar00rootroot00000000000000 ChangePassword 0 0 263 149 Change Password :/red_glasses:/red_glasses Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok Retype password: QLineEdit::Password QLineEdit::Password New password: false Old password: false QLineEdit::Password oldPasswd newPasswd retypedNewPasswd buttonBox buttonBox rejected() ChangePassword close() 316 260 286 274 ChangePassword rejected() ChangePassword close() 131 74 131 74 hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/editor.ui000066400000000000000000000025721515201227200237770ustar00rootroot00000000000000 Editor 0 0 423 402 Editor :/red_glasses:/red_glasses 0 10 10 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok|QDialogButtonBox::Save plainTextEdit buttonBox hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/gui.ui000066400000000000000000000430551515201227200232760ustar00rootroot00000000000000 Gui 0 0 330 354 'qshutdown' :/red_glasses:/red_glasses 0 0 QFrame::Panel QFrame::Raised 3 0 0 QFrame::Box QFrame::Sunken 1 6 6 6 6 2 2 Minutes till shutdown: false 1 1 1998 12 31 Qt::LocalTime 1 1 1 1440 1 1 2 2 Shutdown-time: 1 1 Qt::RightToLeft true 1 1 Qt::RightToLeft true 2 2 QComboBox::AdjustToContentsOnFirstShow Shutdown Reboot Suspend Hibernate 1 1 You can set a date in the calendar Calendar 0 0 Lock settings after countdown started &Lock after start? 15 0 Qt::Horizontal 40 45 0 0 0 30 minutes 0 0 2 4 QLCDNumber::Flat 0.000000000000000 15 0 0 1 &OK true false Qt::Horizontal QSizePolicy::Preferred 40 10 Qt::Horizontal QSizePolicy::Preferred 40 10 Qt::Horizontal QSizePolicy::Preferred 40 10 0 0 &Now! true 0 0 330 24 &File &Help &Settings &Quit &Info &About &Preferences &Settings false &Reset true &Logfile &Configure true true &Keep proportions About &Qt ok lock comboBox toolButton radio1 timeEdit radio2 spin now timeEdit editingFinished() ok setFocus() 255 101 162 271 spin editingFinished() ok setFocus() 255 135 162 271 radio2 toggled(bool) spin setEnabled(bool) 198 135 255 135 radio1 toggled(bool) timeEdit setEnabled(bool) 198 101 255 101 hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/passwd.ui000066400000000000000000000047011515201227200240060ustar00rootroot00000000000000 PassWord 0 0 265 114 Password :/red_glasses:/red_glasses QDialogButtonBox::Cancel|QDialogButtonBox::Ok &Set password false false Password: false QLineEdit::Password passwdLineEdit changePasswdButton buttonBox buttonBox rejected() PassWord close() 173 142 170 92 PassWord rejected() PassWord close() 132 56 132 56 hakaishi-shutdown-qapps-543a9ee/qshutdown/src/ui/preferences.ui000066400000000000000000000663401515201227200250150ustar00rootroot00000000000000 Preferences 0 0 430 655 Preferences :/red_glasses:/red_glasses &Edit configuration file Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok Qt::Vertical QSizePolicy::Minimum 20 20 0 0 &Reset settings 0 General true Qt::AlignCenter 0 0 400 588 0 0 6 0 0 0 0 0 2 Shutdown type: Qt::LeftToRight Target time: Minutes to countdown: Font: Font size 1: Font size 2: Font size 3: Size for log file: What target time should be displayed by default at startup? How many minutes should be displayed for countdown by default at startup? 1 1440 1 1 0 0 Set a font Liberation Serif Labels for example 6 OK and Minimize buttons 6 checkboxes and "now!" button 6 6 true Size for log file in KB 1 1.000000000000000 0.100000000000000 0 0 What should be displayed first by default at startup? QComboBox::AdjustToContentsOnFirstShow Shutdown Reboot Suspend Hibernate 4 Disabling the tray icon means that it is no longer possible to restore qshutdown from tray. Please consider also checking "Quit on closing main window" and "Hide qshutdown at startup". If qshutdown is still running and you want it to reappear, then just execute qshutdown again, just as you normally would. It will thus reappear. Disable tray &icon The close button usually hides the main window. Disabling hiding means, that qshutdown will then quit instead. &Quit on closing main window Remember last settings for the next program start. R&emember last settings Enable the &target time at startup true Enable the minute &countdown at startup A&utostart Set if the checkbox for "Lock after start?" should be checked by default at startup "&Lock after start?" Set if the checkbox for "Warnings on?" should be checked by default at startup &Warn before end of countdown &Remind me when countdown is not running &Start countdown at startup false Hide qshutdown at startup if "Start countdown" is checked. &Hide qshutdown at startup Log start time of qshutdown and how long it was running L&ogging Lock screen &for suspend and hibernate Advanced Some systems block for example the shutdown because qshutdown is still running. Set a hook if qshutdown should quit after the countdown ended. Quit qshutdown after countdown ended? true 0 0 367 530 Shutdown method: automatic login1 Gnome session KDE session HAL ConsoleKit sudo shutdown -P user defined Reboot method: automatic login1 Gnome session KDE session HAL ConsoleKit sudo shutdown -r user defined Suspend method: automatic login1 Gnome session HAL UPower DeviceKit user defined Hibernate method: automatic login1 Gnome session HAL UPower DeviceKit user defined false Qt::ScrollBarAlwaysOff false false false tabWidget scrollArea comboBox timeEdit spin fontComboBox font1Spin font2Spin font3Spin spinBox disableTray quitOnCloseMain rememberOnClose radio1 radio2 autostart lock warn remindCndPop countdown hideMe log lockS scrollArea_2 shutdownM rebootM suspendM hibernateM userDef1 userDef2 userDef3 userDef4 quitAfterCountdown reset confEditButton buttonBox rejected() Preferences close() 432 631 286 274 countdown toggled(bool) hideMe setEnabled(bool) 206 455 206 481 Preferences rejected() Preferences close() 206 341 206 341 buttonBox accepted() Preferences accept() 265 683 206 353 hakaishi-shutdown-qapps-543a9ee/qshutdown/src/weekday.cpp000066400000000000000000000024151515201227200236660ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "weekday.h" WeekDay::WeekDay(QWidget *parent) : QFrame(parent){ this->setFrameShape(QFrame::Panel); this->setFrameShadow(QFrame::Raised); dayL = new QHBoxLayout(this); dayL->setContentsMargins(0,0,0,0); label = new QLabel(this); h = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); spin = new QSpinBox(this); spin->setRange(0,5); dayL->addWidget(label); dayL->addItem(h); dayL->addWidget(spin); } WeekDay::~WeekDay(){;} hakaishi-shutdown-qapps-543a9ee/qshutdown/src/weekday.h000066400000000000000000000022551515201227200233350ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef WEEKDAY_H #define WEEKDAY_H #include #include #include #include #include #include class WeekDay : public QFrame{ Q_OBJECT public: WeekDay(QWidget *parent = 0); ~WeekDay(); QSpinBox *spin; QLabel *label; private: //QFrame *frame; QHBoxLayout *dayL; QSpacerItem *h; }; #endif //WEEKDAY_H hakaishi-shutdown-qapps-543a9ee/qshutdown/src/weekdayitem.cpp000066400000000000000000000035601515201227200245470ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #include "weekdayitem.h" #include WeekDayItem::WeekDayItem(QWidget *parent) : QWidget(parent){ itemL = new QHBoxLayout(this); itemL->setContentsMargins(0,0,0,0); h2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); timeEdit = new QTimeEdit(this); QString timeEditFormat = timeEdit->displayFormat(); if(timeEditFormat.contains(":ss")) timeEditFormat.replace(QString(":ss"), QString("")); if(timeEditFormat.contains(":s")) timeEditFormat.replace(QString(":s"), QString("")); timeEdit->setDisplayFormat(timeEditFormat); timeEdit->setTime(QTime(22,0,0)); comboBox = new QComboBox(this); comboBox->insertItems(0, QStringList() << QCoreApplication::translate("Gui", "Shutdown", 0) << QCoreApplication::translate("Gui", "Reboot", 0) << QCoreApplication::translate("Gui", "Suspend", 0) << QCoreApplication::translate("Gui", "Hibernate", 0) ); itemL->addItem(h2); itemL->addWidget(timeEdit); itemL->addWidget(comboBox); } WeekDayItem::~WeekDayItem(){;} hakaishi-shutdown-qapps-543a9ee/qshutdown/src/weekdayitem.h000066400000000000000000000022571515201227200242160ustar00rootroot00000000000000/* qshutdown, a program to shutdown/reboot/suspend/hibernate the system * Copyright (C) 2010-2023 Christian Metscher * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ #ifndef WEEKDAYITEM_H #define WEEKDAYITEM_H #include #include #include #include #include class WeekDayItem : public QWidget{ Q_OBJECT public: WeekDayItem(QWidget *parent = 0); ~WeekDayItem(); QTimeEdit *timeEdit; QComboBox *comboBox; private: QSpacerItem *h2; QHBoxLayout *itemL; }; #endif //WEEKDAYITEM_H hakaishi-shutdown-qapps-543a9ee/qshutdown/version.txt000066400000000000000000000000061515201227200231620ustar00rootroot000000000000001.8.0 hakaishi-shutdown-qapps-543a9ee/shutdown-qapps.pro000066400000000000000000000001161515201227200224210ustar00rootroot00000000000000TEMPLATE = subdirs CONFIG += ordered SUBDIRS = qprogram-starter qshutdownhakaishi-shutdown-qapps-543a9ee/version.txt000066400000000000000000000000061515201227200211260ustar00rootroot000000000000001.9.0