openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #23289
[Merge] lp:~trb143/openlp/remotea into lp:openlp
Tim Bentley has proposed merging lp:~trb143/openlp/remotea into lp:openlp.
Requested reviews:
Andreas Preikschat (googol)
For more details, see:
https://code.launchpad.net/~trb143/openlp/remotea/+merge/216557
Add icons to see the state of the remote (on / SSL / authentication)
Stop restarting the server as this crashes it and should not be common.
few code fixes.
more pep8
Add this to your merge proposal:
--------------------------------
lp:~trb143/openlp/remotea (revision 2368)
[SUCCESS] http://ci.openlp.org/job/Branch-01-Pull/361/
[SUCCESS] http://ci.openlp.org/job/Branch-02-Functional-Tests/318/
[SUCCESS] http://ci.openlp.org/job/Branch-03-Interface-Tests/265/
[SUCCESS] http://ci.openlp.org/job/Branch-04-Windows_Tests/227/
[SUCCESS] http://ci.openlp.org/job/Branch-05a-Code_Analysis/154/
[SUCCESS] http://ci.openlp.org/job/Branch-05b-Test_Coverage/29/
--
https://code.launchpad.net/~trb143/openlp/remotea/+merge/216557
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/core/resources.py'
--- openlp/core/resources.py 2013-12-31 22:27:27 +0000
+++ openlp/core/resources.py 2014-04-20 20:23:26 +0000
@@ -70979,6 +70979,158 @@
\xdb\xf2\x1f\x19\xe0\xc8\x3c\x37\xc3\x8f\xcb\x8f\xcb\xff\xa5\xe5\
\xff\x03\xf0\xa0\xef\xd9\x8c\x36\xd3\x0b\x00\x00\x00\x00\x49\x45\
\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x02\x41\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xff\x61\
+\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
+\xa7\x93\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x13\x00\x00\
+\x0b\x13\x01\x00\x9a\x9c\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\
+\xde\x04\x05\x10\x0b\x2c\xeb\xb4\x97\x55\x00\x00\x01\xce\x49\x44\
+\x41\x54\x38\xcb\x85\x92\xb1\x6e\x1a\x61\x10\x84\xbf\xdd\x3b\xc0\
+\x67\x0b\x14\x5b\x27\x50\x94\x22\x8a\xa2\x28\xf2\x03\xa0\xbc\x06\
+\xad\x3b\xdc\xd3\xb8\xf0\x23\x20\x21\xd9\x25\x0d\x55\xf2\x00\x2e\
+\xe8\x90\xb0\x62\x8a\x13\x65\x24\xca\x84\x26\x74\x8e\x03\x92\x4d\
+\x84\x39\x82\xc3\xbf\x29\x20\x48\x9c\xed\xb0\xdd\x3f\x9a\x9d\x7f\
+\x76\x77\x20\x51\x9d\x4e\x07\x80\x8b\x8b\x8b\xc3\x28\x8a\x4e\xbb\
+\xdd\xee\x69\xad\x56\x3b\x04\x88\xa2\x28\x49\x47\x78\xa2\x3a\x9d\
+\xce\xc7\xe9\x74\x5a\x9e\x4c\x26\x38\xe7\xc8\x66\xb3\x14\x0a\x85\
+\x4f\xc5\x62\xf1\x38\xc9\xd5\x24\xd0\x6e\xb7\x4f\x86\xc3\x61\x39\
+\x8e\xe3\xb3\xc1\x60\xe0\x57\xab\x55\x7f\x34\x1a\x9d\xf5\x7a\xbd\
+\x72\xbf\xdf\x3f\x61\x5b\xb5\x5a\xad\x9b\x46\xa3\x71\x95\xc4\xcf\
+\xcf\xcf\xaf\xa2\x28\xba\xd9\xea\x60\x3e\x9f\xe7\x67\xb3\xd9\x65\
+\xb3\xd9\x5c\x63\xf5\x7a\x1d\x55\xbd\x1c\x8f\xc7\xf9\xad\x02\x22\
+\x42\x18\x86\x56\x2a\x95\xd6\x58\xa5\x52\x21\x97\xcb\x99\x73\x8e\
+\x67\x05\xbe\x7e\x3e\x12\x00\xf1\x76\x08\x5f\xbe\x89\x93\xc4\xfd\
+\xfc\xeb\x78\x61\x3e\x00\x51\xf3\x58\x9e\xbc\xc2\xf5\x97\x23\xe3\
+\xee\x9b\xfd\xb8\x76\xf2\x73\x04\xe3\xbb\x29\xa2\x8e\x5c\x36\x20\
+\x5f\x50\x5e\xbd\x3b\xb0\x5b\x3e\xc8\xfb\x62\x6d\xdd\xe7\x6f\xd8\
+\xf1\x1e\xd8\xdd\xfb\x2e\xe1\x8b\x09\xf2\x00\x07\x01\x64\x32\x4a\
+\x90\x81\x5c\x08\xfb\x85\xb7\xf2\xeb\xd6\xdb\x70\xe6\x3f\x4e\x85\
+\x00\x06\x26\x38\x03\xcc\x61\x0e\xc0\x10\xec\x51\x74\x36\x97\x68\
+\x89\xc9\x56\x82\x22\x82\xe8\xf2\x9d\x4c\x9e\xbf\x79\x01\x50\x75\
+\x78\xb2\x40\x55\xf0\x00\x55\x41\x56\x8d\x82\x81\xd8\xf3\x02\x06\
+\x98\x29\x0b\xa7\x38\xa7\x2c\x0c\x9c\x03\x67\x06\x66\xcb\x1f\x12\
+\x1e\xfc\xe4\x0a\x44\x1c\x9e\x3a\x54\x1c\x9e\x2c\x1d\x78\x0a\xa2\
+\x2b\x07\xff\x1b\x41\x55\xf0\x3d\xf0\x3d\x23\xe5\x83\x2d\x84\xb4\
+\x3a\xd2\x1e\xa4\x3c\x43\xfc\x25\x27\xf9\xa9\x02\x3b\xbb\x81\xbf\
+\x37\x8d\xff\xc4\xc0\x1e\x10\x00\x19\x20\xfd\x2f\xe1\xc0\x6f\x20\
+\x06\xee\x83\x20\x15\xc4\xf1\xc3\x3d\x30\xfb\x0b\x7f\xbe\xa9\xbc\
+\x51\xaf\x52\xae\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\
+\x00\x00\x02\x60\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xff\x61\
+\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
+\xa7\x93\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x13\x00\x00\
+\x0b\x13\x01\x00\x9a\x9c\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\
+\xde\x04\x05\x10\x0c\x13\x12\x93\x2c\xaf\x00\x00\x01\xed\x49\x44\
+\x41\x54\x38\xcb\xb5\x93\xcf\x6b\xd2\x01\x18\xc6\x3f\x9b\xd5\x9c\
+\x4e\xd6\x21\x91\xcd\x53\x87\x45\x08\x5d\x1a\x45\x4a\x50\x6c\xff\
+\x82\x8c\xe1\x2f\x3c\x74\x0d\x47\x1b\x41\x97\x61\x56\xc8\xee\xb9\
+\x56\xab\x0e\x06\x4d\xd8\xb7\xd5\xc5\x36\x96\x8e\x1d\xc4\x6a\x99\
+\xbf\x96\x96\x2c\xc1\x28\x92\x20\xdd\x64\x5e\x0c\xe3\xed\x90\x46\
+\x54\xab\x75\xd8\x03\x2f\x3c\x87\xf7\xf3\xf0\xc2\xfb\xbe\xb0\xc7\
+\xd2\xb4\xea\xff\xa5\x28\x8a\x5f\x5a\x9a\x57\xe6\xfd\xbb\x06\xdd\
+\x6e\xf7\xf0\x7a\x26\x9b\xcb\xbc\xcf\x88\x71\xca\x28\xc6\x29\xa3\
+\xa4\xde\x25\xe5\xc5\xf3\xb5\x9c\xc3\xe9\x18\xde\x11\xf4\x8c\x9d\
+\x1f\x5d\x5d\x5d\xc9\x67\x0b\x69\x71\xdc\xb5\x0b\xd7\x10\x1e\x21\
+\x3c\x44\xb8\x8a\x8c\xdc\x1c\x91\x68\x2c\x22\xa1\xb9\xfb\xaf\x5d\
+\x2e\xc7\x68\x9b\x53\xb5\x8d\xd9\x72\xea\xd2\x46\x73\x63\xc8\xa5\
+\xb8\xc9\xaa\xd7\xe1\x30\xa0\x07\xd4\xdf\xbb\x72\xe5\x1c\xc1\xd5\
+\x20\xd4\x38\xb4\x55\xda\xfa\xf2\x76\xa3\xb8\x00\xd0\xd9\x0e\xa8\
+\x7c\xae\x14\x55\x2a\x15\x1c\x04\xba\x81\x5e\xa0\x07\xe8\x02\xff\
+\x31\x3f\x61\x6b\x18\x74\xf0\xb5\xd9\xa4\x5e\xaf\x17\xdb\xdc\x8f\
+\x80\x48\x64\x25\x66\x32\x1c\x85\x06\xcc\x9e\x9e\xc5\xaa\xb5\x42\
+\x17\x4c\x6a\x27\x99\x30\x4d\x60\x8f\xda\x01\x30\xaa\xfb\xc9\xbd\
+\xca\xc7\xda\xdc\xbe\xb6\x29\x7f\x2c\x27\x34\x0d\xed\xb6\x4e\xab\
+\xd3\x05\x92\x01\x52\xe7\x52\x04\xb3\x41\x9c\x26\x27\xfa\xb0\x9e\
+\x5a\x47\x8d\x1e\x55\x0f\xfb\xb7\x0f\xd4\xab\xd5\xcd\xc4\x6f\x13\
+\x00\xd5\xa7\x6b\xcf\x16\x1d\x26\x1b\xe9\x6a\x9a\xc1\xd0\x20\xb6\
+\x23\x36\xfa\x96\xfb\xa8\x68\x2a\xc8\x96\x70\xb6\xf7\x0c\x85\x62\
+\xe1\x31\x50\xdd\x69\x19\x27\x9f\x44\x97\x44\xed\x55\x0b\x33\x08\
+\xb7\x10\xc2\x08\x01\xa4\xdb\xdb\x2d\x97\x7d\x5e\x01\x4e\xfc\x0c\
+\x74\xfe\x12\x90\x78\xa0\x2c\x84\xee\x0c\xdd\x86\x0f\xc0\x26\xb0\
+\x0e\x7c\x82\x8b\xfd\x13\xc4\xe3\xf1\x39\xe0\xe5\xbf\x6e\xc9\x30\
+\x3d\x7d\xbd\xb4\x94\x5e\x14\xcb\x8c\x45\xcc\x37\xcc\x72\x6f\x39\
+\x28\x63\x1e\x4f\x09\x30\xec\xf6\x20\x07\x7c\x57\x7c\xa9\x42\xfe\
+\x8d\x64\xd3\x59\x19\x1f\xbf\x90\x02\x06\xfe\xd4\xd8\xf1\x97\x90\
+\x2e\xe0\x78\xcb\x27\x81\xc6\x9e\xbc\xeb\x37\x2a\x32\xcd\xb0\xbf\
+\x04\x27\x47\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x04\x6d\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x20\x00\x00\x00\x20\x08\x06\x00\x00\x00\x73\x7a\x7a\xf4\
+\x00\x00\x00\x06\x62\x4b\x47\x44\x00\xff\x00\xff\x00\xff\xa0\xbd\
+\xa7\x93\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x0b\x13\x00\x00\
+\x0b\x13\x01\x00\x9a\x9c\x18\x00\x00\x00\x07\x74\x49\x4d\x45\x07\
+\xde\x04\x05\x10\x0a\x39\x9f\x72\x42\xff\x00\x00\x03\xfa\x49\x44\
+\x41\x54\x58\xc3\xb5\x96\x41\x4b\x63\x57\x14\xc7\xff\xe7\xde\x67\
+\x92\xd1\xb4\x9d\x44\xd0\x6a\x48\x23\xe8\x68\x56\x05\x41\xa1\xe3\
+\x42\xe8\xcc\x42\xba\x95\x52\x86\x0a\x5d\xb8\x75\x91\xf8\x09\x5c\
+\x5b\xba\x2b\xfd\x0a\x53\x98\x0f\x50\xba\x91\x52\x67\xe3\x62\x2a\
+\x88\x14\xa6\x68\xba\xb0\x55\x32\x4c\x8d\x26\xcf\xbc\xf7\xf2\xde\
+\xbd\xe7\x76\xf1\x5e\x62\x62\x65\x26\x29\x79\x37\x04\x92\xfb\xce\
+\xbb\xf7\x77\xce\xff\x9c\x73\x2f\xa1\xcf\xf1\xe3\x8b\x17\x7e\xe1\
+\x93\xbc\xc8\x66\x32\x94\x4e\x7f\x40\xc9\x44\x02\x9a\x19\xbf\xbd\
+\x7a\x85\xcf\x1e\x3f\x36\xbe\xdf\xa2\x66\xd3\x31\x97\xb5\x4b\x53\
+\xa9\xfc\xc9\x5f\x3f\x7b\x96\xe8\x67\x5d\xd1\x2f\xc0\x55\xad\x36\
+\xe2\x34\x1d\x59\xab\x5d\x09\xd7\x75\x29\x99\x4c\x52\x2a\x99\xa4\
+\xa3\xa3\x23\x4a\x26\x12\x42\x08\x49\xcc\x5a\x28\xa5\xa4\x66\x3d\
+\xd2\xef\xba\x7d\x03\x64\xc7\xb3\xc8\xe5\x72\x98\x29\x14\x50\xaf\
+\xd7\x3b\xf3\x96\x94\x00\x00\x22\x02\x91\x00\x11\x61\x90\xd1\x37\
+\x80\xd6\x1a\x5a\x2b\x28\xad\x21\xa2\x4d\x7c\xad\x61\x8f\xa6\x23\
+\x80\x5b\x5b\x13\x07\x80\x31\x06\x00\x81\x08\x10\x22\x7c\xcd\xf5\
+\x03\x9c\xe7\x67\x23\x20\x0a\xbd\x27\x02\xc5\x07\x00\x18\xd3\x0e\
+\x37\x21\x69\x49\x4c\x54\xff\x86\x69\x47\x80\x10\xc2\x98\x18\x01\
+\x80\xdb\x08\x24\xa4\x44\xb6\x7e\x19\xcd\x52\xf8\x21\xc2\x20\x21\
+\x18\x1c\x20\xf2\xbe\x3d\x67\x00\x90\x08\xc3\xde\x96\x00\xb1\x49\
+\x10\x39\xd7\x0d\x20\x84\xc0\xeb\xd7\x7f\x74\xec\x06\xcb\x80\x41\
+\x00\xd8\x20\x92\xb9\xa7\xd4\x98\x19\x0b\xf3\xf3\xe1\xb6\x04\x08\
+\xd1\xb6\x1a\x36\x40\x18\xec\x36\xc1\x7f\xf2\xc2\x00\x30\xcc\xf0\
+\x3c\x0f\x4a\x05\xc3\x07\x08\x82\x00\x0d\xbb\x81\x56\xcb\x87\xef\
+\xfb\xa1\xfe\x9d\xca\x30\x50\x5a\xc3\x75\x3d\x38\x8e\x03\x66\x8e\
+\xa1\x11\x31\xa3\xd5\x6a\x21\x08\x02\x04\xc1\xad\x87\xb7\x72\x84\
+\x40\xcc\xa6\x27\x32\x43\xcd\x01\xd6\x0c\xbe\xe3\x79\xb7\x44\xe1\
+\x33\x1e\x08\xc0\xea\xd7\xf0\xe6\xc6\xc6\xf5\xf5\x35\x2c\xcb\x82\
+\x8c\xfa\x7f\xcf\x36\x86\x60\x4c\x08\xc8\x71\x00\xa4\xd3\x69\x4c\
+\x4c\x4c\x20\x9b\xcd\x22\x93\xc9\xa0\xd3\x16\xbb\xca\x34\x94\x80\
+\x61\x38\x06\x09\xfc\x20\xc0\xf5\xf5\x15\x5a\xbe\x0f\xad\x75\x4f\
+\x04\x4c\x04\xc0\xda\x84\x52\x19\x8e\x27\x07\x20\x04\x98\x75\x77\
+\x77\x02\x88\x20\x04\x85\x67\x00\x99\xb0\x5c\xe3\x90\x20\xf4\x90\
+\xc1\xfa\x36\xc9\xd8\x18\xb8\xae\x8b\x5a\xed\x0a\x8e\xe3\xa0\xd9\
+\x6c\xc2\x71\x5c\x38\xae\x3b\xfc\x08\xb0\xe1\xf0\x4e\x10\x65\xb9\
+\x01\x60\xb4\xc6\x87\x52\x62\x7c\x7c\x1c\xfb\xfb\xbf\xe2\xe5\xfe\
+\x4b\xa4\x52\x49\x8c\x58\x56\x0c\x00\xcc\xd0\xac\x3b\xa5\xa8\x94\
+\x82\xef\x38\x18\x6b\x34\xa0\x82\x00\x04\x82\x6d\x37\x22\x3b\x8e\
+\x41\x02\x36\xf0\x7d\x1f\xff\xbc\x7d\x0b\xcf\x75\x51\x28\x14\xe0\
+\x7a\x1e\xa6\xdf\xbc\x81\xe3\xba\xf8\xfc\xc9\x13\xcc\x17\x17\x70\
+\x7e\x71\x11\x4f\x27\x04\x42\xbd\x49\x10\x32\x0f\x1f\x82\xb5\x06\
+\x88\x30\xf6\xf4\x29\x6e\x6e\x6e\x60\xdb\x36\x1a\xb6\x8d\x66\xb3\
+\x09\xd6\xb1\x00\x00\x41\xcb\x87\xd6\x8c\x96\xef\xc3\x0f\x02\xa4\
+\x46\x47\x91\x5f\x59\x81\xe7\xba\xe1\xf9\xa0\x19\x5a\xe9\xde\x4a\
+\x19\xc6\x98\x7b\xf4\x48\x46\x3f\xc7\x00\x4c\x03\x58\x58\x5a\x5a\
+\xfa\xa1\x54\x2a\x99\x72\xb9\x6c\x00\x7c\x01\xa0\x18\x3d\x4b\x03\
+\xc0\xec\xdc\x9c\x1c\x5a\x0e\x9c\x9e\x9c\xb4\x5d\x6a\x46\x5f\x5a\
+\x5b\x5b\xab\xae\xae\xae\x82\x99\x71\x7c\x7c\xfc\xfb\xde\xde\xde\
+\x5f\xdd\xdd\xb9\x72\x7a\xaa\x87\x2a\x41\xb9\x5c\xee\x49\x88\xc9\
+\xc9\xc9\x60\x66\x66\x06\xf9\x7c\x1e\x30\xba\xd5\xbd\xf9\xf6\xf6\
+\x76\xdf\xd1\x1d\xe8\xfe\xb4\xbb\xbb\xfb\x9d\x66\x53\x44\xe2\x23\
+\x61\xa9\xc6\xec\xe4\xc7\x93\xf3\x5a\x6b\x5c\x54\x2f\x7f\x11\x23\
+\x0f\x5c\xe3\xd7\x31\x35\x35\xfd\xf3\xe6\xe6\xe6\xf7\xff\x1b\x60\
+\x67\x67\xa7\x90\xcb\xe5\xbe\x05\xd0\x73\xad\x51\x4a\xa9\xe5\xe5\
+\xe5\x2f\x53\xa9\x07\x63\x3e\x4b\x84\x17\x34\xd3\x59\xc6\x22\x0d\
+\x49\x0c\xa5\xd4\xf9\xc1\xc1\xc1\x9e\x6c\x1f\x99\x00\xa4\x94\x48\
+\xa5\x52\xcf\x37\x36\x36\x7e\x7a\x6f\x0e\x2c\x2e\x2e\x4e\xad\xac\
+\xac\x7c\x75\xf7\x4c\xd7\x5a\xe3\xf0\xf0\x10\xd6\x3b\xba\x9c\x31\
+\x06\xf9\x7c\x3e\xb7\xbe\xbe\xfe\x4d\x8f\xce\x42\xa0\x5a\xad\x9e\
+\x00\x78\x3f\x40\xad\x56\xa3\xb3\xb3\xb3\x4e\xbf\x27\x22\x78\x9e\
+\x07\xdb\xb6\x51\xa9\x54\xd0\xe5\xd8\xbd\xdd\x52\x4a\x09\xcf\xf3\
+\x7a\x2e\x25\x52\x4a\xd4\xeb\x75\x6b\x90\x1c\x10\xf7\xfc\x57\xa5\
+\x52\xe9\x08\xc0\xa7\xef\x02\x28\x16\x8b\xcf\xb7\xb6\xb6\x36\xee\
+\xac\x41\x00\xee\xad\x8a\x7f\x01\x07\xc8\x41\x0a\x6a\xfd\xe4\x85\
+\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
\x00\x00\x06\xba\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -80880,6 +81032,98 @@
\x64\x7b\x50\x80\x2c\x83\xa4\x3c\x0a\x90\x04\x00\x22\x75\x40\x01\
\xd9\xb4\x9c\x69\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
\
+\x00\x00\x02\xfa\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xff\x61\
+\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
+\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x01\xbb\x00\x00\x01\xbb\
+\x01\x3a\xec\xe3\xe2\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\
+\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\
+\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x02\x77\x49\x44\
+\x41\x54\x38\x8d\x8d\x51\x5d\x48\x53\x61\x18\x7e\xbe\x1d\x27\xc5\
+\x38\xb2\xf2\x0f\xe7\xdc\xa6\xce\x99\x90\x08\x5e\x14\x87\x4c\xdc\
+\xa0\xa0\x2e\x02\x2f\x0a\x4f\x21\x11\xb4\xba\x0a\x8e\x81\x5d\x19\
+\x84\x79\x37\x08\xaa\x0b\x85\xf0\xa2\xc2\x20\xc8\x9b\xa8\x0c\xbb\
+\x31\xc1\x18\xd1\x4d\x08\x05\x2d\x2d\x37\x9b\xba\xb9\xb5\xce\xce\
+\xe6\x99\x9e\x73\xde\x2e\xdc\x16\x53\x09\x1f\x78\xf9\xf8\xbe\xef\
+\x79\xde\x9f\xe7\x65\x44\x84\x9d\x60\x8c\x31\x00\x0d\x00\x3c\xf9\
+\xa7\x6f\x00\x22\xb4\x17\x99\x88\x76\x05\x80\xd6\x40\x20\x30\x21\
+\xcb\x72\x42\x96\xe5\x44\x20\x10\x98\x00\xd0\xba\x27\x77\x0f\xb1\
+\x45\x14\xc5\x61\xc3\xd0\x75\xe5\xf7\x42\x26\x9b\x5a\xcc\x1a\x86\
+\xa1\x8b\xa2\x38\x0c\xc0\xf2\xdf\x04\x79\x08\xb1\x68\x68\x55\xcb\
+\x46\x48\x59\x1c\x25\xe5\xc7\x38\x69\x1b\x2b\x94\x58\x0b\xad\x03\
+\x10\x76\x76\x6d\xda\x31\x11\x2f\x49\x92\x58\x5d\xe7\xae\x55\x57\
+\x5e\x42\x57\x57\xa1\xab\x51\xe4\xd6\xa6\x70\xb8\xc6\x5d\x29\x49\
+\x92\x08\x80\x2f\xf1\xab\x50\x99\x31\x06\xab\xd5\xda\x3d\xff\xf9\
+\xe3\xd3\x1a\xfe\x8f\x43\x59\xb8\x8f\xf1\x37\x07\xc1\x71\x1c\xae\
+\x9c\xd1\x60\x69\xbc\x86\x84\xc2\x2f\xdb\x1c\x6d\x7d\x00\xe6\x8a\
+\x1d\x17\x5a\x31\x9b\xcd\xfc\xd0\xd0\xd0\x28\x11\x51\x6c\xd6\x47\
+\x2b\xd3\xad\xe4\xf5\x7a\xa9\xab\xab\x8b\xa2\x53\x4e\x8a\xcd\x7a\
+\x89\x88\x48\x92\xa4\x07\x00\xf8\x12\x0f\x00\xc0\x6e\xb7\xf7\x44\
+\x97\xbf\x2f\xe7\x12\x1f\x28\x32\x09\x8a\x4c\x82\x5c\x2e\x17\xb9\
+\x5c\xae\xe2\x5d\x8d\xcf\x50\x34\xfc\xe5\x17\x80\x13\x85\xe2\x26\
+\x00\xe8\xed\xed\xad\xf4\xfb\xfd\x7d\x75\xf5\xcd\xf5\xe9\xd0\x3d\
+\x80\x71\xdb\x86\xf0\x3c\x78\xfe\xdf\xc8\xf2\xd7\x3b\xa8\x6b\x68\
+\xb3\x0d\x0c\x0c\x5c\x28\x78\x61\x02\x60\xc9\x64\x32\xc7\xaf\xfb\
+\xfb\xcf\x6d\x26\x83\x50\x57\x5f\x03\xa4\x03\x00\x3a\x9b\x15\x74\
+\x36\x2b\xc5\x04\xb9\xf8\x0c\x72\xeb\xef\x71\xeb\xe6\xd5\xf3\x00\
+\xda\x19\x63\xe0\x04\x41\x70\x57\x54\x54\xf8\x4f\x9d\x3e\x7b\x32\
+\xf9\xe9\x32\x34\x25\x54\x14\xf8\x3a\x52\xf0\x75\xa4\x4a\xd6\xa4\
+\x67\x7f\xa2\xb6\x7d\x90\x97\x65\x39\x13\x0c\x06\xe7\x98\xc7\xe3\
+\xf1\xbd\x9b\x7e\xfb\xa8\xd6\x12\x6e\x8a\xcf\xf6\x94\x90\x6f\xdc\
+\xdd\x3e\x1f\xde\x2e\xdd\x75\x75\xf7\x0c\xe2\xd9\xfa\xa5\x06\x67\
+\xcb\x45\x53\x55\x55\xd5\x51\x87\xb3\xb1\x29\x15\x7e\x95\xc5\x3e\
+\xa1\x84\x9f\xeb\x76\x87\xdb\x29\x08\xc2\xb1\x32\x55\x55\x73\x86\
+\x61\x68\x16\xf7\xe0\x96\x5a\x7e\x48\x2d\xe7\xb6\x0e\x14\x88\x8f\
+\x9f\xed\x16\x6f\x6a\xe6\x8d\x32\xdb\x25\x95\x88\xac\x86\x61\x68\
+\x00\xd0\x32\x32\x32\xf2\x24\x95\x4a\xc5\x68\x9f\x48\xa7\xd3\xc9\
+\xb1\xb1\xb1\x17\x00\x8e\x30\x00\x0c\x80\x0d\x40\x1b\x80\x1a\x00\
+\xe5\x00\xcc\x00\xca\x00\x70\xf9\x7f\x02\xa0\xe5\x63\x0b\x40\x12\
+\xc0\x3c\x80\xa5\xbf\x0f\xbe\x92\x25\xee\x27\x61\x5e\x00\x00\x00\
+\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
+\x00\x00\x02\x7f\
+\x89\
+\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
+\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xff\x61\
+\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
+\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x01\xbb\x00\x00\x01\xbb\
+\x01\x3a\xec\xe3\xe2\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\
+\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\
+\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x01\xfc\x49\x44\
+\x41\x54\x38\x8d\x8d\x53\x3d\x68\x53\x51\x14\xfe\xae\xef\x25\x31\
+\xf0\x5e\x93\x97\x64\x78\x31\x21\x16\x12\x41\xda\x42\x9e\x24\x4e\
+\x12\xd0\x20\xd4\xa8\xc5\x51\x34\x8b\x54\x5c\xda\xa1\x93\xd2\xad\
+\x2d\x92\x0c\x0e\x16\x1c\xd4\xd5\x21\x9b\x34\x8b\x4b\x07\xd1\x21\
+\x43\xd0\x5a\x22\x21\x42\x23\x1a\xa3\xd2\x54\x48\x08\x84\xe8\xfb\
+\x69\x5e\x8f\x43\x1b\x09\x69\x78\xf1\x83\xc3\xe1\x72\x2e\xdf\x39\
+\xdf\x77\xee\x65\x44\x84\x41\xb8\xdd\x6e\x71\xf9\xc1\xf2\x6d\xbf\
+\x7c\x4a\xa9\x7c\xaa\x4c\x7f\xab\xd7\x9a\x36\xbb\xed\x49\x2e\x97\
+\x7b\x8b\x11\xe0\x07\x0f\xd9\x6c\x76\x29\x9f\xcf\xdf\xd7\x35\x3d\
+\x50\x2c\xbe\x3b\x70\x7b\xa4\x5f\xfc\xcf\x1f\xbc\xe4\x96\xd2\x00\
+\x46\x12\x80\x88\x40\x44\xc8\x64\x32\x1b\xdb\x5b\x5b\x07\xfb\x86\
+\x41\xcf\x9e\x3e\xa7\xf5\xc7\xeb\x77\xfa\x35\xab\x38\x01\x00\xa9\
+\xd4\xd5\xe9\xc9\xd3\x93\xd7\xc4\x89\x09\x53\x55\x55\xba\x94\xbc\
+\x08\x63\xdf\xe8\x8c\xec\x38\x04\xb6\xb2\xb2\x7a\xcf\xef\x97\x1f\
+\x69\x9a\x2e\x10\xd1\x1b\xc3\xd0\xe5\x2b\xb3\xb3\x7a\x28\x14\xf2\
+\x5e\x9f\x9b\x4b\x15\x0a\x85\x1d\x4b\x86\x85\x85\xc5\xed\x52\xe9\
+\x23\xcd\xcf\xdf\x7d\xd1\x1f\x2b\x1a\x8d\x9e\xaf\x94\xcb\x2d\x55\
+\x55\x1b\x89\x44\x62\xca\x52\x82\x24\x49\xc9\xb5\xb5\xd5\xbc\xc3\
+\xe1\x58\xec\x93\x96\x4a\xa5\xf7\xb7\xd2\xe9\xcb\x7b\xbb\xbb\xbc\
+\x8d\xe7\x37\x45\x51\x7c\xcd\x18\x73\x58\x9a\x38\x2a\x5c\x2e\xd7\
+\x43\x45\x51\x28\x16\x8b\x91\x24\x49\x65\x00\xf2\xf0\x9d\xb1\x2e\
+\x0b\x82\x50\x54\x14\x85\xe2\xf1\x38\xc9\xb2\xfc\x05\x80\x32\x58\
+\x67\xc3\x0f\xe9\x98\xcb\x8c\x9d\x14\x04\xe1\x43\x38\x1c\x9e\xe2\
+\x38\x0e\xed\x76\xfb\x7b\xad\x56\xbb\x49\x44\x45\x00\x87\x6b\xb4\
+\x02\x11\x69\xdd\x6e\x37\x59\xaf\xd7\xbf\xf6\x7a\x3d\x78\xbd\xde\
+\x50\x24\x12\x79\xc9\x18\xbb\x00\x60\xfc\x04\x03\x93\x84\x3d\x1e\
+\xcf\xab\x60\x30\x78\xd6\x6e\xb7\xa3\xd3\xe9\xec\x55\xab\xd5\xd4\
+\x7f\x13\x1c\x91\x9c\xf1\xf9\x7c\x1b\x81\x40\x60\x86\xe3\x38\x68\
+\x9a\x56\x18\x2b\x61\x48\xce\xe7\x66\xb3\x79\xa3\xd1\x68\xec\x98\
+\xa6\xa9\xb7\x5a\xad\xcd\xb1\x5b\x18\x15\x00\x44\xa7\xd3\x79\xee\
+\xdf\x16\x18\x63\x0c\x00\x87\xc3\xdf\xc9\x03\xb0\x1d\x65\x6e\x20\
+\xf7\x61\x02\x30\x00\xfc\x06\xf0\xe7\x2f\xfa\x13\x63\xcc\xb4\xaf\
+\x0c\xf0\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
\x00\x00\x03\x2d\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -81831,98 +82075,6 @@
\x8d\x0c\xc3\x00\x40\x04\x80\xf8\x3f\x47\x00\x04\x01\xd8\x00\x2c\
\x00\x06\x00\xfd\x93\x6f\x00\x98\xff\x01\x68\xa5\x71\xa1\x90\xf8\
\x3b\x1c\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x02\xfa\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xff\x61\
-\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x01\xbb\x00\x00\x01\xbb\
-\x01\x3a\xec\xe3\xe2\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\
-\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\
-\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x02\x77\x49\x44\
-\x41\x54\x38\x8d\x8d\x51\x5d\x48\x53\x61\x18\x7e\xbe\x1d\x27\xc5\
-\x38\xb2\xf2\x0f\xe7\xdc\xa6\xce\x99\x90\x08\x5e\x14\x87\x4c\xdc\
-\xa0\xa0\x2e\x02\x2f\x0a\x4f\x21\x11\xb4\xba\x0a\x8e\x81\x5d\x19\
-\x84\x79\x37\x08\xaa\x0b\x85\xf0\xa2\xc2\x20\xc8\x9b\xa8\x0c\xbb\
-\x31\xc1\x18\xd1\x4d\x08\x05\x2d\x2d\x37\x9b\xba\xb9\xb5\xce\xce\
-\xe6\x99\x9e\x73\xde\x2e\xdc\x16\x53\x09\x1f\x78\xf9\xf8\xbe\xef\
-\x79\xde\x9f\xe7\x65\x44\x84\x9d\x60\x8c\x31\x00\x0d\x00\x3c\xf9\
-\xa7\x6f\x00\x22\xb4\x17\x99\x88\x76\x05\x80\xd6\x40\x20\x30\x21\
-\xcb\x72\x42\x96\xe5\x44\x20\x10\x98\x00\xd0\xba\x27\x77\x0f\xb1\
-\x45\x14\xc5\x61\xc3\xd0\x75\xe5\xf7\x42\x26\x9b\x5a\xcc\x1a\x86\
-\xa1\x8b\xa2\x38\x0c\xc0\xf2\xdf\x04\x79\x08\xb1\x68\x68\x55\xcb\
-\x46\x48\x59\x1c\x25\xe5\xc7\x38\x69\x1b\x2b\x94\x58\x0b\xad\x03\
-\x10\x76\x76\x6d\xda\x31\x11\x2f\x49\x92\x58\x5d\xe7\xae\x55\x57\
-\x5e\x42\x57\x57\xa1\xab\x51\xe4\xd6\xa6\x70\xb8\xc6\x5d\x29\x49\
-\x92\x08\x80\x2f\xf1\xab\x50\x99\x31\x06\xab\xd5\xda\x3d\xff\xf9\
-\xe3\xd3\x1a\xfe\x8f\x43\x59\xb8\x8f\xf1\x37\x07\xc1\x71\x1c\xae\
-\x9c\xd1\x60\x69\xbc\x86\x84\xc2\x2f\xdb\x1c\x6d\x7d\x00\xe6\x8a\
-\x1d\x17\x5a\x31\x9b\xcd\xfc\xd0\xd0\xd0\x28\x11\x51\x6c\xd6\x47\
-\x2b\xd3\xad\xe4\xf5\x7a\xa9\xab\xab\x8b\xa2\x53\x4e\x8a\xcd\x7a\
-\x89\x88\x48\x92\xa4\x07\x00\xf8\x12\x0f\x00\xc0\x6e\xb7\xf7\x44\
-\x97\xbf\x2f\xe7\x12\x1f\x28\x32\x09\x8a\x4c\x82\x5c\x2e\x17\xb9\
-\x5c\xae\xe2\x5d\x8d\xcf\x50\x34\xfc\xe5\x17\x80\x13\x85\xe2\x26\
-\x00\xe8\xed\xed\xad\xf4\xfb\xfd\x7d\x75\xf5\xcd\xf5\xe9\xd0\x3d\
-\x80\x71\xdb\x86\xf0\x3c\x78\xfe\xdf\xc8\xf2\xd7\x3b\xa8\x6b\x68\
-\xb3\x0d\x0c\x0c\x5c\x28\x78\x61\x02\x60\xc9\x64\x32\xc7\xaf\xfb\
-\xfb\xcf\x6d\x26\x83\x50\x57\x5f\x03\xa4\x03\x00\x3a\x9b\x15\x74\
-\x36\x2b\xc5\x04\xb9\xf8\x0c\x72\xeb\xef\x71\xeb\xe6\xd5\xf3\x00\
-\xda\x19\x63\xe0\x04\x41\x70\x57\x54\x54\xf8\x4f\x9d\x3e\x7b\x32\
-\xf9\xe9\x32\x34\x25\x54\x14\xf8\x3a\x52\xf0\x75\xa4\x4a\xd6\xa4\
-\x67\x7f\xa2\xb6\x7d\x90\x97\x65\x39\x13\x0c\x06\xe7\x98\xc7\xe3\
-\xf1\xbd\x9b\x7e\xfb\xa8\xd6\x12\x6e\x8a\xcf\xf6\x94\x90\x6f\xdc\
-\xdd\x3e\x1f\xde\x2e\xdd\x75\x75\xf7\x0c\xe2\xd9\xfa\xa5\x06\x67\
-\xcb\x45\x53\x55\x55\xd5\x51\x87\xb3\xb1\x29\x15\x7e\x95\xc5\x3e\
-\xa1\x84\x9f\xeb\x76\x87\xdb\x29\x08\xc2\xb1\x32\x55\x55\x73\x86\
-\x61\x68\x16\xf7\xe0\x96\x5a\x7e\x48\x2d\xe7\xb6\x0e\x14\x88\x8f\
-\x9f\xed\x16\x6f\x6a\xe6\x8d\x32\xdb\x25\x95\x88\xac\x86\x61\x68\
-\x00\xd0\x32\x32\x32\xf2\x24\x95\x4a\xc5\x68\x9f\x48\xa7\xd3\xc9\
-\xb1\xb1\xb1\x17\x00\x8e\x30\x00\x0c\x80\x0d\x40\x1b\x80\x1a\x00\
-\xe5\x00\xcc\x00\xca\x00\x70\xf9\x7f\x02\xa0\xe5\x63\x0b\x40\x12\
-\xc0\x3c\x80\xa5\xbf\x0f\xbe\x92\x25\xee\x27\x61\x5e\x00\x00\x00\
-\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
-\x00\x00\x02\x7f\
-\x89\
-\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
-\x00\x00\x10\x00\x00\x00\x10\x08\x06\x00\x00\x00\x1f\xf3\xff\x61\
-\x00\x00\x00\x04\x73\x42\x49\x54\x08\x08\x08\x08\x7c\x08\x64\x88\
-\x00\x00\x00\x09\x70\x48\x59\x73\x00\x00\x01\xbb\x00\x00\x01\xbb\
-\x01\x3a\xec\xe3\xe2\x00\x00\x00\x19\x74\x45\x58\x74\x53\x6f\x66\
-\x74\x77\x61\x72\x65\x00\x77\x77\x77\x2e\x69\x6e\x6b\x73\x63\x61\
-\x70\x65\x2e\x6f\x72\x67\x9b\xee\x3c\x1a\x00\x00\x01\xfc\x49\x44\
-\x41\x54\x38\x8d\x8d\x53\x3d\x68\x53\x51\x14\xfe\xae\xef\x25\x31\
-\xf0\x5e\x93\x97\x64\x78\x31\x21\x16\x12\x41\xda\x42\x9e\x24\x4e\
-\x12\xd0\x20\xd4\xa8\xc5\x51\x34\x8b\x54\x5c\xda\xa1\x93\xd2\xad\
-\x2d\x92\x0c\x0e\x16\x1c\xd4\xd5\x21\x9b\x34\x8b\x4b\x07\xd1\x21\
-\x43\xd0\x5a\x22\x21\x42\x23\x1a\xa3\xd2\x54\x48\x08\x84\xe8\xfb\
-\x69\x5e\x8f\x43\x1b\x09\x69\x78\xf1\x83\xc3\xe1\x72\x2e\xdf\x39\
-\xdf\x77\xee\x65\x44\x84\x41\xb8\xdd\x6e\x71\xf9\xc1\xf2\x6d\xbf\
-\x7c\x4a\xa9\x7c\xaa\x4c\x7f\xab\xd7\x9a\x36\xbb\xed\x49\x2e\x97\
-\x7b\x8b\x11\xe0\x07\x0f\xd9\x6c\x76\x29\x9f\xcf\xdf\xd7\x35\x3d\
-\x50\x2c\xbe\x3b\x70\x7b\xa4\x5f\xfc\xcf\x1f\xbc\xe4\x96\xd2\x00\
-\x46\x12\x80\x88\x40\x44\xc8\x64\x32\x1b\xdb\x5b\x5b\x07\xfb\x86\
-\x41\xcf\x9e\x3e\xa7\xf5\xc7\xeb\x77\xfa\x35\xab\x38\x01\x00\xa9\
-\xd4\xd5\xe9\xc9\xd3\x93\xd7\xc4\x89\x09\x53\x55\x55\xba\x94\xbc\
-\x08\x63\xdf\xe8\x8c\xec\x38\x04\xb6\xb2\xb2\x7a\xcf\xef\x97\x1f\
-\x69\x9a\x2e\x10\xd1\x1b\xc3\xd0\xe5\x2b\xb3\xb3\x7a\x28\x14\xf2\
-\x5e\x9f\x9b\x4b\x15\x0a\x85\x1d\x4b\x86\x85\x85\xc5\xed\x52\xe9\
-\x23\xcd\xcf\xdf\x7d\xd1\x1f\x2b\x1a\x8d\x9e\xaf\x94\xcb\x2d\x55\
-\x55\x1b\x89\x44\x62\xca\x52\x82\x24\x49\xc9\xb5\xb5\xd5\xbc\xc3\
-\xe1\x58\xec\x93\x96\x4a\xa5\xf7\xb7\xd2\xe9\xcb\x7b\xbb\xbb\xbc\
-\x8d\xe7\x37\x45\x51\x7c\xcd\x18\x73\x58\x9a\x38\x2a\x5c\x2e\xd7\
-\x43\x45\x51\x28\x16\x8b\x91\x24\x49\x65\x00\xf2\xf0\x9d\xb1\x2e\
-\x0b\x82\x50\x54\x14\x85\xe2\xf1\x38\xc9\xb2\xfc\x05\x80\x32\x58\
-\x67\xc3\x0f\xe9\x98\xcb\x8c\x9d\x14\x04\xe1\x43\x38\x1c\x9e\xe2\
-\x38\x0e\xed\x76\xfb\x7b\xad\x56\xbb\x49\x44\x45\x00\x87\x6b\xb4\
-\x02\x11\x69\xdd\x6e\x37\x59\xaf\xd7\xbf\xf6\x7a\x3d\x78\xbd\xde\
-\x50\x24\x12\x79\xc9\x18\xbb\x00\x60\xfc\x04\x03\x93\x84\x3d\x1e\
-\xcf\xab\x60\x30\x78\xd6\x6e\xb7\xa3\xd3\xe9\xec\x55\xab\xd5\xd4\
-\x7f\x13\x1c\x91\x9c\xf1\xf9\x7c\x1b\x81\x40\x60\x86\xe3\x38\x68\
-\x9a\x56\x18\x2b\x61\x48\xce\xe7\x66\xb3\x79\xa3\xd1\x68\xec\x98\
-\xa6\xa9\xb7\x5a\xad\xcd\xb1\x5b\x18\x15\x00\x44\xa7\xd3\x79\xee\
-\xdf\x16\x18\x63\x0c\x00\x87\xc3\xdf\xc9\x03\xb0\x1d\x65\x6e\x20\
-\xf7\x61\x02\x30\x00\xfc\x06\xf0\xe7\x2f\xfa\x13\x63\xcc\xb4\xaf\
-\x0c\xf0\x00\x00\x00\x00\x49\x45\x4e\x44\xae\x42\x60\x82\
\x00\x00\x02\xcc\
\x89\
\x50\x4e\x47\x0d\x0a\x1a\x0a\x00\x00\x00\x0d\x49\x48\x44\x52\x00\
@@ -82218,14 +82370,14 @@
\x04\xec\x63\x15\
\x00\x73\
\x00\x6f\x00\x6e\x00\x67\x00\x75\x00\x73\x00\x61\x00\x67\x00\x65\
+\x00\x06\
+\x07\xb0\xaa\xbd\
+\x00\x73\
+\x00\x79\x00\x73\x00\x74\x00\x65\x00\x6d\
\x00\x05\
\x00\x7b\x66\x33\
\x00\x74\
\x00\x6f\x00\x6f\x00\x6c\x00\x73\
-\x00\x06\
-\x07\xb0\xaa\xbd\
-\x00\x73\
-\x00\x79\x00\x73\x00\x74\x00\x65\x00\x6d\
\x00\x07\
\x0d\xc4\xc8\xbc\
\x00\x67\
@@ -82258,6 +82410,10 @@
\x00\x7a\x64\xe3\
\x00\x73\
\x00\x6f\x00\x6e\x00\x67\x00\x73\
+\x00\x06\
+\x07\x8c\x46\xa5\
+\x00\x72\
+\x00\x65\x00\x6d\x00\x6f\x00\x74\x00\x65\
\x00\x04\
\x00\x06\xfa\x5e\
\x00\x69\
@@ -82442,6 +82598,19 @@
\x00\x6f\
\x00\x70\x00\x65\x00\x6e\x00\x6c\x00\x70\x00\x2d\x00\x6c\x00\x6f\x00\x67\x00\x6f\x00\x2d\x00\x31\x00\x32\x00\x38\x00\x78\x00\x31\
\x00\x32\x00\x38\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x0f\
+\x0d\x53\xa6\xa7\
+\x00\x6e\
+\x00\x65\x00\x74\x00\x77\x00\x6f\x00\x72\x00\x6b\x00\x5f\x00\x73\x00\x73\x00\x6c\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x10\
+\x00\x64\x4e\xa7\
+\x00\x6e\
+\x00\x65\x00\x74\x00\x77\x00\x6f\x00\x72\x00\x6b\x00\x5f\x00\x61\x00\x75\x00\x74\x00\x68\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x12\
+\x03\xda\x97\xe7\
+\x00\x6e\
+\x00\x65\x00\x74\x00\x77\x00\x6f\x00\x72\x00\x6b\x00\x5f\x00\x73\x00\x65\x00\x72\x00\x76\x00\x65\x00\x72\x00\x2e\x00\x70\x00\x6e\
+\x00\x67\
\x00\x14\
\x0d\xa9\x66\x87\
\x00\x62\
@@ -82770,6 +82939,14 @@
\x00\x67\
\x00\x65\x00\x6e\x00\x65\x00\x72\x00\x61\x00\x6c\x00\x5f\x00\x65\x00\x6d\x00\x61\x00\x69\x00\x6c\x00\x2e\x00\x70\x00\x6e\x00\x67\
\
+\x00\x0f\
+\x00\xe4\x12\x87\
+\x00\x74\
+\x00\x6f\x00\x6f\x00\x6c\x00\x73\x00\x5f\x00\x61\x00\x6c\x00\x65\x00\x72\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
+\x00\x0d\
+\x01\x6b\x24\x07\
+\x00\x74\
+\x00\x6f\x00\x6f\x00\x6c\x00\x73\x00\x5f\x00\x61\x00\x64\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x10\
\x03\x10\x21\x87\
\x00\x73\
@@ -82846,14 +83023,6 @@
\x0a\x5e\xd0\xe7\
\x00\x73\
\x00\x79\x00\x73\x00\x74\x00\x65\x00\x6d\x00\x5f\x00\x65\x00\x78\x00\x69\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0f\
-\x00\xe4\x12\x87\
-\x00\x74\
-\x00\x6f\x00\x6f\x00\x6c\x00\x73\x00\x5f\x00\x61\x00\x6c\x00\x65\x00\x72\x00\x74\x00\x2e\x00\x70\x00\x6e\x00\x67\
-\x00\x0d\
-\x01\x6b\x24\x07\
-\x00\x74\
-\x00\x6f\x00\x6f\x00\x6c\x00\x73\x00\x5f\x00\x61\x00\x64\x00\x64\x00\x2e\x00\x70\x00\x6e\x00\x67\
\x00\x17\
\x03\xba\x72\x47\
\x00\x73\
@@ -82886,154 +83055,158 @@
"
qt_resource_struct = b"\
-\x00\x00\x00\x00\x00\x02\x00\x00\x00\x13\x00\x00\x00\x01\
-\x00\x00\x00\xe6\x00\x02\x00\x00\x00\x06\x00\x00\x00\x8e\
-\x00\x00\x00\x00\x00\x02\x00\x00\x00\x04\x00\x00\x00\x8a\
-\x00\x00\x00\xb4\x00\x02\x00\x00\x00\x08\x00\x00\x00\x82\
-\x00\x00\x00\xd6\x00\x02\x00\x00\x00\x14\x00\x00\x00\x6e\
-\x00\x00\x00\x2c\x00\x02\x00\x00\x00\x02\x00\x00\x00\x6c\
-\x00\x00\x00\x14\x00\x02\x00\x00\x00\x02\x00\x00\x00\x6a\
-\x00\x00\x01\x06\x00\x02\x00\x00\x00\x05\x00\x00\x00\x65\
-\x00\x00\x00\xf4\x00\x02\x00\x00\x00\x02\x00\x00\x00\x63\
-\x00\x00\x01\x40\x00\x02\x00\x00\x00\x09\x00\x00\x00\x5a\
-\x00\x00\x00\x8c\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x50\
-\x00\x00\x00\xc4\x00\x02\x00\x00\x00\x03\x00\x00\x00\x4d\
-\x00\x00\x00\x3c\x00\x02\x00\x00\x00\x10\x00\x00\x00\x3d\
-\x00\x00\x00\x62\x00\x02\x00\x00\x00\x03\x00\x00\x00\x3a\
-\x00\x00\x00\x78\x00\x02\x00\x00\x00\x01\x00\x00\x00\x39\
-\x00\x00\x01\x54\x00\x02\x00\x00\x00\x03\x00\x00\x00\x36\
-\x00\x00\x00\x9e\x00\x02\x00\x00\x00\x08\x00\x00\x00\x2e\
-\x00\x00\x01\x2c\x00\x02\x00\x00\x00\x01\x00\x00\x00\x2d\
-\x00\x00\x00\x4e\x00\x02\x00\x00\x00\x13\x00\x00\x00\x1a\
-\x00\x00\x01\x18\x00\x02\x00\x00\x00\x06\x00\x00\x00\x14\
-\x00\x00\x04\x5e\x00\x00\x00\x00\x00\x01\x00\x0a\xa7\x31\
-\x00\x00\x03\x9c\x00\x00\x00\x00\x00\x01\x00\x00\x23\xa9\
-\x00\x00\x03\xfe\x00\x00\x00\x00\x00\x01\x00\x05\x65\x6d\
-\x00\x00\x04\x2c\x00\x00\x00\x00\x00\x01\x00\x08\x06\x4f\
-\x00\x00\x03\xce\x00\x00\x00\x00\x00\x01\x00\x02\xc4\x8b\
-\x00\x00\x04\x8e\x00\x00\x00\x00\x00\x01\x00\x0d\x48\x13\
-\x00\x00\x11\x2c\x00\x00\x00\x00\x00\x01\x00\x13\x88\xf3\
-\x00\x00\x11\xa8\x00\x00\x00\x00\x00\x01\x00\x13\x92\xba\
-\x00\x00\x11\x06\x00\x00\x00\x00\x00\x01\x00\x13\x86\x19\
-\x00\x00\x10\x8c\x00\x00\x00\x00\x00\x01\x00\x13\x7e\x01\
-\x00\x00\x12\xe8\x00\x00\x00\x00\x00\x01\x00\x13\xab\x88\
-\x00\x00\x10\xdc\x00\x00\x00\x00\x00\x01\x00\x13\x83\x7b\
-\x00\x00\x11\x7e\x00\x00\x00\x00\x00\x01\x00\x13\x8f\xd5\
-\x00\x00\x10\x2a\x00\x00\x00\x00\x00\x01\x00\x13\x76\xe7\
-\x00\x00\x12\x24\x00\x00\x00\x00\x00\x01\x00\x13\x9c\xde\
-\x00\x00\x12\x9c\x00\x00\x00\x00\x00\x01\x00\x13\xa5\x02\
-\x00\x00\x11\xd0\x00\x00\x00\x00\x00\x01\x00\x13\x96\x2e\
-\x00\x00\x12\xc2\x00\x00\x00\x00\x00\x01\x00\x13\xa8\xb4\
-\x00\x00\x10\x62\x00\x00\x00\x00\x00\x01\x00\x13\x7b\x89\
-\x00\x00\x12\x72\x00\x00\x00\x00\x00\x01\x00\x13\xa2\x80\
-\x00\x00\x10\xb8\x00\x00\x00\x00\x00\x01\x00\x13\x81\x34\
-\x00\x00\x11\x52\x00\x00\x00\x00\x00\x01\x00\x13\x8b\x2a\
-\x00\x00\x10\x06\x00\x00\x00\x00\x00\x01\x00\x13\x73\xea\
-\x00\x00\x12\x4c\x00\x00\x00\x00\x00\x01\x00\x13\x9e\xf1\
-\x00\x00\x11\xfe\x00\x00\x00\x00\x00\x01\x00\x13\x9a\xc7\
-\x00\x00\x03\x78\x00\x00\x00\x00\x00\x01\x00\x00\x21\x92\
-\x00\x00\x0c\xc6\x00\x00\x00\x00\x00\x01\x00\x11\xf5\x62\
-\x00\x00\x0d\x46\x00\x00\x00\x00\x00\x01\x00\x11\xfc\x28\
-\x00\x00\x0c\x4a\x00\x00\x00\x00\x00\x01\x00\x11\xee\x5e\
-\x00\x00\x0c\xee\x00\x00\x00\x00\x00\x01\x00\x11\xf8\x02\
-\x00\x00\x0d\x70\x00\x00\x00\x00\x00\x01\x00\x11\xfe\xf3\
-\x00\x00\x0c\x94\x00\x00\x00\x00\x00\x01\x00\x11\xf3\x78\
-\x00\x00\x0c\x6e\x00\x00\x00\x00\x00\x01\x00\x11\xf1\x05\
-\x00\x00\x0d\x24\x00\x00\x00\x00\x00\x01\x00\x11\xf9\x84\
-\x00\x00\x01\x6e\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
-\x00\x00\x01\xd4\x00\x00\x00\x00\x00\x01\x00\x00\x05\xe6\
-\x00\x00\x01\xa0\x00\x00\x00\x00\x00\x01\x00\x00\x02\xfe\
-\x00\x00\x0f\x56\x00\x00\x00\x00\x00\x01\x00\x12\x1a\x41\
-\x00\x00\x0f\x80\x00\x00\x00\x00\x00\x01\x00\x12\x1f\xab\
-\x00\x00\x0f\xb0\x00\x00\x00\x00\x00\x01\x00\x12\x8e\x34\
-\x00\x00\x0f\xd0\x00\x00\x00\x00\x00\x01\x00\x12\x94\xe5\
-\x00\x00\x13\x6a\x00\x00\x00\x00\x00\x01\x00\x13\xb3\xce\
-\x00\x00\x13\x10\x00\x00\x00\x00\x00\x01\x00\x13\xae\xcd\
-\x00\x00\x15\x86\x00\x00\x00\x00\x00\x01\x00\x13\xdd\xd3\
-\x00\x00\x14\x10\x00\x00\x00\x00\x00\x01\x00\x13\xbb\xd8\
-\x00\x00\x13\xac\x00\x00\x00\x00\x00\x01\x00\x13\xb7\x21\
-\x00\x00\x13\x36\x00\x00\x00\x00\x00\x01\x00\x13\xb1\xfe\
-\x00\x00\x14\xd8\x00\x00\x00\x00\x00\x01\x00\x13\xce\xae\
-\x00\x00\x14\x76\x00\x00\x00\x00\x00\x01\x00\x13\xc6\x7e\
-\x00\x00\x15\xac\x00\x00\x00\x00\x00\x01\x00\x13\xe0\xb5\
-\x00\x00\x15\x52\x00\x00\x00\x00\x00\x01\x00\x13\xd9\xf6\
-\x00\x00\x14\xa2\x00\x00\x00\x00\x00\x01\x00\x13\xcb\x8a\
-\x00\x00\x15\xde\x00\x00\x00\x00\x00\x01\x00\x13\xe4\x72\
-\x00\x00\x14\xfa\x00\x00\x00\x00\x00\x01\x00\x13\xd3\x1d\
-\x00\x00\x14\x3e\x00\x00\x00\x00\x00\x01\x00\x13\xc4\x08\
-\x00\x00\x15\x28\x00\x00\x00\x00\x00\x01\x00\x13\xd7\x6e\
-\x00\x00\x13\xda\x00\x00\x00\x00\x00\x01\x00\x13\xb9\x28\
-\x00\x00\x0a\xa6\x00\x00\x00\x00\x00\x01\x00\x11\x96\x51\
-\x00\x00\x0a\xc6\x00\x00\x00\x00\x00\x01\x00\x11\x9a\x2e\
-\x00\x00\x0a\x80\x00\x00\x00\x00\x00\x01\x00\x11\x93\xb3\
-\x00\x00\x0e\x34\x00\x00\x00\x00\x00\x01\x00\x12\x09\x0f\
-\x00\x00\x0e\xd2\x00\x00\x00\x00\x00\x01\x00\x12\x13\x84\
-\x00\x00\x0f\x2c\x00\x00\x00\x00\x00\x01\x00\x12\x18\x3d\
-\x00\x00\x0d\xca\x00\x00\x00\x00\x00\x01\x00\x12\x05\x1f\
-\x00\x00\x0e\xae\x00\x00\x00\x00\x00\x01\x00\x12\x10\x51\
-\x00\x00\x0d\xfe\x00\x00\x00\x00\x00\x01\x00\x12\x07\x16\
-\x00\x00\x0e\x68\x00\x00\x00\x00\x00\x01\x00\x12\x0b\x0d\
-\x00\x00\x0e\x8a\x00\x00\x00\x00\x00\x01\x00\x12\x0d\x20\
-\x00\x00\x0f\x08\x00\x00\x00\x00\x00\x01\x00\x12\x15\x6c\
-\x00\x00\x0d\xa2\x00\x00\x00\x00\x00\x01\x00\x12\x02\x63\
-\x00\x00\x03\x00\x00\x00\x00\x00\x00\x01\x00\x00\x1b\x20\
-\x00\x00\x02\x84\x00\x00\x00\x00\x00\x01\x00\x00\x11\xc5\
-\x00\x00\x02\x28\x00\x00\x00\x00\x00\x01\x00\x00\x0c\x03\
-\x00\x00\x02\xb2\x00\x00\x00\x00\x00\x01\x00\x00\x15\x7b\
-\x00\x00\x02\x00\x00\x00\x00\x00\x00\x01\x00\x00\x09\x05\
-\x00\x00\x02\x4e\x00\x00\x00\x00\x00\x01\x00\x00\x0f\x9a\
-\x00\x00\x02\xda\x00\x00\x00\x00\x00\x01\x00\x00\x18\xbd\
-\x00\x00\x03\x50\x00\x00\x00\x00\x00\x01\x00\x00\x1f\x8c\
-\x00\x00\x03\x28\x00\x00\x00\x00\x00\x01\x00\x00\x1d\x72\
-\x00\x00\x05\xd6\x00\x00\x00\x00\x00\x01\x00\x0f\xf8\xbd\
-\x00\x00\x05\xfa\x00\x00\x00\x00\x00\x01\x00\x0f\xfe\xdb\
-\x00\x00\x05\x38\x00\x00\x00\x00\x00\x01\x00\x0f\xf2\x3b\
-\x00\x00\x04\xca\x00\x00\x00\x00\x00\x01\x00\x0f\xe8\xf5\
-\x00\x00\x05\x06\x00\x00\x00\x00\x00\x01\x00\x0f\xf0\xe8\
-\x00\x00\x05\xa0\x00\x00\x00\x00\x00\x01\x00\x0f\xf7\x01\
-\x00\x00\x05\x6e\x00\x00\x00\x00\x00\x01\x00\x0f\xf5\x39\
-\x00\x00\x16\x46\x00\x00\x00\x00\x00\x01\x00\x13\xed\xa6\
-\x00\x00\x16\x7a\x00\x00\x00\x00\x00\x01\x00\x13\xf0\x76\
-\x00\x00\x16\x02\x00\x00\x00\x00\x00\x01\x00\x13\xe8\x25\
-\x00\x00\x16\x26\x00\x00\x00\x00\x00\x01\x00\x13\xeb\x23\
-\x00\x00\x07\x7c\x00\x00\x00\x00\x00\x01\x00\x11\x54\x8c\
-\x00\x00\x08\x5a\x00\x00\x00\x00\x00\x01\x00\x11\x64\xdc\
-\x00\x00\x0a\x60\x00\x00\x00\x00\x00\x01\x00\x11\x8f\xc0\
-\x00\x00\x0a\x2e\x00\x00\x00\x00\x00\x01\x00\x11\x88\xaa\
-\x00\x00\x09\x14\x00\x00\x00\x00\x00\x01\x00\x11\x6d\xaa\
-\x00\x00\x07\xc4\x00\x00\x00\x00\x00\x01\x00\x11\x5a\xf1\
-\x00\x00\x09\xb4\x00\x00\x00\x00\x00\x01\x00\x11\x80\x69\
-\x00\x00\x09\xde\x00\x00\x00\x00\x00\x01\x00\x11\x82\x9e\
-\x00\x00\x08\xb4\x00\x00\x00\x00\x00\x01\x00\x11\x69\x8d\
-\x00\x00\x08\xe2\x00\x00\x00\x00\x00\x01\x00\x11\x6c\x0d\
-\x00\x00\x07\xe8\x00\x00\x00\x00\x00\x01\x00\x11\x5d\x8f\
-\x00\x00\x08\x3a\x00\x00\x00\x00\x00\x01\x00\x11\x61\xd0\
-\x00\x00\x08\x82\x00\x00\x00\x00\x00\x01\x00\x11\x68\x3a\
-\x00\x00\x09\x66\x00\x00\x00\x00\x00\x01\x00\x11\x74\x1f\
-\x00\x00\x09\x3a\x00\x00\x00\x00\x00\x01\x00\x11\x71\xbc\
-\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x01\x00\x11\x86\xa2\
-\x00\x00\x07\x4e\x00\x00\x00\x00\x00\x01\x00\x11\x4d\xce\
-\x00\x00\x07\xa0\x00\x00\x00\x00\x00\x01\x00\x11\x57\x78\
-\x00\x00\x08\x18\x00\x00\x00\x00\x00\x01\x00\x11\x5e\x88\
-\x00\x00\x09\x84\x00\x00\x00\x00\x00\x01\x00\x11\x76\xc1\
-\x00\x00\x0b\x5a\x00\x00\x00\x00\x00\x01\x00\x11\xd3\x66\
-\x00\x00\x0b\x8e\x00\x00\x00\x00\x00\x01\x00\x11\xd6\x69\
-\x00\x00\x0c\x04\x00\x00\x00\x00\x00\x01\x00\x11\xe4\xa1\
-\x00\x00\x0b\x2a\x00\x00\x00\x00\x00\x01\x00\x11\xd1\x0d\
-\x00\x00\x0b\xd4\x00\x00\x00\x00\x00\x01\x00\x11\xe1\x6e\
-\x00\x00\x0c\x26\x00\x00\x00\x00\x00\x01\x00\x11\xe7\x77\
-\x00\x00\x0a\xe8\x00\x00\x00\x00\x00\x01\x00\x11\x9d\x68\
-\x00\x00\x0b\xb0\x00\x00\x00\x00\x00\x01\x00\x11\xda\x3c\
-\x00\x00\x16\xaa\x00\x00\x00\x00\x00\x01\x00\x13\xf3\x6f\
-\x00\x00\x17\x0c\x00\x00\x00\x00\x00\x01\x00\x13\xf9\xe5\
-\x00\x00\x16\xde\x00\x00\x00\x00\x00\x01\x00\x13\xf6\xd1\
-\x00\x00\x17\x34\x00\x00\x00\x00\x00\x01\x00\x13\xfc\x83\
-\x00\x00\x06\xb6\x00\x00\x00\x00\x00\x01\x00\x10\x3b\xad\
-\x00\x00\x06\x56\x00\x00\x00\x00\x00\x01\x00\x10\x0c\x6d\
-\x00\x00\x06\x26\x00\x00\x00\x00\x00\x01\x00\x10\x01\xd9\
-\x00\x00\x06\x86\x00\x00\x00\x00\x00\x01\x00\x10\x21\xa2\
-\x00\x00\x06\xe6\x00\x00\x00\x00\x00\x01\x00\x10\x3f\xca\
-\x00\x00\x07\x1a\x00\x00\x00\x00\x00\x01\x00\x11\x08\x63\
+\x00\x00\x00\x00\x00\x02\x00\x00\x00\x14\x00\x00\x00\x01\
+\x00\x00\x00\xf8\x00\x02\x00\x00\x00\x06\x00\x00\x00\x92\
+\x00\x00\x00\x00\x00\x02\x00\x00\x00\x04\x00\x00\x00\x8e\
+\x00\x00\x00\xb4\x00\x02\x00\x00\x00\x08\x00\x00\x00\x86\
+\x00\x00\x00\xd6\x00\x02\x00\x00\x00\x14\x00\x00\x00\x72\
+\x00\x00\x00\x3e\x00\x02\x00\x00\x00\x02\x00\x00\x00\x70\
+\x00\x00\x00\x14\x00\x02\x00\x00\x00\x02\x00\x00\x00\x6e\
+\x00\x00\x01\x18\x00\x02\x00\x00\x00\x05\x00\x00\x00\x69\
+\x00\x00\x01\x06\x00\x02\x00\x00\x00\x02\x00\x00\x00\x67\
+\x00\x00\x01\x52\x00\x02\x00\x00\x00\x09\x00\x00\x00\x5e\
+\x00\x00\x00\xe6\x00\x02\x00\x00\x00\x03\x00\x00\x00\x5b\
+\x00\x00\x00\x8c\x00\x02\x00\x00\x00\x0a\x00\x00\x00\x51\
+\x00\x00\x00\xc4\x00\x02\x00\x00\x00\x03\x00\x00\x00\x4e\
+\x00\x00\x00\x2c\x00\x02\x00\x00\x00\x10\x00\x00\x00\x3e\
+\x00\x00\x00\x62\x00\x02\x00\x00\x00\x03\x00\x00\x00\x3b\
+\x00\x00\x00\x78\x00\x02\x00\x00\x00\x01\x00\x00\x00\x3a\
+\x00\x00\x01\x66\x00\x02\x00\x00\x00\x03\x00\x00\x00\x37\
+\x00\x00\x00\x9e\x00\x02\x00\x00\x00\x08\x00\x00\x00\x2f\
+\x00\x00\x01\x3e\x00\x02\x00\x00\x00\x01\x00\x00\x00\x2e\
+\x00\x00\x00\x4e\x00\x02\x00\x00\x00\x13\x00\x00\x00\x1b\
+\x00\x00\x01\x2a\x00\x02\x00\x00\x00\x06\x00\x00\x00\x15\
+\x00\x00\x04\x70\x00\x00\x00\x00\x00\x01\x00\x0a\xa7\x31\
+\x00\x00\x03\xae\x00\x00\x00\x00\x00\x01\x00\x00\x23\xa9\
+\x00\x00\x04\x10\x00\x00\x00\x00\x00\x01\x00\x05\x65\x6d\
+\x00\x00\x04\x3e\x00\x00\x00\x00\x00\x01\x00\x08\x06\x4f\
+\x00\x00\x03\xe0\x00\x00\x00\x00\x00\x01\x00\x02\xc4\x8b\
+\x00\x00\x04\xa0\x00\x00\x00\x00\x00\x01\x00\x0d\x48\x13\
+\x00\x00\x11\xb2\x00\x00\x00\x00\x00\x01\x00\x13\x92\x0d\
+\x00\x00\x12\x2e\x00\x00\x00\x00\x00\x01\x00\x13\x9b\xd4\
+\x00\x00\x11\x8c\x00\x00\x00\x00\x00\x01\x00\x13\x8f\x33\
+\x00\x00\x11\x12\x00\x00\x00\x00\x00\x01\x00\x13\x87\x1b\
+\x00\x00\x13\x6e\x00\x00\x00\x00\x00\x01\x00\x13\xb4\xa2\
+\x00\x00\x11\x62\x00\x00\x00\x00\x00\x01\x00\x13\x8c\x95\
+\x00\x00\x12\x04\x00\x00\x00\x00\x00\x01\x00\x13\x98\xef\
+\x00\x00\x10\xb0\x00\x00\x00\x00\x00\x01\x00\x13\x80\x01\
+\x00\x00\x12\xaa\x00\x00\x00\x00\x00\x01\x00\x13\xa5\xf8\
+\x00\x00\x13\x22\x00\x00\x00\x00\x00\x01\x00\x13\xae\x1c\
+\x00\x00\x12\x56\x00\x00\x00\x00\x00\x01\x00\x13\x9f\x48\
+\x00\x00\x13\x48\x00\x00\x00\x00\x00\x01\x00\x13\xb1\xce\
+\x00\x00\x10\xe8\x00\x00\x00\x00\x00\x01\x00\x13\x84\xa3\
+\x00\x00\x12\xf8\x00\x00\x00\x00\x00\x01\x00\x13\xab\x9a\
+\x00\x00\x11\x3e\x00\x00\x00\x00\x00\x01\x00\x13\x8a\x4e\
+\x00\x00\x11\xd8\x00\x00\x00\x00\x00\x01\x00\x13\x94\x44\
+\x00\x00\x10\x8c\x00\x00\x00\x00\x00\x01\x00\x13\x7d\x04\
+\x00\x00\x12\xd2\x00\x00\x00\x00\x00\x01\x00\x13\xa8\x0b\
+\x00\x00\x12\x84\x00\x00\x00\x00\x00\x01\x00\x13\xa3\xe1\
+\x00\x00\x03\x8a\x00\x00\x00\x00\x00\x01\x00\x00\x21\x92\
+\x00\x00\x0d\x4c\x00\x00\x00\x00\x00\x01\x00\x11\xfe\x7c\
+\x00\x00\x0d\xcc\x00\x00\x00\x00\x00\x01\x00\x12\x05\x42\
+\x00\x00\x0c\xd0\x00\x00\x00\x00\x00\x01\x00\x11\xf7\x78\
+\x00\x00\x0d\x74\x00\x00\x00\x00\x00\x01\x00\x12\x01\x1c\
+\x00\x00\x0d\xf6\x00\x00\x00\x00\x00\x01\x00\x12\x08\x0d\
+\x00\x00\x0d\x1a\x00\x00\x00\x00\x00\x01\x00\x11\xfc\x92\
+\x00\x00\x0c\xf4\x00\x00\x00\x00\x00\x01\x00\x11\xfa\x1f\
+\x00\x00\x0d\xaa\x00\x00\x00\x00\x00\x01\x00\x12\x02\x9e\
+\x00\x00\x01\x80\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\
+\x00\x00\x01\xe6\x00\x00\x00\x00\x00\x01\x00\x00\x05\xe6\
+\x00\x00\x01\xb2\x00\x00\x00\x00\x00\x01\x00\x00\x02\xfe\
+\x00\x00\x0f\xdc\x00\x00\x00\x00\x00\x01\x00\x12\x23\x5b\
+\x00\x00\x10\x06\x00\x00\x00\x00\x00\x01\x00\x12\x28\xc5\
+\x00\x00\x10\x36\x00\x00\x00\x00\x00\x01\x00\x12\x97\x4e\
+\x00\x00\x10\x56\x00\x00\x00\x00\x00\x01\x00\x12\x9d\xff\
+\x00\x00\x14\x34\x00\x00\x00\x00\x00\x01\x00\x13\xc2\x69\
+\x00\x00\x13\xda\x00\x00\x00\x00\x00\x01\x00\x13\xbd\x68\
+\x00\x00\x16\x50\x00\x00\x00\x00\x00\x01\x00\x13\xec\x6e\
+\x00\x00\x14\xda\x00\x00\x00\x00\x00\x01\x00\x13\xca\x73\
+\x00\x00\x14\x76\x00\x00\x00\x00\x00\x01\x00\x13\xc5\xbc\
+\x00\x00\x14\x00\x00\x00\x00\x00\x00\x01\x00\x13\xc0\x99\
+\x00\x00\x15\xa2\x00\x00\x00\x00\x00\x01\x00\x13\xdd\x49\
+\x00\x00\x15\x40\x00\x00\x00\x00\x00\x01\x00\x13\xd5\x19\
+\x00\x00\x16\x76\x00\x00\x00\x00\x00\x01\x00\x13\xef\x50\
+\x00\x00\x16\x1c\x00\x00\x00\x00\x00\x01\x00\x13\xe8\x91\
+\x00\x00\x15\x6c\x00\x00\x00\x00\x00\x01\x00\x13\xda\x25\
+\x00\x00\x16\xa8\x00\x00\x00\x00\x00\x01\x00\x13\xf3\x0d\
+\x00\x00\x15\xc4\x00\x00\x00\x00\x00\x01\x00\x13\xe1\xb8\
+\x00\x00\x15\x08\x00\x00\x00\x00\x00\x01\x00\x13\xd2\xa3\
+\x00\x00\x15\xf2\x00\x00\x00\x00\x00\x01\x00\x13\xe6\x09\
+\x00\x00\x14\xa4\x00\x00\x00\x00\x00\x01\x00\x13\xc7\xc3\
+\x00\x00\x0b\x2c\x00\x00\x00\x00\x00\x01\x00\x11\x9f\x6b\
+\x00\x00\x0b\x4c\x00\x00\x00\x00\x00\x01\x00\x11\xa3\x48\
+\x00\x00\x0b\x06\x00\x00\x00\x00\x00\x01\x00\x11\x9c\xcd\
+\x00\x00\x0e\xba\x00\x00\x00\x00\x00\x01\x00\x12\x12\x29\
+\x00\x00\x0f\x58\x00\x00\x00\x00\x00\x01\x00\x12\x1c\x9e\
+\x00\x00\x0f\xb2\x00\x00\x00\x00\x00\x01\x00\x12\x21\x57\
+\x00\x00\x0e\x50\x00\x00\x00\x00\x00\x01\x00\x12\x0e\x39\
+\x00\x00\x0f\x34\x00\x00\x00\x00\x00\x01\x00\x12\x19\x6b\
+\x00\x00\x0e\x84\x00\x00\x00\x00\x00\x01\x00\x12\x10\x30\
+\x00\x00\x0e\xee\x00\x00\x00\x00\x00\x01\x00\x12\x14\x27\
+\x00\x00\x0f\x10\x00\x00\x00\x00\x00\x01\x00\x12\x16\x3a\
+\x00\x00\x0f\x8e\x00\x00\x00\x00\x00\x01\x00\x12\x1e\x86\
+\x00\x00\x0e\x28\x00\x00\x00\x00\x00\x01\x00\x12\x0b\x7d\
+\x00\x00\x07\x84\x00\x00\x00\x00\x00\x01\x00\x11\x50\x13\
+\x00\x00\x07\xaa\x00\x00\x00\x00\x00\x01\x00\x11\x52\x77\
+\x00\x00\x07\x60\x00\x00\x00\x00\x00\x01\x00\x11\x4d\xce\
+\x00\x00\x03\x12\x00\x00\x00\x00\x00\x01\x00\x00\x1b\x20\
+\x00\x00\x02\x96\x00\x00\x00\x00\x00\x01\x00\x00\x11\xc5\
+\x00\x00\x02\x3a\x00\x00\x00\x00\x00\x01\x00\x00\x0c\x03\
+\x00\x00\x02\xc4\x00\x00\x00\x00\x00\x01\x00\x00\x15\x7b\
+\x00\x00\x02\x12\x00\x00\x00\x00\x00\x01\x00\x00\x09\x05\
+\x00\x00\x02\x60\x00\x00\x00\x00\x00\x01\x00\x00\x0f\x9a\
+\x00\x00\x02\xec\x00\x00\x00\x00\x00\x01\x00\x00\x18\xbd\
+\x00\x00\x03\x62\x00\x00\x00\x00\x00\x01\x00\x00\x1f\x8c\
+\x00\x00\x03\x3a\x00\x00\x00\x00\x00\x01\x00\x00\x1d\x72\
+\x00\x00\x05\xe8\x00\x00\x00\x00\x00\x01\x00\x0f\xf8\xbd\
+\x00\x00\x06\x0c\x00\x00\x00\x00\x00\x01\x00\x0f\xfe\xdb\
+\x00\x00\x05\x4a\x00\x00\x00\x00\x00\x01\x00\x0f\xf2\x3b\
+\x00\x00\x04\xdc\x00\x00\x00\x00\x00\x01\x00\x0f\xe8\xf5\
+\x00\x00\x05\x18\x00\x00\x00\x00\x00\x01\x00\x0f\xf0\xe8\
+\x00\x00\x05\xb2\x00\x00\x00\x00\x00\x01\x00\x0f\xf7\x01\
+\x00\x00\x05\x80\x00\x00\x00\x00\x00\x01\x00\x0f\xf5\x39\
+\x00\x00\x16\xcc\x00\x00\x00\x00\x00\x01\x00\x13\xf6\xc0\
+\x00\x00\x17\x00\x00\x00\x00\x00\x00\x01\x00\x13\xf9\x90\
+\x00\x00\x13\x96\x00\x00\x00\x00\x00\x01\x00\x13\xb7\xe7\
+\x00\x00\x13\xba\x00\x00\x00\x00\x00\x01\x00\x13\xba\xe5\
+\x00\x00\x08\x02\x00\x00\x00\x00\x00\x01\x00\x11\x5d\xa6\
+\x00\x00\x08\xe0\x00\x00\x00\x00\x00\x01\x00\x11\x6d\xf6\
+\x00\x00\x0a\xe6\x00\x00\x00\x00\x00\x01\x00\x11\x98\xda\
+\x00\x00\x0a\xb4\x00\x00\x00\x00\x00\x01\x00\x11\x91\xc4\
+\x00\x00\x09\x9a\x00\x00\x00\x00\x00\x01\x00\x11\x76\xc4\
+\x00\x00\x08\x4a\x00\x00\x00\x00\x00\x01\x00\x11\x64\x0b\
+\x00\x00\x0a\x3a\x00\x00\x00\x00\x00\x01\x00\x11\x89\x83\
+\x00\x00\x0a\x64\x00\x00\x00\x00\x00\x01\x00\x11\x8b\xb8\
+\x00\x00\x09\x3a\x00\x00\x00\x00\x00\x01\x00\x11\x72\xa7\
+\x00\x00\x09\x68\x00\x00\x00\x00\x00\x01\x00\x11\x75\x27\
+\x00\x00\x08\x6e\x00\x00\x00\x00\x00\x01\x00\x11\x66\xa9\
+\x00\x00\x08\xc0\x00\x00\x00\x00\x00\x01\x00\x11\x6a\xea\
+\x00\x00\x09\x08\x00\x00\x00\x00\x00\x01\x00\x11\x71\x54\
+\x00\x00\x09\xec\x00\x00\x00\x00\x00\x01\x00\x11\x7d\x39\
+\x00\x00\x09\xc0\x00\x00\x00\x00\x00\x01\x00\x11\x7a\xd6\
+\x00\x00\x0a\x86\x00\x00\x00\x00\x00\x01\x00\x11\x8f\xbc\
+\x00\x00\x07\xd4\x00\x00\x00\x00\x00\x01\x00\x11\x56\xe8\
+\x00\x00\x08\x26\x00\x00\x00\x00\x00\x01\x00\x11\x60\x92\
+\x00\x00\x08\x9e\x00\x00\x00\x00\x00\x01\x00\x11\x67\xa2\
+\x00\x00\x0a\x0a\x00\x00\x00\x00\x00\x01\x00\x11\x7f\xdb\
+\x00\x00\x0b\xe0\x00\x00\x00\x00\x00\x01\x00\x11\xdc\x80\
+\x00\x00\x0c\x14\x00\x00\x00\x00\x00\x01\x00\x11\xdf\x83\
+\x00\x00\x0c\x8a\x00\x00\x00\x00\x00\x01\x00\x11\xed\xbb\
+\x00\x00\x0b\xb0\x00\x00\x00\x00\x00\x01\x00\x11\xda\x27\
+\x00\x00\x0c\x5a\x00\x00\x00\x00\x00\x01\x00\x11\xea\x88\
+\x00\x00\x0c\xac\x00\x00\x00\x00\x00\x01\x00\x11\xf0\x91\
+\x00\x00\x0b\x6e\x00\x00\x00\x00\x00\x01\x00\x11\xa6\x82\
+\x00\x00\x0c\x36\x00\x00\x00\x00\x00\x01\x00\x11\xe3\x56\
+\x00\x00\x17\x30\x00\x00\x00\x00\x00\x01\x00\x13\xfc\x89\
+\x00\x00\x17\x92\x00\x00\x00\x00\x00\x01\x00\x14\x02\xff\
+\x00\x00\x17\x64\x00\x00\x00\x00\x00\x01\x00\x13\xff\xeb\
+\x00\x00\x17\xba\x00\x00\x00\x00\x00\x01\x00\x14\x05\x9d\
+\x00\x00\x06\xc8\x00\x00\x00\x00\x00\x01\x00\x10\x3b\xad\
+\x00\x00\x06\x68\x00\x00\x00\x00\x00\x01\x00\x10\x0c\x6d\
+\x00\x00\x06\x38\x00\x00\x00\x00\x00\x01\x00\x10\x01\xd9\
+\x00\x00\x06\x98\x00\x00\x00\x00\x00\x01\x00\x10\x21\xa2\
+\x00\x00\x06\xf8\x00\x00\x00\x00\x00\x01\x00\x10\x3f\xca\
+\x00\x00\x07\x2c\x00\x00\x00\x00\x00\x01\x00\x11\x08\x63\
"
def qInitResources():
=== modified file 'openlp/core/ui/pluginform.py'
--- openlp/core/ui/pluginform.py 2014-03-20 19:10:31 +0000
+++ openlp/core/ui/pluginform.py 2014-04-20 20:23:26 +0000
@@ -30,7 +30,6 @@
The actual plugin view form
"""
import logging
-import os
from PyQt4 import QtGui
=== modified file 'openlp/plugins/remotes/lib/httprouter.py'
--- openlp/plugins/remotes/lib/httprouter.py 2014-03-18 20:36:02 +0000
+++ openlp/plugins/remotes/lib/httprouter.py 2014-04-20 20:23:26 +0000
@@ -149,11 +149,11 @@
"""
Initialise the router stack and any other variables.
"""
- authcode = "%s:%s" % (Settings().value('remotes/user id'), Settings().value('remotes/password'))
+ auth_code = "%s:%s" % (Settings().value('remotes/user id'), Settings().value('remotes/password'))
try:
- self.auth = base64.b64encode(authcode)
+ self.auth = base64.b64encode(auth_code)
except TypeError:
- self.auth = base64.b64encode(authcode.encode()).decode()
+ self.auth = base64.b64encode(auth_code.encode()).decode()
self.routes = [
('^/$', {'function': self.serve_file, 'secure': False}),
('^/(stage)$', {'function': self.serve_file, 'secure': False}),
@@ -376,7 +376,6 @@
Examines the extension of the file and determines what the content_type should be, defaults to text/plain
Returns the extension and the content_type
"""
- content_type = 'text/plain'
ext = os.path.splitext(file_name)[1]
content_type = FILE_TYPES.get(ext, 'text/plain')
return ext, content_type
@@ -439,7 +438,7 @@
if plugin.status == PluginStatus.Active:
try:
text = json.loads(self.request_data)['request']['text']
- except KeyError as ValueError:
+ except KeyError:
return self.do_http_error()
text = urllib.parse.unquote(text)
self.alerts_manager.emit(QtCore.SIGNAL('alerts_text'), [text])
@@ -453,6 +452,7 @@
"""
Perform an action on the slide controller.
"""
+ log.debug("controller_text var = %s" % var)
current_item = self.live_controller.service_item
data = []
if current_item:
@@ -488,7 +488,7 @@
if self.request_data:
try:
data = json.loads(self.request_data)['request']['id']
- except KeyError as ValueError:
+ except KeyError:
return self.do_http_error()
log.info(data)
# This slot expects an int within a list.
@@ -547,7 +547,7 @@
"""
try:
text = json.loads(self.request_data)['request']['text']
- except KeyError as ValueError:
+ except KeyError:
return self.do_http_error()
text = urllib.parse.unquote(text)
plugin = self.plugin_manager.get_plugin_by_name(plugin_name)
@@ -563,12 +563,12 @@
Go live on an item of type ``plugin``.
"""
try:
- id = json.loads(self.request_data)['request']['id']
- except KeyError as ValueError:
+ request_id = json.loads(self.request_data)['request']['id']
+ except KeyError:
return self.do_http_error()
plugin = self.plugin_manager.get_plugin_by_name(plugin_name)
if plugin.status == PluginStatus.Active and plugin.media_item:
- plugin.media_item.emit(QtCore.SIGNAL('%s_go_live' % plugin_name), [id, True])
+ plugin.media_item.emit(QtCore.SIGNAL('%s_go_live' % plugin_name), [request_id, True])
return self.do_http_success()
def add_to_service(self, plugin_name):
@@ -576,11 +576,11 @@
Add item of type ``plugin_name`` to the end of the service.
"""
try:
- id = json.loads(self.request_data)['request']['id']
- except KeyError as ValueError:
+ request_id = json.loads(self.request_data)['request']['id']
+ except KeyError:
return self.do_http_error()
plugin = self.plugin_manager.get_plugin_by_name(plugin_name)
if plugin.status == PluginStatus.Active and plugin.media_item:
- item_id = plugin.media_item.create_item_from_id(id)
+ item_id = plugin.media_item.create_item_from_id(request_id)
plugin.media_item.emit(QtCore.SIGNAL('%s_add_to_service' % plugin_name), [item_id, True])
self.do_http_success()
=== modified file 'openlp/plugins/remotes/lib/httpserver.py'
--- openlp/plugins/remotes/lib/httpserver.py 2014-04-02 18:51:21 +0000
+++ openlp/plugins/remotes/lib/httpserver.py 2014-04-20 20:23:26 +0000
@@ -40,7 +40,7 @@
from PyQt4 import QtCore
-from openlp.core.common import AppLocation, Settings
+from openlp.core.common import AppLocation, Settings, RegistryProperties
from openlp.plugins.remotes.lib import HttpRouter
@@ -94,13 +94,18 @@
"""
self.http_server.start_server()
-
-class OpenLPServer():
+ def stop(self):
+ log.debug("stop called")
+ self.http_server.stop = True
+
+
+class OpenLPServer(RegistryProperties):
def __init__(self):
"""
Initialise the http server, and start the server of the correct type http / https
"""
- log.debug('Initialise httpserver')
+ super(OpenLPServer, self).__init__()
+ log.debug('Initialise OpenLP')
self.settings_section = 'remotes'
self.http_thread = HttpThread(self)
self.http_thread.start()
@@ -110,32 +115,49 @@
Start the correct server and save the handler
"""
address = Settings().value(self.settings_section + '/ip address')
- if Settings().value(self.settings_section + '/https enabled'):
+ self.address = address
+ self.is_secure = Settings().value(self.settings_section + '/https enabled')
+ self.needs_authentication = Settings().value(self.settings_section + '/authentication enabled')
+ if self.is_secure:
port = Settings().value(self.settings_section + '/https port')
- self.httpd = HTTPSServer((address, port), CustomHandler)
- log.debug('Started ssl httpd...')
+ self.port = port
+ self.start_server_instance(address, port, HTTPSServer)
else:
port = Settings().value(self.settings_section + '/port')
- loop = 1
- while loop < 3:
- try:
- self.httpd = ThreadingHTTPServer((address, port), CustomHandler)
- except OSError:
- loop += 1
- time.sleep(0.1)
- except:
- log.error('Failed to start server ')
- log.debug('Started non ssl httpd...')
+ self.port = port
+ self.start_server_instance(address, port, ThreadingHTTPServer)
if hasattr(self, 'httpd') and self.httpd:
self.httpd.serve_forever()
else:
log.debug('Failed to start server')
+ def start_server_instance(self, address, port, server_class):
+ """
+ Start the server
+
+ :param address: The server address
+ :param port: The run port
+ :param server_class: the class to start
+ """
+ loop = 1
+ while loop < 4:
+ try:
+ self.httpd = server_class((address, port), CustomHandler)
+ log.debug("Server started for class %s %s %d" % (server_class, address, port))
+ except OSError:
+ log.debug("failed to start http server thread state %d %s" %
+ (loop, self.http_thread.isRunning()))
+ loop += 1
+ time.sleep(0.1)
+ except:
+ log.error('Failed to start server ')
+
def stop_server(self):
"""
Stop the server
"""
- self.http_thread.exit(0)
+ if self.http_thread.isRunning():
+ self.http_thread.stop()
self.httpd = None
log.debug('Stopped the server.')
=== modified file 'openlp/plugins/remotes/lib/remotetab.py'
--- openlp/plugins/remotes/lib/remotetab.py 2014-03-21 21:38:08 +0000
+++ openlp/plugins/remotes/lib/remotetab.py 2014-04-20 20:23:26 +0000
@@ -32,7 +32,7 @@
from PyQt4 import QtCore, QtGui, QtNetwork
from openlp.core.common import AppLocation, Settings, translate
-from openlp.core.lib import SettingsTab
+from openlp.core.lib import SettingsTab, build_icon
ZERO_URL = '0.0.0.0'
@@ -234,6 +234,7 @@
"""
Load the configuration and update the server configuration if necessary
"""
+ self.is_secure = Settings().value(self.settings_section + '/https enabled')
self.port_spin_box.setValue(Settings().value(self.settings_section + '/port'))
self.https_port_spin_box.setValue(Settings().value(self.settings_section + '/https port'))
self.address_edit.setText(Settings().value(self.settings_section + '/ip address'))
@@ -263,9 +264,7 @@
Settings().value(self.settings_section + '/port') != self.port_spin_box.value() or \
Settings().value(self.settings_section + '/https port') != self.https_port_spin_box.value() or \
Settings().value(self.settings_section + '/https enabled') != \
- self.https_settings_group_box.isChecked() or \
- Settings().value(self.settings_section + '/authentication enabled') != \
- self.user_login_group_box.isChecked():
+ self.https_settings_group_box.isChecked():
self.settings_form.register_post_process('remotes_config_updated')
Settings().setValue(self.settings_section + '/port', self.port_spin_box.value())
Settings().setValue(self.settings_section + '/https port', self.https_port_spin_box.value())
@@ -275,6 +274,7 @@
Settings().setValue(self.settings_section + '/authentication enabled', self.user_login_group_box.isChecked())
Settings().setValue(self.settings_section + '/user id', self.user_id.text())
Settings().setValue(self.settings_section + '/password', self.password.text())
+ self.generate_icon()
def on_twelve_hour_check_box_changed(self, check_state):
"""
@@ -290,3 +290,25 @@
Invert the HTTP group box based on Https group settings
"""
self.http_settings_group_box.setEnabled(not self.https_settings_group_box.isChecked())
+
+ def generate_icon(self):
+ """
+ Generate icon for main window
+ """
+ self.remote_server_icon.hide()
+ icon = QtGui.QImage(':/remote/network_server.png')
+ icon = icon.scaled(80, 80, QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation)
+ if self.is_secure:
+ overlay = QtGui.QImage(':/remote/network_ssl.png')
+ overlay = overlay.scaled(60, 60, QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation)
+ painter = QtGui.QPainter(icon)
+ painter.drawImage(0, 0, overlay)
+ painter.end()
+ if Settings().value(self.settings_section + '/authentication enabled'):
+ overlay = QtGui.QImage(':/remote/network_auth.png')
+ overlay = overlay.scaled(60, 60, QtCore.Qt.KeepAspectRatio, QtCore.Qt.SmoothTransformation)
+ painter = QtGui.QPainter(icon)
+ painter.drawImage(20, 0, overlay)
+ painter.end()
+ self.remote_server_icon.setPixmap(QtGui.QPixmap.fromImage(icon))
+ self.remote_server_icon.show()
=== modified file 'openlp/plugins/remotes/remoteplugin.py'
--- openlp/plugins/remotes/remoteplugin.py 2014-04-12 20:19:22 +0000
+++ openlp/plugins/remotes/remoteplugin.py 2014-04-20 20:23:26 +0000
@@ -28,7 +28,8 @@
###############################################################################
import logging
-import time
+
+from PyQt4 import QtGui
from openlp.core.lib import Plugin, StringContent, translate, build_icon
from openlp.plugins.remotes.lib import RemoteTab, OpenLPServer
@@ -67,6 +68,21 @@
log.debug('initialise')
super(RemotesPlugin, self).initialise()
self.server = OpenLPServer()
+ if not hasattr(self, 'remote_server_icon'):
+ self.remote_server_icon = QtGui.QLabel(self.main_window.status_bar)
+ size_policy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)
+ size_policy.setHorizontalStretch(0)
+ size_policy.setVerticalStretch(0)
+ size_policy.setHeightForWidth(self.remote_server_icon.sizePolicy().hasHeightForWidth())
+ self.remote_server_icon.setSizePolicy(size_policy)
+ self.remote_server_icon.setFrameShadow(QtGui.QFrame.Plain)
+ self.remote_server_icon.setLineWidth(1)
+ self.remote_server_icon.setScaledContents(True)
+ self.remote_server_icon.setFixedSize(20, 20)
+ self.remote_server_icon.setObjectName('remote_server_icon')
+ self.main_window.status_bar.insertPermanentWidget(2, self.remote_server_icon)
+ self.settings_tab.remote_server_icon = self.remote_server_icon
+ self.settings_tab.generate_icon()
def finalise(self):
"""
@@ -104,9 +120,11 @@
def config_update(self):
"""
- Called when Config is changed to restart the server on new address or port
+ Called when Config is changed to requests a restart with the server on new address or port
"""
log.debug('remote config changed')
- self.finalise()
- time.sleep(0.5)
- self.initialise()
+ QtGui.QMessageBox.information(self.main_window,
+ translate('RemotePlugin', 'Server Config Change'),
+ translate('RemotePlugin', 'Server configuration changes will require a restart '
+ 'to take effect.'),
+ QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
=== added file 'resources/images/network_auth.png'
Binary files resources/images/network_auth.png 1970-01-01 00:00:00 +0000 and resources/images/network_auth.png 2014-04-20 20:23:26 +0000 differ
=== added file 'resources/images/network_server.png'
Binary files resources/images/network_server.png 1970-01-01 00:00:00 +0000 and resources/images/network_server.png 2014-04-20 20:23:26 +0000 differ
=== added file 'resources/images/network_ssl.png'
Binary files resources/images/network_ssl.png 1970-01-01 00:00:00 +0000 and resources/images/network_ssl.png 2014-04-20 20:23:26 +0000 differ
=== modified file 'resources/images/openlp-2.qrc'
--- resources/images/openlp-2.qrc 2013-12-31 22:27:27 +0000
+++ resources/images/openlp-2.qrc 2014-04-20 20:23:26 +0000
@@ -149,6 +149,11 @@
<file>messagebox_info.png</file>
<file>messagebox_warning.png</file>
</qresource>
+ <qresource prefix="remote">
+ <file>network_server.png</file>
+ <file>network_ssl.png</file>
+ <file>network_auth.png</file>
+ </qresource>
<qresource prefix="songusage">
<file>song_usage_active.png</file>
<file>song_usage_inactive.png</file>
=== modified file 'scripts/jenkins_script.py'
--- scripts/jenkins_script.py 2014-04-14 19:16:46 +0000
+++ scripts/jenkins_script.py 2014-04-20 20:23:26 +0000
@@ -148,7 +148,7 @@
def get_repo_name():
"""
- This returns the name of branch of the wokring directory. For example it returns *lp:~googol/openlp/render*.
+ This returns the name of branch of the working directory. For example it returns *lp:~googol/openlp/render*.
"""
# Run the bzr command.
bzr = Popen(('bzr', 'info'), stdout=PIPE, stderr=PIPE)
@@ -198,7 +198,7 @@
jenkins_trigger = JenkinsTrigger(token)
try:
jenkins_trigger.trigger_build()
- except HTTPError as e:
+ except HTTPError:
print('Wrong token.')
return
# Open the browser before printing the output.
=== modified file 'tests/functional/openlp_core_lib/test_file_dialog.py'
--- tests/functional/openlp_core_lib/test_file_dialog.py 2014-04-16 19:56:54 +0000
+++ tests/functional/openlp_core_lib/test_file_dialog.py 2014-04-20 20:23:26 +0000
@@ -53,8 +53,8 @@
self.mocked_os.rest()
self.mocked_qt_gui.reset()
- # GIVEN: A List of known values as a return value from QFileDialog.getOpenFileNames and a list of valid
- # file names.
+ # GIVEN: A List of known values as a return value from QFileDialog.getOpenFileNames and a list of valid file
+ # names.
self.mocked_qt_gui.QFileDialog.getOpenFileNames.return_value = [
'/Valid File', '/url%20encoded%20file%20%231', '/non-existing']
self.mocked_os.path.exists.side_effect = lambda file_name: file_name in [
Follow ups