Compare commits

..

382 Commits

Author SHA1 Message Date
c7c2ab02a7 fix bug #59365 2023-03-21 13:32:47 +03:00
9d9f6165b5 fix bug #61670 2023-03-20 21:34:14 +03:00
9ffb756c4f for bug #61641 2023-03-17 12:02:17 +03:00
78d1f6f1e4 fix bug #61633 2023-03-16 20:27:30 +03:00
f8717b5af0 fix bug #61635 2023-03-16 14:41:22 +03:00
b921bebc79 chart filtering 2023-03-15 19:47:48 +03:00
8807404baf Move ECMACryptFile to CryproPP library project 2023-03-15 12:37:59 +05:00
9688ed3d4c Merge branch 'develop' of https://github.com/ONLYOFFICE/core into develop 2023-03-12 13:54:39 +03:00
673b733a8d Add gcc version to base.pri 2023-03-12 13:53:59 +03:00
1a89252004 Fix typo 2023-03-12 12:11:14 +03:00
a1fd606050 Fix build 2023-03-12 11:52:13 +03:00
6d7a1421b2 Merge pull request #1155 from ONLYOFFICE/hotfix/v7.3.3
Hotfix/v7.3.3
2023-03-12 11:16:21 +03:00
5b8510353d Push changes for base file (pdf/xps/djvu module) 2023-03-12 10:26:49 +03:00
6df5bf924a Merge pull request #1154 from ONLYOFFICE/fix/fix-bugs-v7.3.3
Fix/fix bugs v7.3.3
2023-03-12 00:02:52 +03:00
8ca40a44ce fix bug #61586 2023-03-11 13:38:14 +03:00
3fa6152e69 fix bug #61588 2023-03-11 12:42:23 +03:00
8bd4dcece3 Merge pull request #1152 from ONLYOFFICE/fix/v7.3.3-fix-bugs
Fix/v7.3.3 fix bugs
2023-03-10 18:15:01 +03:00
7afe09ce09 fix bug #59365 2023-03-10 17:18:34 +03:00
3df0892752 Merge pull request #1153 from ONLYOFFICE/fix/bug61577
Fix bug #61577
2023-03-10 17:04:07 +03:00
deffa006b5 Fixed bug #61577 2023-03-10 17:02:48 +03:00
12326b3a4f fix bug #61456 2023-03-10 14:09:39 +03:00
ad72c997f2 fix bug #61459 2023-03-10 12:18:14 +03:00
4552ab2d6f font embedding comment 2023-03-10 12:16:20 +03:00
741213b126 Merge pull request #1151 from ONLYOFFICE/fix/bug61404
Fix bug 61404
2023-03-09 22:33:44 +03:00
73524ccc22 Fix build 2023-03-09 14:45:10 +03:00
4ca669b9cd Fixed a bug with clips in metafile -> svg conversion 2023-03-09 12:34:29 +03:00
55578a0026 Changed the principle of working with clips in the metafile -> svg conversion 2023-03-07 19:14:46 +03:00
30733dfc71 Merge pull request #1150 from ONLYOFFICE/fix/fix-bug
fix checker for binary
2023-03-07 16:41:05 +03:00
530d1d1763 Fixed bug with rotated text position in metafile -> svg conversion 2023-03-07 15:23:47 +03:00
c252512786 fix checker for binary 2023-03-07 11:43:50 +03:00
0a0a7baaf7 Merge remote-tracking branch 'origin/hotfix/v7.3.3' into develop 2023-03-07 11:14:48 +03:00
03a276fd88 Merge pull request #1149 from ONLYOFFICE/fix/bug61475
Fix bug #61475
2023-03-06 20:29:44 +03:00
d20b9321d4 Merge pull request #1148 from ONLYOFFICE/fix/v7.3.3-fix-bugs
fix bug #61508
2023-03-06 20:23:34 +03:00
42a4f8c909 Fix bug #61475 2023-03-06 20:18:36 +03:00
22842c069a fix bug #61508 2023-03-06 18:50:21 +03:00
8206a74694 Merge branch 'develop' of https://github.com/ONLYOFFICE/core into develop 2023-03-06 18:46:42 +03:00
0aaff62cba . 2023-03-06 18:46:32 +03:00
0d66a203d6 PathCommandText for CPdfWriter
analogue of PathCommandText from graphic renderer for CPdfWriter
2023-03-06 18:14:54 +03:00
0d9052d25c Fixed bug with text position in metafile -> svg conversion 2023-03-06 14:13:19 +03:00
3c28cf6022 Fix build with c++17 2023-03-05 19:02:07 +05:00
fd865782a8 fix bug #60339 2023-03-04 20:03:14 +03:00
49a339ad56 Working with clips in metafile -> svg conversion 2023-03-03 17:26:16 +03:00
f2533bc6a0 fix bug #60847 2023-03-03 14:58:26 +03:00
ce64eca658 . 2023-03-03 00:00:12 +03:00
8a0c070990 fix bug #61456 2023-03-02 23:57:22 +03:00
b3cef38315 Merge pull request #1147 from ONLYOFFICE/feature/x2ttester
Fix bug 61452
2023-03-02 17:42:11 +03:00
8646fd4271 Fix bug 61452
passwords
2023-03-02 17:36:48 +03:00
1d0bb53607 fix bug #61445 2023-03-02 16:04:56 +03:00
e83e025748 fix bug #61318 2023-03-02 14:25:08 +03:00
3ef0ed1d36 [copyright] Update address in Copyright 2023-03-01 23:21:57 +03:00
9f18768e5d Added support for recording EMR_GRADIENT FILL in EMF and working with clips 2023-03-01 17:10:35 +03:00
fd1e49ec2d [FontMaps] Change built-in license to Common/license/header.license 2023-03-01 14:17:05 +03:00
66ac071c58 fix bug #61412 2023-03-01 12:46:15 +03:00
03d88de461 Merge pull request #1145 from ONLYOFFICE/feature/copyright-2023
Feature/copyright 2023
2023-03-01 10:10:48 +03:00
cd8ce24a70 fix bug #61406 2023-02-28 20:00:50 +03:00
a7c70687c9 for bug #61375 2023-02-28 19:37:01 +03:00
e412983314 Added the removal of excess from the font when converting metafile->svg 2023-02-28 19:25:05 +03:00
de278ff550 Fix bug #61404 2023-02-28 19:10:51 +03:00
5d0f0875be for bug #61375 2023-02-28 17:21:07 +03:00
365d8bf95a Add test for all systems 2023-02-28 16:29:40 +03:00
7e5332eba5 [x2t] Add mhtml ext for bug 61381 2023-02-28 16:27:11 +03:00
f7f5bb89c1 [copyright] Add Copyright 2023-02-28 14:56:22 +03:00
5102820231 [copyright] Fix invalid Copyright 2023-02-28 14:18:51 +03:00
313af0b405 Merge pull request #1144 from ONLYOFFICE/fix/bug61383
Fix bug #61383
2023-02-28 14:18:08 +03:00
4aa56f8aa0 For bug #61383 2023-02-28 13:22:12 +03:00
ffe2806bc8 fix bug #61353 2023-02-28 12:48:47 +03:00
7dcbd57aa7 Fix bug #61383 2023-02-28 12:44:41 +03:00
57ccbc0fb6 [copyright] Update Copyright 2023-02-28 11:16:40 +03:00
ff427c547d [copyright] Fix invalid Copyright 2023-02-28 01:12:57 +03:00
4d5a2967e3 [copyright] Update Copyright 2023-02-28 00:57:11 +03:00
cdb72bab80 fix bug #61375 2023-02-27 18:05:19 +03:00
b15aff55d1 Refactoring socketio websocket realization 2023-02-26 12:42:33 +05:00
d3423f93eb Fix build 2023-02-24 13:55:59 +03:00
0f9cc64520 Fix bug 61302 2023-02-23 21:45:50 +03:00
2309f915b4 Fix bug 61296 2023-02-23 21:42:12 +03:00
a61543bff9 to develop 2023-02-22 18:47:05 +03:00
299e91c747 CurvedLeftArrow revert 2023-02-22 16:23:11 +03:00
6633335912 fix shapes scaling 2023-02-22 15:46:17 +03:00
60bae43495 Fix bug #61321 2023-02-22 10:08:10 +03:00
77297aedc8 Remove unused code 2023-02-22 09:42:47 +03:00
c47e0369a1 . 2023-02-21 14:21:14 +03:00
416b120842 Merge remote-tracking branch 'origin/fix/coderefact' into develop 2023-02-21 13:09:12 +03:00
1e34dc736e . 2023-02-21 13:08:33 +03:00
4c20531b30 Merge remote-tracking branch 'origin/hotfix/v7.3.3' into develop 2023-02-21 13:06:23 +03:00
ecd2a5eba1 fix bug #61294 2023-02-21 12:22:15 +03:00
2ee8dead85 Merge branch 'develop' into fix/coderefact 2023-02-21 11:56:16 +03:00
88ae812a90 common shapetypes for doc, xls, pptx
TODO: make ShapeType as parent for PptShape
2023-02-21 11:55:59 +03:00
835f88edf5 add userProtectedRanges 2023-02-21 00:20:14 +03:00
698def3934 fix bug #61070 2023-02-20 11:51:47 +03:00
6228c41af4 chart refactoring
chart external rels
2023-02-20 09:59:06 +03:00
bb0d2eea84 Merge branch 'develop' into fix/coderefact 2023-02-17 15:27:58 +03:00
a704a74fed common shapes for xls, pptx 2023-02-17 15:23:50 +03:00
00e9550927 . 2023-02-17 10:46:38 +03:00
8e36d60e4b fix bug #61222 2023-02-16 22:17:12 +03:00
daa392556a fix bug #61243 2023-02-16 21:49:22 +03:00
eea5608399 Merge pull request #1143 from ONLYOFFICE/fix/pdfLinks
fix pdf Links
2023-02-16 20:11:28 +03:00
a4fd9eba94 Merge remote-tracking branch 'origin/fix/v.7.3.3-chart-ex' into develop 2023-02-16 19:29:00 +03:00
1f3a104356 chart refactoring 2023-02-16 19:24:16 +03:00
a03b876269 Use sync_close instead of close 2023-02-16 19:23:15 +03:00
eecf268ac9 fix pdf Links
part of 52583
2023-02-16 18:26:21 +03:00
907734a202 pptx short project
Logic pri
2023-02-15 20:04:19 +03:00
3a4792e858 add extension 2023-02-15 17:52:27 +03:00
223c16f90e refactoring chart ooxml 2023-02-15 17:51:17 +03:00
2eeaaa7197 xls short project
Logic pri
2023-02-15 17:28:12 +03:00
9b419ce470 pptx refact 2023-02-15 13:15:39 +03:00
7f17ec7b29 doc: shapetypes pri 2023-02-14 16:21:32 +03:00
1fbbabeff0 . 2023-02-14 13:31:37 +03:00
bd895669f5 Merge branch 'hotfix/v7.3.3' into fix/v.7.3.3-chart-ex 2023-02-13 17:47:34 +03:00
ce6aeb48b7 - test project 2023-02-13 14:47:56 +03:00
7e767f0f3f fix bug #61031 2023-02-13 13:19:26 +03:00
cf37e1edef fix bug #61054 2023-02-13 11:59:31 +03:00
1427de8435 Merge branch 'develop' into fix/coderefact 2023-02-13 11:02:06 +03:00
eedcaa9768 . 2023-02-10 10:43:32 +03:00
c615afa80e . 2023-02-10 10:41:31 +03:00
93435fce9f Merge branch 'hotfix/v7.3.3' of https://github.com/ONLYOFFICE/core into hotfix/v7.3.3 2023-02-10 10:27:41 +03:00
c6d767d8d9 . 2023-02-10 10:27:24 +03:00
8a9861a583 Fix memory leaks. Add ARC in xcode frameworks 2023-02-10 11:32:53 +05:00
e71e4068e4 fix bug #61089 2023-02-09 20:37:28 +03:00
29804158f9 Merge pull request #1142 from ONLYOFFICE/fix/bug61103
Fix bug #61103
2023-02-09 16:21:31 +03:00
9683d6e78c fix bug #61117 2023-02-09 15:40:26 +03:00
4cfe02a387 Fix bug #61103 2023-02-09 15:09:04 +03:00
57145240be Merge pull request #1141 from ONLYOFFICE/feature/x2ttester
Fix bug 60966
2023-02-08 21:01:13 +03:00
7d6a29d063 Fix bug 60966
Add timeouts & update README
2023-02-08 20:18:21 +03:00
f5c4dab90b Update x2ttester
timeouts in lunix
2023-02-08 18:42:54 +03:00
f79ad969a4 Merge pull request #1140 from ONLYOFFICE/fix/bug61090
Fix bug #61090
2023-02-08 16:31:53 +03:00
916635782d Fixed working with Clip in wmf to svg conversion 2023-02-08 16:23:54 +03:00
96ff2246fa Fix bug #61090 2023-02-08 16:23:17 +03:00
1b10918258 Fix test.pro 2023-02-08 13:50:37 +03:00
4c9e904d10 . 2023-02-08 09:45:16 +03:00
edeebcc438 . 2023-02-07 17:53:37 +03:00
6fb6021ad3 Update x2ttester
Windows (bug 60966)
2023-02-07 15:56:53 +03:00
c14083795f . 2023-02-07 15:22:24 +03:00
11099d2575 Merge pull request #1139 from ONLYOFFICE/feature/android_packages
Added android packages
2023-02-07 13:12:11 +03:00
62d05c02fb Merge branch 'feature/odf_4' into develop 2023-02-07 11:56:50 +03:00
117edc9c96 fix main_document 2023-02-07 11:54:42 +03:00
a1195e038e add chart extensible 2023-02-07 10:25:47 +03:00
ff1e280d7d Merge branch 'develop' into feature/odf_4 2023-02-07 10:22:36 +03:00
000f64267f Merge pull request #1138 from ONLYOFFICE/fix/fix-develop
Fix/fix develop
2023-02-07 10:21:41 +03:00
1e5e533d68 Merge remote-tracking branch 'origin/hotfix/v7.3.3' into fix/fix-develop 2023-02-07 10:20:49 +03:00
ac0cdd8fa2 Merge branch 'develop' into fix/coderefact 2023-02-07 11:43:00 +05:00
52071831de Fix crash on using emdedder data in isolates 2023-02-06 11:36:45 +03:00
a133ce4714 Merge pull request #1136 from ONLYOFFICE/fix/pre7.3.3
Fix/pre7.3.3
2023-02-05 20:04:20 +05:00
608b04ca26 For bug 61014 2023-02-05 11:52:22 +03:00
2b6ad83b36 Fix bug 60433 2023-02-04 23:49:41 +03:00
f121da9f47 Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2023-02-04 17:49:33 +03:00
d6dfe0623f pptx forward decs 2023-02-02 15:14:17 +03:00
0b9dc3c296 for bug #60963 (change paragraph place) 2023-02-02 13:08:34 +03:00
47e0ccbe29 fix bug #60963 2023-02-02 12:32:50 +03:00
5d720e75f5 . 2023-02-02 11:03:33 +03:00
ad03ae0390 fix group ole/math_equation in sheets from/to ods 2023-02-01 20:06:57 +03:00
90d709972d Merge pull request #1134 from ONLYOFFICE/fix/v7.3.0-fix-bugs
Fix/v7.3.0 fix bugs
2023-02-01 17:59:43 +03:00
6f8251fe04 pptx forward decs 2023-02-01 10:06:56 +03:00
f77d3440f6 Merge pull request #1133 from ONLYOFFICE/feature/pre_7.3.1
Add support tls & no tls in socketio (double code)
2023-01-31 23:01:31 +05:00
d5ab557578 fix build 2023-01-31 16:35:31 +03:00
1b84274673 Add support tls & no tls in socketio (double code) 2023-01-31 18:07:33 +05:00
f601d95d27 package embedding in binary ms 2023-01-31 11:31:26 +03:00
c16d63c011 Merge branch release/v7.3.0 into master 2023-01-31 07:57:44 +00:00
4e0e0265d0 fix bug #51001 2023-01-30 11:36:01 +03:00
bbf661e74e Fix bug 60874 2023-01-27 23:00:04 +03:00
e5253bbf35 Merge pull request #1130 from ONLYOFFICE/fix/v7.3.0-fix-60848
fix bug #60848
2023-01-27 17:15:50 +05:00
c2591eea02 fix bug #60848 2023-01-27 14:02:04 +03:00
cf0e9febe5 Merge pull request #1129 from ONLYOFFICE/fix/v7.3.0-fix-bugs
for bug #60804
2023-01-26 23:35:19 +05:00
a3696b07df for bug #60804 2023-01-26 20:50:27 +03:00
32e1be7493 Fix bug 60858 2023-01-26 20:01:17 +03:00
46a37c9199 [android] Add publish url 2023-01-26 09:35:33 +03:00
aea4996a45 Fix bug 55616 2023-01-25 21:03:23 +03:00
28257fca25 Fix bug 60850 2023-01-25 19:10:26 +03:00
3b779ded76 pptx minor forward decs 2023-01-25 18:45:15 +03:00
f846881e88 Merge pull request #1128 from ONLYOFFICE/fix/bug60827
Fix bug 60827
2023-01-25 17:30:35 +03:00
961e955ee4 Fix escape characters im pdf metadata 2023-01-25 17:06:13 +03:00
ac7569bc51 Merge pull request #1127 from ONLYOFFICE/fix/bug60827
Fix bug 60827
2023-01-25 14:42:33 +03:00
1cd49c52d2 Fix bug 60827 2023-01-25 14:40:19 +03:00
d49b74c0e0 minors 2023-01-25 13:03:11 +03:00
8338ff75c8 Merge pull request #1124 from ONLYOFFICE/fix/x2ttester
Fix bug 60241
2023-01-25 12:31:10 +03:00
a215476303 fix bug #60823 2023-01-25 11:37:59 +03:00
7e765011b8 fix bug #60739 2023-01-25 11:28:43 +03:00
c2e4fcfebd [android] Add upload to github packages 2023-01-25 11:26:55 +03:00
e649ecb7a0 Fix memory leak 2023-01-25 01:00:33 +03:00
fc45ed4aaf Merge pull request #1126 from ONLYOFFICE/fix/bug60690
fix typo
2023-01-24 18:40:25 +03:00
5c6956b5d5 fix 2023-01-24 18:37:59 +03:00
8a728e2ec9 Merge pull request #1125 from ONLYOFFICE/fix/bug60690
Fix bug 60690
2023-01-24 18:34:41 +03:00
9a515fc99e fix SetChanged 2023-01-24 18:30:53 +03:00
71ab0560f2 fix bDropEmpty 2023-01-24 18:29:20 +03:00
255c8cd547 Fix bug 60690 2023-01-24 18:24:47 +03:00
e36b2bcd93 bDropEmpty path for fill and clip 2023-01-24 16:47:27 +03:00
79aede17c6 test page 2023-01-24 16:36:05 +03:00
23afcb430c Fix bug 60674 2023-01-24 16:24:53 +03:00
5d4d2d817c fix bug #60735 2023-01-24 16:07:34 +03:00
8a2234d2b5 Update README 2023-01-24 13:40:28 +03:00
3526b286c3 . 2023-01-24 11:32:37 +03:00
d0b9a8e052 . 2023-01-24 10:21:35 +03:00
497ec9b2f1 fix bug #60797 2023-01-23 23:15:18 +03:00
7a4353bc4a Merge branch 'release/v7.3.0' of https://github.com/ONLYOFFICE/core into release/v7.3.0 2023-01-23 20:56:53 +03:00
0b2fa174d5 Add ctDocInfo command in check commands 2023-01-23 20:55:34 +03:00
9b0cd732e3 fix bug #60794 2023-01-23 20:52:58 +03:00
062e410efc Merge pull request #1123 from ONLYOFFICE/fix/v7.3.0-fix-bugs
fix bug #60739
2023-01-23 20:37:17 +03:00
1faa2c3f77 fix bug #60739 2023-01-23 20:36:25 +03:00
43ebeec93c . 2023-01-23 20:32:21 +03:00
32a851b4e4 Merge commit 'a039a36b8fec3c6060b38aef476d8ce8e1845c76' into feature/odf_4 2023-01-23 19:56:11 +03:00
70c7635af6 Fix bug 60241 2023-01-23 16:17:59 +03:00
7ae87cf15a Merge pull request #1121 from ONLYOFFICE/fix/bug59621
Fix bug 59621
2023-01-23 15:59:28 +03:00
c73e91094f Merge pull request #1120 from ONLYOFFICE/fix/bug60665
Fix bug 60665
2023-01-23 15:58:20 +03:00
98df4659b5 Fix bug 59621 2023-01-23 15:26:01 +03:00
b2e2b06fc2 Fix bug 60665 2023-01-23 14:34:33 +03:00
a039a36b8f fix bug #60725 2023-01-23 12:01:47 +03:00
d6c4b2b95c Merge pull request #1119 from ONLYOFFICE/fix/html-docinfo
Fix html DocInfo
2023-01-23 10:15:36 +03:00
eb34cb7e23 Fix non-clean build 2023-01-22 20:29:16 +05:00
bc26f0bda4 Fix build 2023-01-22 17:50:09 +03:00
210d5ef30d Fix build in modern systems 2023-01-22 17:01:01 +03:00
b174c2c601 fix bug #60726 2023-01-22 15:13:54 +03:00
fa075d0224 Add support bundle_xcframeworks build flag 2023-01-22 13:24:46 +05:00
4a6c0e340b update external 2023-01-20 18:30:44 +03:00
65604849ac fix bug #60338 2023-01-20 18:18:50 +03:00
276de3c7b0 fix fb2 escaping characters 2023-01-20 17:42:09 +03:00
0ccd31865d fix bug #60674 2023-01-20 16:52:08 +03:00
ab2f79bd19 epub fix DocInfo 2023-01-20 16:08:55 +03:00
33ac9e4f5e Merge pull request #1118 from ONLYOFFICE/fix/metafile_bugs
Fix bug in metafile conversion
2023-01-20 15:52:19 +03:00
7f1e2370d2 fb2 fix DocInfo 2023-01-20 14:55:39 +03:00
a2aec43d22 doctrenderer delete asc_getCoreProps and x2t fix fb2/epub 2023-01-20 14:54:22 +03:00
aaae4d7728 [x2t] For bug 60665 2023-01-20 08:45:32 +03:00
2d1e08fbd1 Fix bug 60683 2023-01-19 22:42:10 +03:00
de4e27f5d7 Merge pull request #1117 from ONLYOFFICE/fix/x2ttester
Fix bug 60671
2023-01-19 19:09:53 +03:00
60e79db7b0 Fix misprint 2023-01-19 19:01:31 +03:00
00114714d1 Fix 2023-01-19 18:57:58 +03:00
62f98a8cc5 Fix
substr -> find
2023-01-19 18:42:00 +03:00
c6d9a22d16 Fix bug in metafile conversion 2023-01-19 18:37:00 +03:00
fab1c09db3 Fix 2023-01-19 18:27:09 +03:00
1911f11e51 Fix bug 60671 2023-01-19 18:01:40 +03:00
dfec7cb0bb . 2023-01-19 16:57:19 +03:00
8f11112c43 . 2023-01-19 16:35:55 +03:00
5071a61692 Merge pull request #1116 from ONLYOFFICE/fix/metafile_bugs
Fix metafile bugs
2023-01-19 13:39:48 +03:00
bd2736ab09 Fix bug in metafile conversion 2023-01-19 12:54:09 +03:00
04196de46e . 2023-01-19 12:23:15 +03:00
e4c334e84c Merge branch 'release/v7.3.0' of https://github.com/ONLYOFFICE/core into release/v7.3.0 2023-01-19 10:39:52 +03:00
6214f187e0 fix bug #60510 2023-01-19 10:37:08 +03:00
55857b803a Fix bug 60276 2023-01-18 23:55:31 +03:00
d1c68f38d7 Fix bug in metafile conversion 2023-01-18 19:49:29 +03:00
ab80f5e399 Fix bug in metafile to svg conversion 2023-01-18 18:38:08 +03:00
457e4dadce Merge pull request #1114 from ONLYOFFICE/fix/bug60648
Fix bug 60648
2023-01-18 13:22:15 +03:00
f556fcf3fc fix m_bChanged in vector 2023-01-18 12:45:10 +03:00
fd88dbd7df fix bug #60515 2023-01-18 12:37:58 +03:00
97f440ebab Fix bug 60648
related bug 59523
2023-01-18 11:27:23 +03:00
3dcc8e916d Merge pull request #1113 from ONLYOFFICE/fix/x2ttester
Fix bug 60241
2023-01-18 10:41:44 +03:00
a1a7b903b6 fix bug #60490 2023-01-17 23:25:23 +03:00
a9a7c3fb22 fix bug #59365 2023-01-17 22:51:44 +03:00
c76f50a2f8 Merge pull request #1105 from ONLYOFFICE/fix/bug59621
Fix bug 59621
2023-01-17 16:15:48 +03:00
830ef2ad60 refactoring
includes using forward declarations
2023-01-17 15:42:33 +03:00
55c2b426f4 Merge pull request #1112 from ONLYOFFICE/fix/metafile_bugs
Fix metafile bugs
2023-01-17 14:59:06 +03:00
c5729090b3 Merge pull request #1111 from ONLYOFFICE/fix/bug60468
Fix bug #60468
2023-01-17 14:58:34 +03:00
d3a98c0164 Added scaling of patterns in metafile to svg conversion 2023-01-17 14:46:37 +03:00
2bd9d2fdf3 Fix bug #60609 2023-01-17 12:35:57 +03:00
7065c1a563 Merge remote-tracking branch 'origin/fix/v7.3-fix-bugs-ppt2' into release/v7.3.0 2023-01-17 12:20:02 +03:00
866a36448f Fix bug in metafile to svg conversion 2023-01-17 11:57:29 +03:00
02155b0b97 Fix bug #60608 2023-01-17 11:56:46 +03:00
8e15985b83 Fix
Doesnt create any folders, if no output formats
2023-01-17 11:47:50 +03:00
96b5eae285 fix bug #59405 2023-01-17 10:23:25 +03:00
1792a24827 Merge branch 'develop' into fix/coderefact 2023-01-16 21:17:13 +03:00
898844453d Fix bug #60468 2023-01-16 19:33:07 +03:00
e9e87d89c9 Merge pull request #1110 from ONLYOFFICE/fix/bug60405
Fix bug #60405
2023-01-16 18:07:01 +03:00
5f31790f7a Fix bug #60405 2023-01-16 17:13:48 +03:00
ff9884b73d Fix 2023-01-16 17:06:41 +03:00
27bf69fd98 Fix bug 60513 2023-01-16 15:25:07 +03:00
e71d04bd9d Merge pull request #1109 from ONLYOFFICE/fix/v7.3.0-fix-bugs
.
2023-01-16 15:10:20 +03:00
3b802bac97 . 2023-01-16 15:09:38 +03:00
2129ed7492 Merge pull request #1108 from ONLYOFFICE/fix/v7.3.0-fix-bugs
Fix/v7.3.0 fix bugs
2023-01-16 15:08:49 +03:00
96a7298071 Merge remote-tracking branch 'origin/fix/v7.3-fix-bugs-ppt2' into fix/v7.3.0-fix-bugs 2023-01-16 15:04:08 +03:00
da6c775fb8 fix bug #55298 2023-01-16 15:03:53 +03:00
a445b973c2 Fix bug 60241 2023-01-16 14:33:29 +03:00
8f5a7218b8 Merge pull request #1106 from ONLYOFFICE/fix/metafile_to_svg
Fix bugs in metafile to svg conversion
2023-01-15 22:53:24 +03:00
c4ea1ee198 Merge pull request #1107 from ONLYOFFICE/fix/metafile_to_raster
Fix bug in metafile to raster conversion
2023-01-15 22:53:00 +03:00
4d678fc7a7 For bug 60488 2023-01-15 22:28:57 +03:00
0f1d473360 [test] Update test 2023-01-15 17:40:51 +03:00
738fea25e6 Fix bug 60141 2023-01-14 22:03:05 +03:00
c0097de544 docx refactoring
Correct includes using forward declarations
2023-01-14 10:59:34 +03:00
c07ae1bbb4 Merge branch 'develop' into fix/coderefact 2023-01-13 17:23:19 +03:00
349bed9dbc Fix bug #58904 2023-01-13 17:17:37 +03:00
b848c1b828 . 2023-01-13 17:14:51 +03:00
032ec1dffd Merge pull request #1101 from ONLYOFFICE/fix/bug60483
Fix bug 60483
2023-01-13 17:10:49 +03:00
b04bd26758 Merge pull request #1104 from ONLYOFFICE/fix/bug60114
Fix bug 60114
2023-01-13 16:43:30 +03:00
d67a10268a Fix bug 60114 2023-01-13 16:35:38 +03:00
1a7be8a6e8 Merge branch 'develop' into fix/coderefact 2023-01-13 15:52:36 +03:00
0d1877efb7 fix bug #59407 2023-01-13 15:40:14 +03:00
d43ff48bc6 Fix bug 60114 2023-01-13 14:57:09 +03:00
e02c6e81be Fix bug #60541 2023-01-13 13:30:52 +03:00
d23d795160 Fix bug 60139 2023-01-13 13:20:06 +03:00
2b5ffd05a2 Fix bug #60486 2023-01-13 13:11:01 +03:00
e297f32b31 fix bug #60542 2023-01-13 12:28:02 +03:00
06716f1607 . 2023-01-13 12:07:22 +03:00
0f64eadedb Fix bug 60511 2023-01-13 11:38:26 +03:00
13d1d3d3e9 x2t fix 2023-01-13 10:37:35 +03:00
6a5f065833 Merge branch 'develop' into fix/coderefact 2023-01-13 07:22:12 +03:00
1204a9a501 Add getPaths method to zip engine 2023-01-12 23:20:54 +03:00
1b6c278b87 minor 2023-01-12 22:45:54 +03:00
996475fca2 . 2023-01-12 22:29:34 +03:00
243214b060 . 2023-01-12 22:14:07 +03:00
7382845517 . 2023-01-12 22:02:50 +03:00
463befcc67 Merge remote-tracking branch 'origin/fix/coderefact' into develop 2023-01-12 16:08:55 +03:00
b1148caaed Merge remote-tracking branch 'origin/fix/bug59621' into develop 2023-01-12 16:08:39 +03:00
c37105e4ae Xlsx refactoring
Correct includes using forward declarations.
x2t compiled(debug/release) and checked.
2023-01-12 15:44:13 +03:00
8e7e317e4b Fix bug in metafile to svg conversion 2023-01-12 13:40:18 +03:00
05ffb10eaa fix part of 59407 bug 2023-01-12 13:36:10 +03:00
b1474a84c4 SetDocumentInfo 2023-01-12 11:05:05 +03:00
ec547778b5 Xlsx refactoring
correct includes using forward declarations
2023-01-12 09:26:29 +03:00
c14b1c73bf Xlsx refactoring
correct includes vai forward declarations
2023-01-11 21:53:50 +03:00
454ef30d56 creator 2023-01-11 17:54:12 +03:00
0570672f95 Merge pull request #1100 from ONLYOFFICE/fix/bug58644
Fix bug 58644
2023-01-11 16:11:03 +03:00
cf8b06f9c2 Merge pull request #1103 from ONLYOFFICE/fix/metafile_to_raster
Fixing bugs in converting metafile to raster
2023-01-11 16:09:07 +03:00
ba77b4632c Merge pull request #1102 from ONLYOFFICE/fix/metafile_to_svg
Fixing bugs in converting metafile to svg
2023-01-11 16:08:50 +03:00
40c65b46be Fix bug #60486 2023-01-11 15:53:08 +03:00
a4ec604b1b Fix bug #60485 2023-01-11 15:10:19 +03:00
9ae3d1623c Added a condition to the creation of lines in the metafile conversion to svg 2023-01-11 13:28:29 +03:00
551d356b79 Fixed a bug with creating a pattern in converting a metafile to svg 2023-01-11 13:11:39 +03:00
931e81a8a0 Refactoring 2023-01-11 12:51:16 +03:00
64a1fd5e7b Fixed a bug with inverted text in metafile to svg conversion 2023-01-11 12:47:58 +03:00
25b61c9838 Fixed bug #60480 2023-01-11 12:47:40 +03:00
d1dde6f1a0 Fix bug #60478 2023-01-10 19:29:57 +03:00
57427336fa Fix bug 60483 2023-01-10 15:59:19 +03:00
c2ef4a871c Merge branch 'release/v7.3.0' of https://github.com/ONLYOFFICE/core into release/v7.3.0 2023-01-10 14:24:51 +03:00
cd1e176b1d fix bug #60491 2023-01-10 14:24:39 +03:00
de1339af79 [mobile] Add document protection defines 2023-01-10 14:17:37 +03:00
2171b5530b fix bug #59705 2023-01-10 14:10:39 +03:00
1a6a9b5cb5 Fix bug 58644 2023-01-10 13:34:24 +03:00
3001b0b6d2 Fixed a bug in converting metafile to svg 2023-01-09 21:54:30 +03:00
2011bf6464 Fix bug #60471 2023-01-09 20:20:58 +03:00
f70be27826 Fix bug #60461 2023-01-09 19:29:26 +03:00
3941d51d1e add chart animatin. Fix part of 59407 2022-12-30 18:01:02 +03:00
24236ed509 Merge branch 'develop' into fix/coderefact 2022-12-30 16:56:59 +03:00
11f645cb2b Merge branch 'develop' of https://github.com/ONLYOFFICE/core into develop 2022-12-30 16:54:42 +03:00
dd02f82697 Merge branch 'develop' into fix/coderefact 2022-12-30 16:36:19 +03:00
fba7ca95f8 . 2022-12-30 15:08:19 +03:00
d2a7f573c6 . 2022-12-30 12:38:56 +03:00
b0769432d3 Merge remote-tracking branch 'origin/fix/coderefact' into develop 2022-12-30 12:16:52 +03:00
bd343c88d1 Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2022-12-30 12:15:42 +03:00
243d8dd2e1 xls impl separation
current step is needed to compare the implementations of shapes and further merge with pptx
2022-12-30 12:15:40 +03:00
2a8e7667bd xls changes
revert common xls-pptx shapes (required common BaseShape)
2022-12-29 19:27:45 +03:00
4fa275fd55 bindoc: -unused includes 2022-12-29 14:16:08 +03:00
8182c95dfc txt: -unused includes 2022-12-29 08:20:01 +03:00
36a4aaad45 docx: - unused includes 2022-12-28 20:29:38 +03:00
e3e3f8a4e6 upd for #6e14576
ComplexTypes_AdditionConstructors: constructor calls a virtual function
2022-12-28 09:05:05 +03:00
5c46c77beb Merge remote-tracking branch 'origin/fix/coderefact' into develop 2022-12-26 15:43:26 +03:00
975a2409ab Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2022-12-26 15:42:48 +03:00
6e14576097 fix: constructor calls a virtual function
docx, pptx
2022-12-26 12:15:47 +03:00
c280e9c829 ppt, xls common shapes
duplicate shapes have been removed
2022-12-21 13:48:44 +03:00
69e0524960 fix bug #59960 2022-12-21 13:37:40 +03:00
24e04314d8 Merge branch hotfix/v7.2.2 into master 2022-12-20 07:55:40 +00:00
d60d5eca86 ppt shapes (pri impl separation) 2022-12-18 10:02:52 +03:00
6a966c9cb9 xls, ppt, pptx changes
- implicit includes have been resolved
- preparation before common shapes(pri)
- x2t compiled
2022-12-17 14:19:53 +03:00
a637e40bad Merge remote-tracking branch 'origin/fix/coderefact' into develop 2022-12-16 16:01:31 +03:00
cdf3918489 Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2022-12-16 15:57:52 +03:00
4d94f248e2 pri for all shapes (ppt + pptx)
x2t compiled and checked.
TODO: _T->L
2022-12-15 12:51:42 +03:00
e91f52ca16 minors
DEFINE_SHAPE_CLASS for ppt & pptx
2022-12-15 09:47:48 +03:00
e77311983a fix build
x2t compiled
2022-12-14 21:44:42 +03:00
c0a833fac6 pptx shapes refact + pri 2022-12-14 21:13:51 +03:00
2093579b77 limits pri 2022-12-14 15:50:01 +03:00
3bd847237b beauty code pptx limits 2022-12-14 00:23:15 +03:00
7aea6bf451 operator= by string problem 2022-12-13 21:00:29 +03:00
db6ab0b003 Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2022-12-12 17:43:44 +03:00
2e2258f369 . 2022-12-12 17:39:53 +03:00
fc3f8e61fa Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2022-12-12 17:26:03 +03:00
74866e2898 . 2022-12-12 17:19:31 +03:00
14f04509a7 . 2022-12-12 17:18:51 +03:00
6a14a4daad Merge remote-tracking branch 'origin/release/v7.3.0' into develop 2022-12-12 11:37:20 +03:00
7efd8f5962 Merge pull request #1080 from ONLYOFFICE/release/v7.3.0
Fix build
2022-11-24 10:43:55 +03:00
e544845048 Merge pull request #1079 from ONLYOFFICE/release/v7.3.0
Fix build
2022-11-24 10:02:56 +03:00
26c2029300 Merge pull request #1077 from ONLYOFFICE/release/v7.3.0
Release/v7.3.0
2022-11-23 19:25:39 +03:00
3e092303c1 Merge branch 'release/v7.3.0' into develop 2022-11-23 10:47:04 +03:00
d173bfa1be [x2t] For bug 55472 2022-11-07 14:51:50 +03:00
c971cc1199 Change project params 2022-11-05 13:48:47 +03:00
0d95984c2a Change framework version (4.7.5 => 4.5) 2022-11-05 13:42:04 +03:00
e4d8ee832f Merge pull request #1064 from ONLYOFFICE/release/v7.3.0
Release/v7.3.0
2022-11-04 22:20:37 +03:00
76b8b83952 Merge remote-tracking branch 'origin/feature/odf_3' into feature/odf_4 2022-05-30 13:23:27 +03:00
e79c577a14 Fonts 2022-05-30 12:42:47 +04:00
f67c76eef0 Fonts 2022-05-30 12:41:10 +04:00
35b7a817f6 Merge remote-tracking branch 'origin/feature/odf_3' into feature/odf_4 2022-05-25 10:36:43 +03:00
569ef80535 Fonts and size 2022-05-24 18:16:56 +04:00
affd63ee09 Fonts and size 2022-05-13 15:58:14 +04:00
da1f26f028 Fonts and size 2022-05-13 14:00:06 +04:00
230b11a060 colorized log and lim 2022-04-20 17:29:15 +04:00
b3b1b89b1f colorized diacritics 2022-04-14 12:22:24 +04:00
aadea510b0 colorized formulas 2022-04-13 10:20:12 +04:00
dc9db9c4fc colorized math formulas 2022-04-11 21:33:05 +04:00
ddee54c7c5 color styles 2022-04-05 19:54:35 +04:00
9178 changed files with 94273 additions and 413665 deletions

1
.gitignore vendored
View File

@ -45,3 +45,4 @@ DesktopEditor/fontengine/js/common/freetype-2.10.4
*_resource.rc
.qtc_clangd
Common/3dParty/openssl/openssl/

View File

@ -6,6 +6,14 @@ core_android {
CORE_BOOST_LIBS = $$PWD/build/android/lib/$$CORE_BUILDS_PLATFORM_PREFIX
}
bundle_xcframeworks {
xcframework_platform_ios_simulator {
CORE_BOOST_LIBS = $$PWD/build/ios_xcframework/ios_simulator/lib/$$CORE_BUILDS_PLATFORM_PREFIX
} else {
CORE_BOOST_LIBS = $$PWD/build/ios_xcframework/ios/lib/$$CORE_BUILDS_PLATFORM_PREFIX
}
}
core_windows {
VS_VERSION=140
VS_DEBUG=

View File

@ -291,8 +291,8 @@ generateOut()
$BOOST_SRC/iphonesim-build/stage/lib/libboost_${NAME}.a \
-o $SRCDIR/build/ios/lib/libboost_${NAME}.a
lipo $SRCDIR/build/ios/lib/libboost_${NAME}.a -remove i386 -o $SRCDIR/build/ios/lib/libboost_${NAME}.a
lipo $SRCDIR/build/ios/lib/libboost_${NAME}.a -remove armv4t -o $SRCDIR/build/ios/lib/libboost_${NAME}.a
#lipo $SRCDIR/build/ios/lib/libboost_${NAME}.a -remove i386 -o $SRCDIR/build/ios/lib/libboost_${NAME}.a
#lipo $SRCDIR/build/ios/lib/libboost_${NAME}.a -remove armv4t -o $SRCDIR/build/ios/lib/libboost_${NAME}.a
done
doneSection

View File

@ -327,3 +327,13 @@ SOURCES += \
../zdeflate.cpp \
../zinflate.cpp \
../zlib.cpp
# OfficeCryptReader
include($$CORE_ROOT_DIR/Common/3dParty/boost/boost.pri)
HEADERS += \
$$CORE_ROOT_DIR/OfficeCryptReader/source/ECMACryptFile.h \
$$CORE_ROOT_DIR/OfficeCryptReader/source/CryptTransform.h
SOURCES += \
$$CORE_ROOT_DIR/OfficeCryptReader/source/ECMACryptFile.cpp \
$$CORE_ROOT_DIR/OfficeCryptReader/source/CryptTransform.cpp

View File

@ -1282,7 +1282,10 @@ namespace NSCSS
Scale(nValue, enScalingDirection);
sValueString += std::to_wstring(nValue);
sValueString += std::to_wstring(nValue);
if (!iswdigit(sValueTemp.back()))
sValueString += sValueTemp.back();
}
else
sValueString += sValueTemp;

View File

@ -2023,7 +2023,7 @@ namespace NSCSS
if (sValue.empty())
return BorderSide();
const std::vector<std::wstring> arValues = NS_STATIC_FUNCTIONS::GetWordsW(sValue, L" ");
const std::vector<std::wstring> arValues = NS_STATIC_FUNCTIONS::GetWordsW(NS_STATIC_FUNCTIONS::NormalizeRGB(sValue), L" ");
BorderSide oBorderSide;
for (std::wstring sValue : arValues)
{

View File

@ -315,6 +315,26 @@ namespace NSCSS
return sValue.empty() ? false : std::all_of(sValue.begin(), sValue.end(), [] (const wchar_t& cChar) { return iswdigit(cChar); });
}
inline std::wstring NormalizeRGB(const std::wstring& wsValue)
{
std::wstring wsNewValue = wsValue;
size_t unBegin = 0, unEnd;
while (std::wstring::npos != (unBegin = wsNewValue.find(L"rgb(", unBegin)))
{
unEnd = wsNewValue.find(L")", unBegin);
while ((unBegin = wsNewValue.find(L" ", unBegin)) != std::wstring::npos && unBegin < unEnd)
{
wsNewValue.replace(unBegin, 1, L",");
++unBegin;
}
}
return wsNewValue;
}
inline std::wstring ConvertRgbToHex(const std::wstring& sRgbValue)
{
size_t posFirst = sRgbValue.find_first_of(L"01234567890");

View File

@ -17,12 +17,12 @@ if not base.is_dir("gumbo-parser"):
base.replaceInFile(base_directory + "/gumbo-parser/src/tag.c", "isspace(*c)", "isspace((unsigned char)*c)")
if not base.is_dir("katana-parser"):
base.cmd("git", ["clone", "https://github.com/hackers-painters/katana-parser.git"])
base.cmd_in_dir("katana-parser", "git", ["checkout", "499118d32c387a893fdc9dda2cb95eee524bdb9b"])
base.cmd("git", ["clone", "https://github.com/jasenhuang/katana-parser.git"])
base.cmd_in_dir("katana-parser", "git", ["checkout", "be6df458d4540eee375c513958dcb862a391cdd1"])
# fix katana
base.replaceInFile(base_directory + "/katana-parser/src/tokenizer.c", "static inline bool katana_is_html_space(char c);", "static inline bool2 katana_is_html_space(char c);")
base.replaceInFile(base_directory + "/katana-parser/src/tokenizer.c", "inline bool katana_is_html_space(char c)", "static inline bool katana_is_html_space(char c)")
base.replaceInFile(base_directory + "/katana-parser/src/tokenizer.c", "static inline bool2 katana_is_html_space(char c);", "static inline bool katana_is_html_space(char c);")
base.replaceInFile(base_directory + "/katana-parser/src/parser.c", "katanaget_text(parser->scanner)", "/*katanaget_text(parser->scanner)*/\"error\"")
base.replaceInFile(base_directory + "/katana-parser/src/parser.c", "#define KATANA_PARSER_STRING(literal) (KatanaParserString){", "#define KATANA_PARSER_STRING(literal) {")

File diff suppressed because it is too large Load Diff

View File

@ -27,9 +27,18 @@ core_mac {
core_ios {
INCLUDEPATH += $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build/include
LIBS += $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build/libicudata.a
LIBS += $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build/libicui18n.a
LIBS += $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build/libicuuc.a
ICU_LIBS_PATH_IOS = $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build
bundle_xcframeworks {
xcframework_platform_ios_simulator {
ICU_LIBS_PATH_IOS = $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build_xc/simulator
} else {
ICU_LIBS_PATH_IOS = $$PWD/$$CORE_BUILDS_PLATFORM_PREFIX/build_xc
}
}
LIBS += $$ICU_LIBS_PATH_IOS/libicudata.a
LIBS += $$ICU_LIBS_PATH_IOS/libicui18n.a
LIBS += $$ICU_LIBS_PATH_IOS/libicuuc.a
}
core_android {

View File

@ -199,20 +199,25 @@ function build() {
echo "preparing $1 toolchain"
export BUILD_DIR="${PWD}/build-${2}"
export BUILD_DIR="${PWD}/build-${5}"
SDKROOT="$(xcodebuild -version -sdk $4 | grep -E '^Path' | sed 's/Path: //')"
ARCH=$2
ICU_FLAGS="-I$ICU_SOURCE/common/ -I$ICU_SOURCE/tools/tzcode/ "
IOS_MIN_VER = "-miphoneos-version-min=11.0"
if [ "$4" = "iphonesimulator" ]; then
IOS_MIN_VER = "-mios-simulator-version-min=11.0"
fi;
export ADDITION_FLAG="-DIOS_SYSTEM_FIX"
export CXX="$(xcrun -find clang++)"
export CC="$(xcrun -find clang)"
export CFLAGS="-fembed-bitcode -isysroot $SDKROOT -I$SDKROOT/usr/include/ -I./include/ -arch $ARCH -miphoneos-version-min=9.0 $ICU_FLAGS $CFLAGS ${ADDITION_FLAG}"
export CXXFLAGS="${CXXFLAGS} -fembed-bitcode -stdlib=libc++ -isysroot $SDKROOT -I$SDKROOT/usr/include/ -I./include/ -arch $ARCH -miphoneos-version-min=9.0 $ICU_FLAGS ${ADDITION_FLAG}"
export LDFLAGS="-fembed-bitcode -stdlib=libc++ -L$SDKROOT/usr/lib/ -isysroot $SDKROOT -Wl,-dead_strip -miphoneos-version-min=9.0 -lstdc++ ${ADDITION_FLAG}"
export CFLAGS="-fembed-bitcode -isysroot $SDKROOT -I$SDKROOT/usr/include/ -I./include/ -arch $ARCH $IOS_MIN_VER $ICU_FLAGS $CFLAGS ${ADDITION_FLAG}"
export CXXFLAGS="${CXXFLAGS} -fembed-bitcode -stdlib=libc++ -isysroot $SDKROOT -I$SDKROOT/usr/include/ -I./include/ -arch $ARCH $IOS_MIN_VER $ICU_FLAGS ${ADDITION_FLAG}"
export LDFLAGS="-fembed-bitcode -stdlib=libc++ -L$SDKROOT/usr/lib/ -isysroot $SDKROOT -Wl,-dead_strip $IOS_MIN_VER -lstdc++ ${ADDITION_FLAG}"
mkdir -p ${BUILD_DIR}
cd ${BUILD_DIR}
@ -221,7 +226,6 @@ function build() {
make clean
make -j4
make install
cd ..
}
@ -232,19 +236,25 @@ echo "------------------------------------------------------"
echo " ICU build armv7 libraries"
echo "------------------------------------------------------"
build "armv7" "armv7" "armv7-apple-darwin" "iphoneos"
build "armv7" "armv7" "armv7-apple-darwin" "iphoneos" "armv7"
echo "------------------------------------------------------"
echo " ICU build arm64 libraries"
echo "------------------------------------------------------"
build "arm64" "arm64" "aarch64-apple-darwin" "iphoneos"
build "arm64" "arm64" "aarch64-apple-darwin" "iphoneos" "arm64"
echo "------------------------------------------------------"
echo " ICU combining x86_64 libraries"
echo "------------------------------------------------------"
build "x86_64" "x86_64" "x86_64-apple-darwin" "iphonesimulator"
build "x86_64" "x86_64" "x86_64-apple-darwin" "iphonesimulator" "x86_64"
echo "------------------------------------------------------"
echo " ICU combining arm64 (simulator) libraries"
echo "------------------------------------------------------"
build "arm64" "arm64" "aarch64-apple-darwin" "iphonesimulator" "sim-arm64"
cd ..
@ -259,13 +269,31 @@ function buildUniversal() {
"${PWD}/ios/build-armv7/lib/$1armv7.a"
}
function buildUniversalXC() {
lipo -create -output "${PWD}/ios/build_xc/$1.a" \
"${PWD}/ios/build-arm64/lib/$1arm64.a"
lipo -create -output "${PWD}/ios/build_xc/simulator/${1}.a" \
"${PWD}/ios/build-sim-arm64/lib/$1arm64.a" \
"${PWD}/ios/build-x86_64/lib/$1x86_64.a"
}
mkdir -p build
mkdir -p ios/build
mkdir -p ios/build_xc
mkdir -p ios/build_xc/simulator
mkdir -p ios/build/include
mkdir -p ios/build_xc/include
mkdir -p ios/build/include/unicode
mkdir -p ios/build_xc/include/unicode
cp ${ICU_SOURCE}/common/unicode/*.h ios/build/include/unicode
cp ${ICU_SOURCE}/common/unicode/*.h ios/build_xc/include/unicode
buildUniversal "libicuuc"
buildUniversal "libicui18n"
buildUniversal "libicudata"
buildUniversalXC "libicuuc"
buildUniversalXC "libicui18n"
buildUniversalXC "libicudata"

View File

@ -17,6 +17,14 @@ core_ios {
OPENSSL_LIBS_DIRECTORY = $$PWD/../openssl/build/ios/openssl-universal/lib
bundle_xcframeworks {
xcframework_platform_ios_simulator {
OPENSSL_LIBS_DIRECTORY = $$PWD/../openssl/build/ios/openssl-xc/simulator/lib
} else {
OPENSSL_LIBS_DIRECTORY = $$PWD/../openssl/build/ios/openssl-xc/lib
}
}
}
core_windows {

View File

@ -18,9 +18,9 @@ source ./build-common.sh
export PLATFORM_TYPE="iOS"
export IOS_MIN_TARGET="10.0"
export ARCHS=("armv7" "arm64" "i386" "x86_64")
export SDKS=("iphoneos" "iphoneos" "iphonesimulator" "iphonesimulator")
export PLATFORMS=("iPhoneOS" "iPhoneOS" "iPhoneSimulator" "iPhoneSimulator")
export ARCHS=("armv7" "arm64" "i386" "x86_64" "sim_arm64")
export SDKS=("iphoneos" "iphoneos" "iphonesimulator" "iphonesimulator" "iphonesimulator")
export PLATFORMS=("iPhoneOS" "iPhoneOS" "iPhoneSimulator" "iPhoneSimulator" "iphonesimulator")
# for test !!!
# export ARCHS=("armv7")
@ -45,6 +45,9 @@ function get_ios_arch() {
x86_64)
echo "x86-64"
;;
sim_arm64)
echo "sim-arm64"
;;
esac
}
@ -66,6 +69,9 @@ function ios_get_build_host() {
x86-64)
echo "x86_64-ios-darwin"
;;
sim-arm64)
echo "aarch64-ios-darwin"
;;
esac
}
@ -111,6 +117,13 @@ function set_ios_cpu_feature() {
export LDFLAGS="-arch x86_64 -target x86_64-ios-darwin -march=x86-64 -isysroot ${sysroot} -L${sysroot}/usr/lib "
export CXXFLAGS="-std=c++11 -arch x86_64 -target x86_64-ios-darwin -march=x86-64 -msse4.2 -mpopcnt -m64 -mtune=intel -fstrict-aliasing -DIOS -mios-simulator-version-min=${ios_min_target} -I${sysroot}/usr/include"
;;
sim-arm64)
export CC="xcrun -sdk iphonesimulator clang -arch arm64"
export CXX="xcrun -sdk iphonesimulator clang++ -arch arm64"
export CFLAGS="-arch arm64 -target aarch64-apple-darwin -march=armv8 -mcpu=generic -Wno-unused-function -fstrict-aliasing -Oz -Wno-ignored-optimization-argument -DIOS -isysroot ${sysroot} -fembed-bitcode -mios-simulator-version-min=${ios_min_target} -I${sysroot}/usr/include"
export LDFLAGS="-arch arm64 -target aaarch64-apple-darwin -march=armv8 -isysroot ${sysroot} -fembed-bitcode -L${sysroot}/usr/lib "
export CXXFLAGS="-std=c++11 -arch arm64 -target aarch64-apple-darwin -march=armv8 -mcpu=generic -fstrict-aliasing -fembed-bitcode -DIOS -mios-simulator-version-min=${ios_min_target} -I${sysroot}/usr/include"
;;
*)
log_error "not support" && exit 1
;;

View File

@ -38,6 +38,7 @@ echo TOOLS_ROOT=${TOOLS_ROOT}
LIB_VERSION="OpenSSL_1_1_1d"
LIB_NAME="openssl-1.1.1d"
LIB_DEST_DIR="${pwd_path}/build/ios/openssl-universal/lib"
LIB_DEST_DIR_XC="${pwd_path}/build/ios/openssl-xc/lib"
init_log_color
@ -53,11 +54,17 @@ rm -rf "${LIB_DEST_DIR}" "${LIB_NAME}"
function configure_make() {
ARCH=$1
ARCH_NAME=$1
ARCH=$ARCH_NAME
if [ "$ARCH" = "sim_arm64" ]; then
ARCH = "arm64"
fi;
SDK=$2
PLATFORM=$3
log_info "configure $ARCH start..."
log_info "configure $ARCH_NAME start..."
if [ -d "${LIB_NAME}" ]; then
rm -fr "${LIB_NAME}"
@ -75,56 +82,62 @@ function configure_make() {
exit -1
fi
PREFIX_DIR="${pwd_path}/build/ios/${ARCH}"
PREFIX_DIR="${pwd_path}/build/ios/${ARCH_NAME}"
if [ -d "${PREFIX_DIR}" ]; then
rm -fr "${PREFIX_DIR}"
fi
mkdir -p "${PREFIX_DIR}"
OUTPUT_ROOT=${TOOLS_ROOT}/build/ios/${ARCH}
OUTPUT_ROOT=${TOOLS_ROOT}/build/ios/${ARCH_NAME}
mkdir -p ${OUTPUT_ROOT}/log
set_ios_cpu_feature "openssl" "${ARCH}" "${IOS_MIN_TARGET}" "${CROSS_TOP}/SDKs/${CROSS_SDK}"
set_ios_cpu_feature "openssl" "${ARCH_NAME}" "${IOS_MIN_TARGET}" "${CROSS_TOP}/SDKs/${CROSS_SDK}"
ios_printf_global_params "$ARCH" "$SDK" "$PLATFORM" "$PREFIX_DIR" "$OUTPUT_ROOT"
ios_printf_global_params "$ARCH_NAME" "$SDK" "$PLATFORM" "$PREFIX_DIR" "$OUTPUT_ROOT"
unset IPHONEOS_DEPLOYMENT_TARGET
if [[ "${ARCH}" == "x86_64" ]]; then
if [[ "${ARCH_NAME}" == "x86_64" ]]; then
# openssl1.1.1d can be set normally, 1.1.0f does not take effect
./Configure darwin64-x86_64-cc no-shared --prefix="${PREFIX_DIR}"
sed -i -e 's/-mtune=intel//g' "Makefile"
elif [[ "${ARCH}" == "armv7" ]]; then
elif [[ "${ARCH_NAME}" == "armv7" ]]; then
# openssl1.1.1d can be set normally, 1.1.0f does not take effect
./Configure iphoneos-cross no-shared --prefix="${PREFIX_DIR}" enable-ssl3 enable-ssl3-method
sed -ie "s!-fno-common!-fno-common -fembed-bitcode !" "Makefile"
elif [[ "${ARCH}" == "arm64" ]]; then
elif [[ "${ARCH_NAME}" == "arm64" ]]; then
# openssl1.1.1d can be set normally, 1.1.0f does not take effect
./Configure iphoneos-cross no-shared --prefix="${PREFIX_DIR}" enable-ssl3 enable-ssl3-method
sed -ie "s!-fno-common!-fno-common -fembed-bitcode !" "Makefile"
elif [[ "${ARCH}" == "i386" ]]; then
elif [[ "${ARCH_NAME}" == "i386" ]]; then
# openssl1.1.1d can be set normally, 1.1.0f does not take effect
./Configure darwin-i386-cc no-shared --prefix="${PREFIX_DIR}" enable-ssl3 enable-ssl3-method
sed -ie "s!-fno-common!-fno-common -fembed-bitcode !" "Makefile"
sed -i -e 's/-mtune=intel//g' "Makefile"
elif [[ "${ARCH_NAME}" == "sim_arm64" ]]; then
# openssl1.1.1d can be set normally, 1.1.0f does not take effect
./Configure iphoneos-cross no-shared --prefix="${PREFIX_DIR}" enable-ssl3 enable-ssl3-method
sed -ie "s!-fno-common!-fno-common -fembed-bitcode !" "Makefile"
else
log_error "not support" && exit 1
fi
log_info "make $ARCH start..."
make clean >"${OUTPUT_ROOT}/log/${ARCH}.log"
if make -j8 >>"${OUTPUT_ROOT}/log/${ARCH}.log" 2>&1; then
make install_sw >>"${OUTPUT_ROOT}/log/${ARCH}.log" 2>&1
make install_ssldirs >>"${OUTPUT_ROOT}/log/${ARCH}.log" 2>&1
make clean >"${OUTPUT_ROOT}/log/${ARCH_NAME}.log"
if make -j8 >>"${OUTPUT_ROOT}/log/${ARCH_NAME}.log" 2>&1; then
make install_sw >>"${OUTPUT_ROOT}/log/${ARCH_NAME}.log" 2>&1
make install_ssldirs >>"${OUTPUT_ROOT}/log/${ARCH_NAME}.log" 2>&1
fi
popd
@ -143,28 +156,36 @@ log_info "lipo start..."
function lipo_library() {
LIB_SRC=$1
LIB_DST=$2
LIB_PATHS=("${ARCHS[@]/#/${pwd_path}/build/ios/}")
LIB_PATHS=("${LIB_PATHS[@]/%//lib/${LIB_SRC}}")
lipo ${LIB_PATHS[@]} -create -output "${LIB_DST}"
lipo -create -output "${LIB_DEST_DIR}/${LIB_SRC}.a" \
"${pwd_path}/build/ios/arm64/lib/${LIB_SRC}.a" \
"${pwd_path}/build/ios/armv7/lib/${LIB_SRC}.a" \
"${pwd_path}/build/ios/x86_64/lib/${LIB_SRC}.a"
}
function lipo_library_xc() {
LIB_SRC=$1
lipo -create -output "${LIB_DEST_DIR_XC}/${LIB_SRC}.a" \
"${pwd_path}/build/ios/arm64/lib/${LIB_SRC}.a"
lipo -create -output "${LIB_DEST_DIR_XC}/../simulator/lib/${LIB_SRC}.a" \
"${pwd_path}/build/ios/sim_arm64/lib/${LIB_SRC}.a" \
"${pwd_path}/build/ios/x86_64/lib/${LIB_SRC}.a"
}
function copy_include() {
DST=$1
if [ -d "${pwd_path}/build/ios/x86_64/include" ]; then
cp -r "${pwd_path}/build/ios/x86_64/include" "${DST}"
elif [ -d "${pwd_path}/build/ios/armv7/include" ]; then
cp -r "${pwd_path}/build/ios/armv7/include" "${DST}"
elif [ -d "${pwd_path}/build/ios/arm64/include" ]; then
cp -r "${pwd_path}/build/ios/arm64/include" "${DST}"
elif [ -d "${pwd_path}/build/ios/i386/include" ]; then
cp -r "${pwd_path}/build/ios/i386/include" "${DST}"
fi
cp -r "${pwd_path}/build/ios/arm64/include" "${1}"
}
mkdir -p "${LIB_DEST_DIR}"
lipo_library "libcrypto.a" "${LIB_DEST_DIR}/libcrypto.a"
lipo_library "libssl.a" "${LIB_DEST_DIR}/libssl.a"
lipo_library "libcrypto"
lipo_library "libssl"
copy_include "${LIB_DEST_DIR}/../"
mkdir -p "${LIB_DEST_DIR_XC}"
mkdir -p "${LIB_DEST_DIR_XC}/../simulator/lib"
lipo_library_xc "libcrypto"
lipo_library_xc "libssl"
copy_include "${LIB_DEST_DIR_XC}/../"
copy_include "${LIB_DEST_DIR_XC}/../simulator"
log_info "${PLATFORM_TYPE} ${LIB_NAME} end..."

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -537,16 +537,27 @@ std::vector<uint64> AllocTable::follow( uint64 start )
if( start >= count() ) return chain;
uint64 p = start;
while( p < count() )
{
if( p == (uint64)Eof ) break;
if( p == (uint64)Bat ) break;
if( p == (uint64)MetaBat ) break;
if( p >= count() ) break;
chain.push_back( p );
if( data[p] >= count() ) break;
p = data[ p ];
}
std::map<uint64, char> used;
used.insert(std::make_pair(start, (char)0));
while (p < count())
{
if (p == (uint64)Eof) break;
if (p == (uint64)Bat) break;
if (p == (uint64)MetaBat) break;
if (p >= count()) break;
chain.push_back(p);
if (data[p] >= count()) break;
if (used.find(data[p]) != used.end())
{
//cycle
break;
}
p = data[p];
used.insert(std::make_pair(p, (char)0));
}
return chain;
}

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -0,0 +1,21 @@
#!/usr/bin/env python
import sys
sys.path.append('../../../../../../build_tools/scripts')
import base
file_path = "./socketio_internal_private_no_tls.h"
if not base.is_file(file_path):
file.delete_file(file_path)
base.copy_file("./socketio_internal_private.h", file_path)
header = "///////////////////////////////////////////////////////////\n"
header += "/// auto generated file. please use generator (make.py) ///\n"
header += "///////////////////////////////////////////////////////////\n"
header += "\n#pragma once"
base.replaceInFile(file_path, "#pragma once", header)
base.replaceInFile(file_path, "/socket.io-client-cpp/src/", "/socket.io-client-cpp/src_no_tls/")
base.replaceInFile(file_path, "sio::", "sio_no_tls::")
base.replaceInFile(file_path, "CIOWebSocket_private_tls", "CIOWebSocket_private_no_tls")

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
@ -30,149 +30,19 @@
*
*/
#include "socketio_internal.h"
#include <iostream>
#include "../../../../3dParty/socketio/socket.io-client-cpp/src/internal/sio_packet.h"
#include "../../../../3dParty/socketio/socket.io-client-cpp/src/sio_client.h"
#include "../../../../../DesktopEditor/graphics/TemporaryCS.h"
#include "socketio_internal_private.h"
#include "socketio_internal_private_no_tls.h"
namespace NSNetwork
{
namespace NSWebSocket
{
class CIOWebSocket_private
{
public:
sio::client m_socket;
NSCriticalSection::CRITICAL_SECTION m_oCS;
CIOWebSocket* m_base;
public:
CIOWebSocket_private(CIOWebSocket* base)
{
m_base = base;
m_oCS.InitializeCriticalSection();
}
~CIOWebSocket_private()
{
m_socket.close();
m_oCS.DeleteCriticalSection();
}
public:
void event_onConnected()
{
m_base->listener->onOpen();
}
void event_onClose(sio::client::close_reason const& reason)
{
m_base->listener->onClose(0, "");
}
void event_onFail()
{
m_base->listener->onError("");
}
public:
void open(const std::map<std::string, std::string>& query)
{
m_socket.set_open_listener (std::bind(&CIOWebSocket_private::event_onConnected, this));
m_socket.set_close_listener(std::bind(&CIOWebSocket_private::event_onClose, this, std::placeholders::_1));
m_socket.set_fail_listener (std::bind(&CIOWebSocket_private::event_onFail, this));
sio::message::ptr objAuth = sio::object_message::create();
//std::string sAuth;
std::map<std::string, std::string> queryDst = query;
std::map<std::string, std::string>::iterator iterAuth = queryDst.find("token");
if (iterAuth != queryDst.end())
{
objAuth->get_map()["token"] = sio::string_message::create(iterAuth->second);
//sAuth = "{\"token\":\"" + iterAuth->second + "\"}";
queryDst.erase(iterAuth);
}
//webSocket.connect(url, queryDst, sio::string_message::create(sAuth));
m_socket.connect(m_base->url, queryDst, objAuth);
m_socket.socket()->on("message", [&](sio::event& event){
CTemporaryCS oCS(&m_oCS);
const sio::message::ptr& message = event.get_message();
if (!message)
return;
// TODO: пока только текстовые и json команды
switch (message->get_flag())
{
case sio::message::flag_null:
{
m_base->listener->onMessage("null");
break;
}
case sio::message::flag_integer:
case sio::message::flag_double:
case sio::message::flag_boolean:
{
m_base->listener->onMessage("");
break;
}
case sio::message::flag_binary:
{
m_base->listener->onMessage("");
break;
}
case sio::message::flag_array:
{
m_base->listener->onMessage("");
break;
}
case sio::message::flag_object:
{
sio::packet_manager manager;
std::stringstream ss;
sio::packet packet("/", message);
manager.encode( packet, [&](bool isBinary, std::shared_ptr<const std::string> const& json)
{
ss << *json;
});
manager.reset();
std::string result = ss.str();
std::size_t indexList = result.find('[');
std::size_t indexObject = result.find('{');
std::size_t indexString = result.find('"');
std::size_t index = indexList;
if (indexObject != std::string::npos && indexObject < index)
index = indexObject;
if (indexString != std::string::npos && indexString < index)
index = indexString;
if (index != std::string::npos)
result = result.substr(index);
else
result = "";
m_base->listener->onMessage(result);
break;
}
case sio::message::flag_string:
{
m_base->listener->onMessage(message->get_string());
break;
}
default:
break;
}
});
}
};
CIOWebSocket::CIOWebSocket(const std::string& url, std::shared_ptr<IListener> listener): CWebWorkerBase(url, listener)
{
m_internal = new CIOWebSocket_private(this);
if (0 == url.find("http://"))
m_internal = new CIOWebSocket_private_no_tls(this);
else
m_internal = new CIOWebSocket_private_tls(this);
}
void CIOWebSocket::open(const std::map<std::string, std::string>& query)
@ -182,36 +52,12 @@ namespace NSNetwork
void CIOWebSocket::send(const std::string& message_str)
{
//CTemporaryCS (&m_internal->m_oCS);
// если json -то надо объект
if (0 == message_str.find("{") ||
0 == message_str.find("["))
{
sio::packet_manager manager;
sio::message::ptr message;
manager.set_decode_callback([&](sio::packet const& p)
{
message = p.get_message();
});
// Magic message type / ID
manager.put_payload("42" + message_str);
manager.reset();
m_internal->m_socket.socket()->emit("message", message);
}
else
{
m_internal->m_socket.socket()->emit("message", sio::string_message::create(message_str));
}
m_internal->send(message_str);
}
void CIOWebSocket::close()
{
//CTemporaryCS (&m_internal->m_oCS);
m_internal->m_socket.socket()->off_all();
m_internal->m_socket.close();
m_internal->close();
}
CIOWebSocket::~CIOWebSocket()

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
@ -34,12 +34,37 @@
#define _IO_WEB_SOCKET_H_
#include "../websocketbase.h"
#include "../../../../../DesktopEditor/graphics/TemporaryCS.h"
namespace NSNetwork
{
namespace NSWebSocket
{
class CIOWebSocket_private;
class CIOWebSocket;
class CIOWebSocket_private
{
protected:
CIOWebSocket* m_base;
NSCriticalSection::CRITICAL_SECTION m_oCS;
NSCriticalSection::CRITICAL_SECTION m_oCS_Events;
public:
CIOWebSocket_private(CIOWebSocket* base)
{
m_base = base;
m_oCS.InitializeCriticalSection();
m_oCS_Events.InitializeCriticalSection();
}
virtual ~CIOWebSocket_private()
{
m_oCS_Events.DeleteCriticalSection();
m_oCS.DeleteCriticalSection();
}
virtual void open(const std::map<std::string, std::string>& query) = 0;
virtual void send(const std::string& message) = 0;
virtual void close() = 0;
};
class CIOWebSocket: public CWebWorkerBase
{
private:
@ -55,6 +80,8 @@ namespace NSNetwork
virtual void close() override;
friend class CIOWebSocket_private;
friend class CIOWebSocket_private_tls;
friend class CIOWebSocket_private_no_tls;
};
}
}

View File

@ -0,0 +1,235 @@
/*
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "socketio_internal.h"
#include <iostream>
#include "../../../../3dParty/socketio/socket.io-client-cpp/src/internal/sio_packet.h"
#include "../../../../3dParty/socketio/socket.io-client-cpp/src/sio_client.h"
#include <memory>
#include "../../../../../DesktopEditor/graphics/BaseThread.h"
namespace NSNetwork
{
namespace NSWebSocket
{
class CIOWebSocket_private_tls : public CIOWebSocket_private
{
public:
std::shared_ptr<sio::client> m_socket;
// проблема закрытия сокета, пока он не приконнектился
bool m_connecting_in_process;
bool m_closing_in_progress;
public:
CIOWebSocket_private_tls(CIOWebSocket* base) : CIOWebSocket_private(base)
{
m_connecting_in_process = false;
m_closing_in_progress = false;
m_base = base;
}
~CIOWebSocket_private_tls()
{
close();
}
public:
void event_onConnected()
{
CTemporaryCS oCS(&m_oCS_Events);
m_connecting_in_process = false;
if (!m_closing_in_progress)
m_base->listener->onOpen();
}
void event_onClose(sio::client::close_reason const& reason)
{
CTemporaryCS oCS(&m_oCS_Events);
m_connecting_in_process = false;
if (!m_closing_in_progress)
m_base->listener->onClose(0, "");
}
void event_onFail()
{
CTemporaryCS oCS(&m_oCS_Events);
m_connecting_in_process = false;
if (!m_closing_in_progress)
m_base->listener->onError("");
}
public:
virtual void open(const std::map<std::string, std::string>& query) override
{
m_socket = std::make_shared<sio::client>();
m_socket->set_open_listener (std::bind(&CIOWebSocket_private_tls::event_onConnected, this));
m_socket->set_close_listener(std::bind(&CIOWebSocket_private_tls::event_onClose, this, std::placeholders::_1));
m_socket->set_fail_listener (std::bind(&CIOWebSocket_private_tls::event_onFail, this));
sio::message::ptr objAuth = sio::object_message::create();
//std::string sAuth;
std::map<std::string, std::string> queryDst = query;
std::map<std::string, std::string>::iterator iterAuth = queryDst.find("token");
if (iterAuth != queryDst.end())
{
objAuth->get_map()["token"] = sio::string_message::create(iterAuth->second);
//sAuth = "{\"token\":\"" + iterAuth->second + "\"}";
queryDst.erase(iterAuth);
}
//webSocket.connect(url, queryDst, sio::string_message::create(sAuth));
m_connecting_in_process = true;
m_socket->connect(m_base->url, queryDst, objAuth);
m_socket->socket()->on("message", [&](sio::event& event){
CTemporaryCS oCS(&m_oCS_Events);
if (m_closing_in_progress)
return;
const sio::message::ptr& message = event.get_message();
if (!message)
return;
// TODO: пока только текстовые и json команды
switch (message->get_flag())
{
case sio::message::flag_null:
{
m_base->listener->onMessage("null");
break;
}
case sio::message::flag_integer:
case sio::message::flag_double:
case sio::message::flag_boolean:
{
m_base->listener->onMessage("");
break;
}
case sio::message::flag_binary:
{
m_base->listener->onMessage("");
break;
}
case sio::message::flag_array:
{
m_base->listener->onMessage("");
break;
}
case sio::message::flag_object:
{
sio::packet_manager manager;
std::stringstream ss;
sio::packet packet("/", message);
manager.encode( packet, [&](bool isBinary, std::shared_ptr<const std::string> const& json)
{
ss << *json;
});
manager.reset();
std::string result = ss.str();
std::size_t indexList = result.find('[');
std::size_t indexObject = result.find('{');
std::size_t indexString = result.find('"');
std::size_t index = indexList;
if (indexObject != std::string::npos && indexObject < index)
index = indexObject;
if (indexString != std::string::npos && indexString < index)
index = indexString;
if (index != std::string::npos)
result = result.substr(index);
else
result = "";
m_base->listener->onMessage(result);
break;
}
case sio::message::flag_string:
{
m_base->listener->onMessage(message->get_string());
break;
}
default:
break;
}
});
}
virtual void send(const std::string& message_str) override
{
//CTemporaryCS (&m_internal->m_oCS);
// если json -то надо объект
if (0 == message_str.find("{") ||
0 == message_str.find("["))
{
sio::packet_manager manager;
sio::message::ptr message;
manager.set_decode_callback([&](sio::packet const& p)
{
message = p.get_message();
});
// Magic message type / ID
manager.put_payload("42" + message_str);
manager.reset();
m_socket->socket()->emit("message", message);
}
else
{
m_socket->socket()->emit("message", sio::string_message::create(message_str));
}
}
virtual void close() override
{
CTemporaryCS oCS(&m_oCS);
m_oCS_Events.Enter();
m_closing_in_progress = true;
m_oCS_Events.Leave();
// https://github.com/socketio/socket.io-client-cpp/issues/254
while (m_connecting_in_process)
NSThreads::Sleep(50);
m_socket.reset();
}
};
}
}

View File

@ -0,0 +1,239 @@
/*
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
///////////////////////////////////////////////////////////
/// auto generated file. please use generator (make.py) ///
///////////////////////////////////////////////////////////
#pragma once
#include "socketio_internal.h"
#include <iostream>
#include "../../../../3dParty/socketio/socket.io-client-cpp/src_no_tls/internal/sio_packet.h"
#include "../../../../3dParty/socketio/socket.io-client-cpp/src_no_tls/sio_client.h"
#include <memory>
#include "../../../../../DesktopEditor/graphics/BaseThread.h"
namespace NSNetwork
{
namespace NSWebSocket
{
class CIOWebSocket_private_no_tls : public CIOWebSocket_private
{
public:
std::shared_ptr<sio_no_tls::client> m_socket;
// проблема закрытия сокета, пока он не приконнектился
bool m_connecting_in_process;
bool m_closing_in_progress;
public:
CIOWebSocket_private_no_tls(CIOWebSocket* base) : CIOWebSocket_private(base)
{
m_connecting_in_process = false;
m_closing_in_progress = false;
m_base = base;
}
~CIOWebSocket_private_no_tls()
{
close();
}
public:
void event_onConnected()
{
CTemporaryCS oCS(&m_oCS_Events);
m_connecting_in_process = false;
if (!m_closing_in_progress)
m_base->listener->onOpen();
}
void event_onClose(sio_no_tls::client::close_reason const& reason)
{
CTemporaryCS oCS(&m_oCS_Events);
m_connecting_in_process = false;
if (!m_closing_in_progress)
m_base->listener->onClose(0, "");
}
void event_onFail()
{
CTemporaryCS oCS(&m_oCS_Events);
m_connecting_in_process = false;
if (!m_closing_in_progress)
m_base->listener->onError("");
}
public:
virtual void open(const std::map<std::string, std::string>& query) override
{
m_socket = std::make_shared<sio_no_tls::client>();
m_socket->set_open_listener (std::bind(&CIOWebSocket_private_no_tls::event_onConnected, this));
m_socket->set_close_listener(std::bind(&CIOWebSocket_private_no_tls::event_onClose, this, std::placeholders::_1));
m_socket->set_fail_listener (std::bind(&CIOWebSocket_private_no_tls::event_onFail, this));
sio_no_tls::message::ptr objAuth = sio_no_tls::object_message::create();
//std::string sAuth;
std::map<std::string, std::string> queryDst = query;
std::map<std::string, std::string>::iterator iterAuth = queryDst.find("token");
if (iterAuth != queryDst.end())
{
objAuth->get_map()["token"] = sio_no_tls::string_message::create(iterAuth->second);
//sAuth = "{\"token\":\"" + iterAuth->second + "\"}";
queryDst.erase(iterAuth);
}
//webSocket.connect(url, queryDst, sio_no_tls::string_message::create(sAuth));
m_connecting_in_process = true;
m_socket->connect(m_base->url, queryDst, objAuth);
m_socket->socket()->on("message", [&](sio_no_tls::event& event){
CTemporaryCS oCS(&m_oCS_Events);
if (m_closing_in_progress)
return;
const sio_no_tls::message::ptr& message = event.get_message();
if (!message)
return;
// TODO: пока только текстовые и json команды
switch (message->get_flag())
{
case sio_no_tls::message::flag_null:
{
m_base->listener->onMessage("null");
break;
}
case sio_no_tls::message::flag_integer:
case sio_no_tls::message::flag_double:
case sio_no_tls::message::flag_boolean:
{
m_base->listener->onMessage("");
break;
}
case sio_no_tls::message::flag_binary:
{
m_base->listener->onMessage("");
break;
}
case sio_no_tls::message::flag_array:
{
m_base->listener->onMessage("");
break;
}
case sio_no_tls::message::flag_object:
{
sio_no_tls::packet_manager manager;
std::stringstream ss;
sio_no_tls::packet packet("/", message);
manager.encode( packet, [&](bool isBinary, std::shared_ptr<const std::string> const& json)
{
ss << *json;
});
manager.reset();
std::string result = ss.str();
std::size_t indexList = result.find('[');
std::size_t indexObject = result.find('{');
std::size_t indexString = result.find('"');
std::size_t index = indexList;
if (indexObject != std::string::npos && indexObject < index)
index = indexObject;
if (indexString != std::string::npos && indexString < index)
index = indexString;
if (index != std::string::npos)
result = result.substr(index);
else
result = "";
m_base->listener->onMessage(result);
break;
}
case sio_no_tls::message::flag_string:
{
m_base->listener->onMessage(message->get_string());
break;
}
default:
break;
}
});
}
virtual void send(const std::string& message_str) override
{
//CTemporaryCS (&m_internal->m_oCS);
// если json -то надо объект
if (0 == message_str.find("{") ||
0 == message_str.find("["))
{
sio_no_tls::packet_manager manager;
sio_no_tls::message::ptr message;
manager.set_decode_callback([&](sio_no_tls::packet const& p)
{
message = p.get_message();
});
// Magic message type / ID
manager.put_payload("42" + message_str);
manager.reset();
m_socket->socket()->emit("message", message);
}
else
{
m_socket->socket()->emit("message", sio_no_tls::string_message::create(message_str));
}
}
virtual void close() override
{
CTemporaryCS oCS(&m_oCS);
m_oCS_Events.Enter();
m_closing_in_progress = true;
m_oCS_Events.Leave();
// https://github.com/socketio/socket.io-client-cpp/issues/254
while (m_connecting_in_process)
NSThreads::Sleep(50);
m_socket.reset();
}
};
}
}

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,4 +1,5 @@
 /* (c) Copyright Ascensio System SIA 2010-2021
/*
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -11,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2021
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -35,6 +35,19 @@ libsocketio {
$$SOCKET_IO_LIB/src/sio_socket.cpp \
$$SOCKET_IO_LIB/src/sio_client.cpp
HEADERS += \
$$SOCKET_IO_LIB/src_no_tls/internal/sio_client_impl.h \
$$SOCKET_IO_LIB/src_no_tls/internal/sio_packet.h \
$$SOCKET_IO_LIB/src_no_tls/sio_message.h \
$$SOCKET_IO_LIB/src_no_tls/sio_socket.h \
$$SOCKET_IO_LIB/src_no_tls/sio_client.h
SOURCES += \
$$SOCKET_IO_LIB/src_no_tls/internal/sio_client_impl.cpp \
$$SOCKET_IO_LIB/src_no_tls/internal/sio_packet.cpp \
$$SOCKET_IO_LIB/src_no_tls/sio_socket.cpp \
$$SOCKET_IO_LIB/src_no_tls/sio_client.cpp
DEFINES += \
BOOST_DATE_TIME_NO_LIB \
BOOST_REGEX_NO_LIB \
@ -45,13 +58,18 @@ libsocketio {
_WEBSOCKETPP_CPP11_TYPE_TRAITS_ \
_WEBSOCKETPP_CPP11_CHRONO_ \
\
"SIO_TLS=1"
"SIO_TLS=1" \
"SIO_TLS_NO=0"
include($$PWD/../../3dParty/boost/boost.pri)
DEFINES += USE_IOWEBSOCKET
HEADERS += $$PWD/src/socketio/socketio_internal.h
HEADERS += \
$$PWD/src/socketio/socketio_internal.h \
$$PWD/src/socketio/socketio_internal_private.h \
$$PWD/src/socketio/socketio_internal_private_no_tls.h
SOURCES += $$PWD/src/socketio/socketio_internal.cpp
}

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
@ -515,26 +515,26 @@ bool COfficeFileFormatChecker::isOfficeFile(const std::wstring & _fileName)
bEmptyFile = (dwReadBytes < 1);
if (isOOXFlatFormatFile(buffer, sizeRead))
if (isBinaryDoctFormatFile(buffer, sizeRead)) // min size - 4
{
nFileType = AVS_OFFICESTUDIO_FILE_CANVAS_WORD;
}
else if (isBinaryXlstFormatFile(buffer, sizeRead))// min size - 4
{
nFileType = AVS_OFFICESTUDIO_FILE_CANVAS_SPREADSHEET;
}
else if (isBinaryPpttFormatFile(buffer, sizeRead))// min size - 4
{
nFileType = AVS_OFFICESTUDIO_FILE_CANVAS_PRESENTATION;
}
else if (isOOXFlatFormatFile(buffer, sizeRead))
{
//nFileType;
}
else if ( isRtfFormatFile(buffer,sizeRead) ) // min size - 5
{
nFileType = AVS_OFFICESTUDIO_FILE_DOCUMENT_RTF;
}
else if ( isBinaryDoctFormatFile(buffer,sizeRead) ) // min size - 4
{
nFileType = AVS_OFFICESTUDIO_FILE_CANVAS_WORD;
}
else if ( isBinaryXlstFormatFile(buffer,sizeRead) )// min size - 4
{
nFileType = AVS_OFFICESTUDIO_FILE_CANVAS_SPREADSHEET;
}
else if ( isBinaryPpttFormatFile(buffer,sizeRead) )// min size - 4
{
nFileType = AVS_OFFICESTUDIO_FILE_CANVAS_PRESENTATION;
}
}
else if (isPdfFormatFile(buffer,sizeRead, sDocumentID) )// min size - 5
{
nFileType = AVS_OFFICESTUDIO_FILE_CROSSPLATFORM_PDF;
@ -613,7 +613,7 @@ bool COfficeFileFormatChecker::isOfficeFile(const std::wstring & _fileName)
else if (0 == sExt.compare(L".odp"))
nFileType = AVS_OFFICESTUDIO_FILE_PRESENTATION_ODP;
}
else if (0 == sExt.compare(L".mht"))
else if (0 == sExt.compare(L".mht") || 0 == sExt.compare(L".mhtml"))
nFileType = AVS_OFFICESTUDIO_FILE_DOCUMENT_MHT;
else if (0 == sExt.compare(L".csv") || 0 == sExt.compare(L".xlsx"))
nFileType = AVS_OFFICESTUDIO_FILE_SPREADSHEET_CSV;
@ -1140,9 +1140,9 @@ int COfficeFileFormatChecker::GetFormatByExtension(const std::wstring& sExt)
return AVS_OFFICESTUDIO_FILE_DOCUMENT_RTF;
if (L".txt" == ext)
return AVS_OFFICESTUDIO_FILE_DOCUMENT_TXT;
if (L".html" == ext)
if (L".html" == ext || L".htm" == ext)
return AVS_OFFICESTUDIO_FILE_DOCUMENT_HTML;
if (L".mht" == ext)
if (L".mht" == ext || L".mhtml" == ext)
return AVS_OFFICESTUDIO_FILE_DOCUMENT_MHT;
if (L".epub" == ext)
return AVS_OFFICESTUDIO_FILE_DOCUMENT_EPUB;

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -135,6 +135,13 @@ mac {
}
}
gcc {
COMPILER_VERSION = $$system($$QMAKE_CXX " -dumpversion")
COMPILER_MAJOR_VERSION = $$str_member($$COMPILER_VERSION)
lessThan(COMPILER_MAJOR_VERSION, 5): CONFIG += build_gcc_less_5
lessThan(COMPILER_MAJOR_VERSION, 6): CONFIG += build_gcc_less_6
}
# DEFINES
core_windows {
DEFINES += WIN32 _WIN32
@ -263,11 +270,23 @@ core_ios {
} else {
QMAKE_IOS_DEPLOYMENT_TARGET = 11.0
CONFIG += core_ios_main_arch
QMAKE_CFLAGS += -fembed-bitcode
QMAKE_CXXFLAGS += -fembed-bitcode
QMAKE_LFLAGS += -fembed-bitcode
QMAKE_CXXFLAGS += -fobjc-arc
bundle_xcframeworks {
xcframework_platform_ios_simulator {
QMAKE_APPLE_DEVICE_ARCHS=
QMAKE_APPLE_SIMULATOR_ARCHS=x86_64 arm64
} else {
QMAKE_APPLE_DEVICE_ARCHS = arm64
QMAKE_APPLE_SIMULATOR_ARCHS=
}
} else {
CONFIG += core_ios_main_arch
}
core_ios_main_arch {
QMAKE_APPLE_DEVICE_ARCHS = arm64
@ -276,10 +295,6 @@ core_ios {
core_ios_32 {
QMAKE_APPLE_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS armv7
}
} else {
plugin : TARGET = $$join(TARGET, TARGET, "", "_addition")
QMAKE_APPLE_DEVICE_ARCHS=
QMAKE_APPLE_SIMULATOR_ARCHS=
}
core_ios_nomain_arch {
@ -353,11 +368,9 @@ message($$CORE_BUILDS_PLATFORM_PREFIX/$$CORE_BUILDS_CONFIGURATION_PREFIX)
# COMPILER
CONFIG += c++11
greaterThan(QT_MAJOR_VERSION, 5) {
!core_windows {
QMAKE_CXXFLAGS += -Wno-register
QMAKE_CFLAGS += -Wno-register
}
!core_windows {
QMAKE_CXXFLAGS += -Wno-register
QMAKE_CFLAGS += -Wno-register
}
core_linux {
@ -398,6 +411,16 @@ OBJECTS_DIR = $$PWD_ROOT_DIR/core_build/$$CORE_BUILDS_PLATFORM_PREFIX/$$CORE_BUI
MOC_DIR = $$PWD_ROOT_DIR/core_build/$$CORE_BUILDS_PLATFORM_PREFIX/$$CORE_BUILDS_CONFIGURATION_PREFIX/moc
RCC_DIR = $$PWD_ROOT_DIR/core_build/$$CORE_BUILDS_PLATFORM_PREFIX/$$CORE_BUILDS_CONFIGURATION_PREFIX/rcc
UI_DIR = $$PWD_ROOT_DIR/core_build/$$CORE_BUILDS_PLATFORM_PREFIX/$$CORE_BUILDS_CONFIGURATION_PREFIX/ui
bundle_xcframeworks {
xcframework_platform_ios_simulator {
OBJECTS_DIR = $$OBJECTS_DIR/simulator
MOC_DIR = $$MOC_DIR/simulator
RCC_DIR = $$RCC_DIR/simulator
UI_DIR = $$UI_DIR/simulator
}
}
build_xp {
OBJECTS_DIR = $$OBJECTS_DIR/xp
MOC_DIR = $$MOC_DIR/xp
@ -426,6 +449,13 @@ core_debug {
CORE_BUILDS_BINARY_PATH = $$OO_DESTDIR_BUILD_OVERRIDE
}
core_ios {
xcframework_platform_ios_simulator {
CORE_BUILDS_LIBRARIES_PATH = $$CORE_BUILDS_LIBRARIES_PATH/simulator
CORE_BUILDS_BINARY_PATH = $$CORE_BUILDS_BINARY_PATH/simulator
}
}
plugin {
DESTDIR = $$CORE_BUILDS_LIBRARIES_PATH
}

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <functional>

View File

@ -1,35 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*//*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -42,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "rbtree.h"
#include "rbtreeexception.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <iterator>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <exception>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "fstream_utils.h"
#include "fstream_wrapper.h"
#include "stream_utils.h"
@ -40,13 +40,30 @@ using namespace CFCPP;
CFCPP::Stream CFCPP::OpenFileStream(const std::wstring & filename, bool bRewrite, bool trunc)
{
BYTE* pUtf8 = nullptr;
#if defined(_WIN32) || defined(_WIN32_WCE) || defined(_WIN64)
CFCPP::Stream st;
// it's not good, but otherwise file doesn't create or if use ios::app, then the seek for writing will be blocked
if (bRewrite)
std::wfstream create(filename, std::ios::app | std::ios::out);
if (trunc && bRewrite)
st.reset(new FStreamWrapper(filename, std::ios::binary | std::ios::in | std::ios::out | std::ios::trunc));
else if (bRewrite)
st.reset(new FStreamWrapper(filename, std::ios::binary | std::ios::in | std::ios::out));
else
st.reset(new FStreamWrapper(filename, std::ios::binary | std::ios::in));
return st;
#else
BYTE* pUtf8 = nullptr;
LONG lLen = 0;
NSFile::CUtf8Converter::GetUtf8StringFromUnicode(filename.c_str(), filename.length(), pUtf8, lLen, false);
std::string utf8filename((char*)pUtf8, lLen);
delete [] pUtf8;
return OpenFileStream(utf8filename, bRewrite, trunc);
#endif
}
CFCPP::Stream CFCPP::OpenFileStream(const std::string & filename, bool bRewrite, bool trunc)

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "stream.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <fstream>
@ -42,7 +42,11 @@ class FStreamWrapper : public IStream, public std::fstream
public:
FStreamWrapper(std::string filename, std::ios_base::openmode openmode) :
std::fstream(filename, openmode) {}
#if defined(_WIN32) || defined(_WIN32_WCE) || defined(_WIN64)
FStreamWrapper(std::wstring filename, std::ios_base::openmode openmode) :
std::fstream(filename, openmode) {}
#endif
inline _INT64 tell() override {
return std::fstream::tellg();
}

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <memory>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "stream_utils.h"
#include "fstream_wrapper.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "stream.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <exception>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "cfitem.h"
#include "idirectoryentry.h"
#include "compoundfile_impl.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "guid.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "cfstorage.h"
#include "cfexception.h"
#include "compoundfile_impl.h"
@ -103,7 +103,7 @@ std::shared_ptr<CFStream> CFStorage::GetStream(const std::wstring& streamName)
}
else
{
throw CFItemNotFound(L"Cannot find item [" + streamName + L"] within the current storage");
return std::shared_ptr<CFStream>();
}
}

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "RBTree/action.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "cfstream.h"
#include "cfexception.h"
#include "idirectoryentry.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "Stream/stream.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "compoundfile_impl.h"
#include "directoryentry.h"
#include "cfexception.h"
@ -47,7 +47,7 @@ using namespace CFCPP;
CompoundFile::CompoundFile() : _impl(new CFCPP::CompoundFile_impl())
{
}
CompoundFile::CompoundFile(const std::wstring &fileName, CFSUpdateMode updateMode, CFSConfiguration configParameters) :
CompoundFile::CompoundFile(const std::wstring &fileName, CFSUpdateMode updateMode, int configParameters) :
_impl(new CFCPP::CompoundFile_impl(fileName, updateMode, configParameters))
{
}
@ -115,7 +115,7 @@ CompoundFile_impl::CompoundFile_impl() :
CompoundFile_impl(CFSVersion::Ver_3, CFSConfiguration::Default)
{}
CompoundFile_impl::CompoundFile_impl(const std::wstring &fileName, CFSUpdateMode updateMode, CFSConfiguration configParameters)
CompoundFile_impl::CompoundFile_impl(const std::wstring &fileName, CFSUpdateMode updateMode, int configParameters)
{
configuration = configParameters;
isValidationExceptionEnabled = !(configParameters & CFSConfiguration::NoValidationException);
@ -1796,7 +1796,6 @@ _INT32 CompoundFile_impl::GetSectorSize()
{
return 2 << (header->sectorShift - 1);
}
void CompoundFile_impl::Dispose(bool disposing)
{
try

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "cfstorage.h"
@ -56,7 +56,7 @@ class CompoundFile_impl;
class CompoundFile
{
public:
CompoundFile(const std::wstring &fileName, CFSUpdateMode updateMode, CFSConfiguration configParameters = Default);
CompoundFile(const std::wstring &fileName, CFSUpdateMode updateMode, int configParameters = Default);
CompoundFile(CFSVersion cfsVersion, CFSConfiguration configFlags);
CompoundFile(const std::wstring &fileName);
CompoundFile(Stream stream);

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "compoundfile.h"
@ -49,7 +49,7 @@ class DirectoryEntry;
class CompoundFile_impl
{
public:
CompoundFile_impl(const std::wstring &fileName, CFSUpdateMode updateMode, CFSConfiguration configParameters = Default);
CompoundFile_impl(const std::wstring &fileName, CFSUpdateMode updateMode, int configParameters = Default);
CompoundFile_impl(CFSVersion cfsVersion, CFSConfiguration configFlags);
CompoundFile_impl(const std::wstring &fileName);
CompoundFile_impl(Stream stream);
@ -62,7 +62,6 @@ public:
void Save(std::wstring wFileName);
void Save(Stream stream);
void Commit(bool releaseMemory = false);
bool HasSourceStream() const;
bool ValidationExceptionEnabled() const;
@ -140,7 +139,7 @@ private:
CFSVersion getVersion() const;
public:
CFSConfiguration configuration = Default;
int configuration = Default;
std::unique_ptr<Header> header;
Stream sourceStream;

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "directoryentry.h"
#include <sstream>
#include "cfexception.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "svector.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <functional>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "../../OOXML/Base/Types_32.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "header.h"
#include "cfexception.h"
#include "streamrw.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "sector.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <map>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "sector.h"
#include "Stream/stream_utils.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <memory>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "sectorcollection.h"
#include "cfexception.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include "sector.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <memory>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "streamrw.h"

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <fstream>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#include "streamview.h"
#include "cfexception.h"
#include <cmath>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <iostream>

View File

@ -1,34 +1,34 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
* version 3 as published by the Free Software Foundation. In accordance with
* Section 7(a) of the GNU AGPL its Section 15 shall be amended to the effect
* that Ascensio System SIA expressly excludes the warranty of non-infringement
* of any third-party rights.
*
* This program is distributed WITHOUT ANY WARRANTY; without even the implied
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
* of the Program must display Appropriate Legal Notices, as required under
* Section 5 of the GNU AGPL version 3.
*
* Pursuant to Section 7(b) of the License you must retain the original Product
* logo when distributing the program. Pursuant to Section 7(e) we decline to
* grant you any rights under trademark law for use of our trademarks.
*
* All the Product's GUI elements, including illustrations and icon sets, as
* well as technical writing content are licensed under the terms of the
* Creative Commons Attribution-ShareAlike 4.0 International. See the License
* terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
*
*/
#pragma once
#include <memory>

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions
@ -689,6 +689,12 @@
#define c_oAscContentControlSpecificTypeDateTime 5
#define c_oAscContentControlSpecificTypeTOC 10
#define c_oAscEDocProtectComments 0
#define c_oAscEDocProtectForms 1
#define c_oAscEDocProtectNone 2
#define c_oAscEDocProtectReadOnly 3
#define c_oAscEDocProtectTrackedChanges 4
#define INSERT_PAGE_NUM_PARAM(AlignV, AlignH) ((AlignV << 16) | AlignH)
// MENU COMMANDS
@ -804,6 +810,7 @@
#define ASC_COAUTH_EVENT_TYPE_INSERT_URL_IMAGE 21000
#define ASC_COAUTH_EVENT_TYPE_LOAD_URL_IMAGE 21001
#define ASC_COAUTH_EVENT_TYPE_REPLACE_URL_IMAGE 21002
#define ASC_COAUTH_EVENT_TYPE_INSERT_SCREEN_URL_IMAGE 21003
#define ASC_MENU_EVENT_TYPE_ADVANCED_OPTIONS 22000
#define ASC_MENU_EVENT_TYPE_SET_PASSWORD 22001

View File

@ -1,5 +1,5 @@
/*
* (c) Copyright Ascensio System SIA 2010-2019
* (c) Copyright Ascensio System SIA 2010-2023
*
* This program is a free software product. You can redistribute it and/or
* modify it under the terms of the GNU Affero General Public License (AGPL)
@ -12,7 +12,7 @@
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For
* details, see the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html
*
* You can contact Ascensio System SIA at 20A-12 Ernesta Birznieka-Upisha
* You can contact Ascensio System SIA at 20A-6 Ernesta Birznieka-Upish
* street, Riga, Latvia, EU, LV-1050.
*
* The interactive user interfaces in modified source and object code versions

Some files were not shown because too many files have changed in this diff Show More