Commit Graph

5379 Commits

Author SHA1 Message Date
Roman Telezhynskyi
da26ec832c Merge remote-tracking branch 'upstream/feature/manual-layout' into feature/manual-layout 2020-04-13 15:11:40 +03:00
Roman Telezhynskyi
53bd9474be Cppcheck warning. 2020-04-13 15:05:22 +03:00
Roman Telezhynskyi
fe281120d5 Remove comments. 2020-04-13 15:02:55 +03:00
Ronan Le Tiec
e8b119a959 Icons in high definition 2020-04-13 12:56:25 +02:00
Ronan Le Tiec
096f913d33 Corrections of .pro 2020-04-13 12:49:33 +02:00
Ronan Le Tiec
ee98cfb05f Updated class comment 2020-04-13 12:43:27 +02:00
Ronan Le Tiec
95101b6ac3 Piece carrousel 2020-04-13 12:24:26 +02:00
Roman Telezhynskyi
5e5199f9f6 Fix crash. Added more keys we will need in future. 2020-04-13 12:48:09 +03:00
Roman Telezhynskyi
eba2ed695c Better looking comments. 2020-04-13 12:47:19 +03:00
Roman Telezhynskyi
aa81fa5ecf Improve code style. Use typedef. 2020-04-13 12:43:25 +03:00
vorzelmir
e1c945d02c add VPuzzleCommandLine to Puzzleapplication 2020-04-12 23:28:36 +03:00
Ronan Le Tiec
ed6cc7f5d9 corrections about puzzle dialog 2020-04-11 23:34:58 +02:00
Ronan Le Tiec
1b0b30eb77 current piece property, slot and code format 2020-04-11 17:04:44 +02:00
Ronan Le Tiec
e35e80a242 some comments 2020-04-11 16:32:49 +02:00
Ronan Le Tiec
44bf83a089 slots for the layout properties 2020-04-11 16:25:23 +02:00
Ronan Le Tiec
132bc819b3 grainline icons and layout property 2020-04-11 14:23:17 +02:00
Ronan Le Tiec
3b96605ef9 layout property and icons 2020-04-11 13:28:01 +02:00
Ronan Le Tiec
3f9822d271 property tabs and tab layout 2020-04-11 12:52:26 +02:00
Ronan Le Tiec
234529f398 about puzzle dialog 2020-04-11 11:40:02 +02:00
Ronan Le Tiec
fbbc3ba479 remove tab nos needed for mvp 2020-04-11 11:17:53 +02:00
Ronan Le Tiec
80226b7188 Merge remote-tracking branch 'upstream/feature/manual-layout' into feature/manual-layout
merge upstream
2020-04-11 10:46:06 +02:00
Ronan Le Tiec
8aff83d2a2 icons and structure main window 2020-04-11 10:43:47 +02:00
Roman Telezhynskyi
51e0694f36 Merge branch 'develop' into feature/manual-layout. 2020-04-11 10:38:14 +03:00
Ronan Le Tiec
f4e4f100f3 MenuBar edit, first signals and slots 2020-04-10 21:08:29 +02:00
vorzelmir
b88e23697e puzzle command line initial options 2020-04-07 00:57:01 +03:00
vorzelmir
186a855cbd vpuzzlecommandline header the plan 2020-04-03 23:05:03 +03:00
Roman Telezhynskyi
c6c4edb893 Merge branch 'develop' into feature/manual-layout 2020-03-25 15:28:23 +02:00
Roman Telezhynskyi
3ce9de7181 error: no viable conversion from 'PuzzleMainWindow' to 'PuzzleMainWindow *'. 2020-02-16 23:36:50 +02:00
Roman Telezhynskyi
736d07a304 error: unknown type name 'QFileOpenEvent'. 2020-02-16 23:07:44 +02:00
Roman Telezhynskyi
8e815bbb54 Suppress warnings. 2020-02-16 21:51:41 +02:00
Roman Telezhynskyi
5a10bd7f63 Puzzle application class. 2020-02-16 19:18:39 +02:00
Roman Telezhynskyi
732cda4b46 Dummy base for Puzzle application. 2020-02-16 18:18:21 +02:00
Roman Telezhynskyi
0483dd508e Fix generation of recipe.
Modeling object can be removed by the garment collector. In this case the recipe generator will complain about a missed object. We can happily ignore this case if we deal with modeling object.
2020-02-11 11:29:57 +02:00
Roman Telezhynskyi
8eac0d5c66 Improve code style. 2020-02-11 11:26:55 +02:00
Roman Telezhynskyi
309259a0e4 Approximation scale on curved path - Draw vs. Detail. Closes smart-pattern/valentina#8. 2020-02-10 16:34:50 +02:00
Roman Telezhynskyi
6864ddc1af Fix build with Qt 5.14. 2020-02-04 11:22:23 +02:00
Roman Telezhynskyi
4731a8b667 Fix pattern file name. 2020-01-31 20:48:35 +02:00
Roman Telezhynskyi
7b0ab65a59 Continue fixing file names. 2020-01-31 19:17:36 +02:00
Roman Telezhynskyi
fa72dba082 Replace cyrillic character from file names. 2020-01-31 18:42:52 +02:00
Roman Telezhynskyi
fa97850b0f Suppress warning inside of qvector.h. 2020-01-31 17:49:06 +02:00
Roman Telezhynskyi
93fb90153f Fix finding the latest tag distance.
Switch to git.
2020-01-31 09:00:40 +02:00
Roman Telezhynskyi
475bdadf9b Fix link to project repo in license header. 2020-01-31 08:02:08 +02:00
Roman Telezhynskyi
7413f1fef5 Fix url for Report bug menu option. 2020-01-31 08:02:07 +02:00
Roman Telezhynskyi
c8ade52309 Cppcheck warning.
--HG--
branch : develop
2020-01-24 09:47:51 +02:00
Roman Telezhynskyi
0b82f4a18c Improve conversion error message.
Instead of showing path to temp file show path to original file.

--HG--
branch : develop
2020-01-24 09:24:03 +02:00
Roman Telezhynskyi
acfd1ac01d Fix build.
--HG--
branch : develop
2020-01-20 14:03:57 +02:00
Roman Telezhynskyi
61edf4d91a Fix build.
--HG--
branch : develop
2020-01-20 13:51:56 +02:00
Roman Telezhynskyi
e619fdc80c Fix build.
--HG--
branch : develop
2020-01-20 13:16:38 +02:00
Roman Telezhynskyi
254c7e776f Fix build.
--HG--
branch : develop
2020-01-20 12:28:35 +02:00
Roman Telezhynskyi
f64a33fb98 Resolved issue #992. QXcbConnection: XCB Error.
--HG--
branch : develop
2020-01-20 10:14:44 +02:00
Roman Telezhynskyi
716192e520 Refactoring. Hide compatibility layer behind a function.
constLast(), move(), append().

--HG--
branch : develop
2020-01-17 15:14:00 +02:00
Roman Telezhynskyi
ad45daddeb Fix build.
--HG--
branch : develop
2020-01-17 14:44:25 +02:00
Roman Telezhynskyi
7998687b03 Refactoring. Hide compatibility layer behind a function.
fromList().

--HG--
branch : develop
2020-01-16 19:46:05 +02:00
Roman Telezhynskyi
658eafc3d3 Refactoring. Hide compatibility layer behind a function.
toVector().

--HG--
branch : develop
2020-01-16 19:20:55 +02:00
Roman Telezhynskyi
7e3c7e0f88 Refactoring. Hide compatibility layer behind a function.
toSet(), toList(), swapItemsAt().

--HG--
branch : develop
2020-01-16 19:09:23 +02:00
Roman Telezhynskyi
98a88ed529 Refactoring. Hide compatibility layer behind a function.
QLineF::intersects.

--HG--
branch : develop
2020-01-16 17:34:08 +02:00
Roman Telezhynskyi
9c9c4f9abd Catch missed warning to pattern messages log.
--HG--
branch : develop
2020-01-16 14:17:18 +02:00
Roman Telezhynskyi
24e50455b0 Improve conversion for dxf file export.
We never checked if it really works. And it doesn't in many cases. Not always
Qt recognizes standard ANSI_* names as valid aliases for codepages. Because
codec itself can have many aliases we will test them one by one until one will
fit.

--HG--
branch : develop
2020-01-16 14:10:49 +02:00
Roman Telezhynskyi
0c60254208 From Qt 5.3 and onwards, configure does not link Qt Core against ICU libraries
anymore by default.

--HG--
branch : develop
2020-01-12 20:47:55 +02:00
Roman Telezhynskyi
84c5962c4e Fix build.
--HG--
branch : develop
2020-01-12 19:52:10 +02:00
Roman Telezhynskyi
21faa55b63 Fix build.
--HG--
branch : develop
2020-01-12 19:19:30 +02:00
Roman Telezhynskyi
1847b068b5 Fix deprecation warnings.
--HG--
branch : develop
2020-01-12 18:42:58 +02:00
Roman Telezhynskyi
48fbc9262e Fix deprecation warnings.
--HG--
branch : develop
2020-01-12 18:16:53 +02:00
Roman Telezhynskyi
74218e82bc Try another way to fix build.
--HG--
branch : develop
2020-01-12 13:25:35 +02:00
Roman Telezhynskyi
f63e3ff1ad Fix build.
--HG--
branch : develop
2020-01-12 12:34:12 +02:00
Roman Telezhynskyi
2a95c41bb7 Cover case when we can safely ignore broken union details operation.
--HG--
branch : develop
2020-01-11 15:08:55 +02:00
Roman Telezhynskyi
c81faf3537 Fix regressions. ref #989
(grafted from 1bbf6a73a6e3bf5fd9dc2b962bd1428f391da68b)

--HG--
branch : develop
2020-01-11 14:51:25 +02:00
Roman Telezhynskyi
110aa16650 Show warning if no available codec for code page when export in dxf.
--HG--
branch : develop
2020-01-11 12:04:31 +02:00
Roman Telezhynskyi
63c4725e81 Fix regression in DXF-AAMA export.
Some paths were not properly mapped.

--HG--
branch : develop
2020-01-11 11:48:02 +02:00
Roman Telezhynskyi
f13ec746a9 Enable/Disable Passmark through Context Menu in detail mode.
--HG--
branch : develop
2020-01-10 14:04:41 +02:00
Roman Telezhynskyi
680e66c4cd Fixed issue #989. Elliptical arc tool not behaving correctly.
(grafted from 09f4c4e0d4a44df54dd7d3267b7c7922a2c150aa)

--HG--
branch : develop
2020-01-10 13:44:27 +02:00
Roman Telezhynskyi
0373f727c5 Allow visibility control of passmarks.
Passmark with 0 length and enabled manual control must not be visible. Equal to
not passmark state.

--HG--
branch : develop
2020-01-10 12:19:07 +02:00
Roman Telezhynskyi
ac38d662bf Incorrect conversion to newer curve format.
(grafted from d43e0ad7a8b691e3403c96ec1ec17eceac5c235f)

--HG--
branch : develop
2020-01-10 09:58:16 +02:00
Roman Telezhynskyi
a1ed06d659 Fix broken tests.
--HG--
branch : develop
2020-01-10 08:57:19 +02:00
Roman Telezhynskyi
fa070b56ab Cppcheck warning.
--HG--
branch : develop
2020-01-09 19:04:52 +02:00
Roman Telezhynskyi
078f6fad64 Tracking changes/prevent "OK" recalculation after "Apply".
--HG--
branch : develop
2020-01-09 18:56:37 +02:00
Roman Telezhynskyi
40363230dc Resolved issue #984. Issue with up to date list of unique names.
--HG--
branch : develop
2020-01-09 15:14:05 +02:00
Roman Telezhynskyi
5658e0b0d5 Fix copy paste error.
--HG--
branch : develop
2020-01-07 14:21:47 +02:00
Roman Telezhynskyi
b3f236dbb5 Refactoring. Rename ArrowType enum class.
--HG--
branch : develop
2020-01-07 13:54:23 +02:00
Roman Telezhynskyi
21d6a85678 Fix copy paste error.
--HG--
branch : develop
2020-01-07 12:55:45 +02:00
Roman Telezhynskyi
0e12e9f9fb Suppress warning Wnoexcept.
Cannot fix because QPointF is part of library.

--HG--
branch : develop
2020-01-07 12:55:23 +02:00
Roman Telezhynskyi
cf1e383d7b Don't use 'char' as a type of enum class.
QDataStream doesn't support serialization for this type.

--HG--
branch : develop
2020-01-07 12:54:01 +02:00
Roman Telezhynskyi
2a47cbf9b7 Remove link to forum.
(grafted from 54ff8691af1c66387072c0db67444b76f16d8bd2)

--HG--
branch : develop
2020-01-07 11:12:24 +02:00
Roman Telezhynskyi
a6d67587ab Lupdate.
--HG--
branch : develop
2020-01-07 11:01:42 +02:00
Roman Telezhynskyi
5177057be1 Since Qt 5.14 enumerations can be serialized through QDataStream without the
need of manually defining streaming operators. Enum classes are
serialized using the declared size.

--HG--
branch : develop
2020-01-07 09:45:26 +02:00
Roman Telezhynskyi
3db69c34ee Noexcept-expression evaluates to 'false' because of a call to 'constexpr
VSAPoint::VSAPoint()'.

--HG--
branch : develop
2020-01-07 08:28:13 +02:00
Roman Telezhynskyi
bfe9bd808d Fix cast warning.
(grafted from f7b7f00f0f117582449259e974fc53182df958cb)

--HG--
branch : develop
2020-01-06 20:11:23 +02:00
Roman Telezhynskyi
e301b3a91a Cppcheck warning.
(grafted from 3469aa8b4edb138d68672a9b9350d7d6fb79053b)

--HG--
branch : develop
2020-01-06 20:10:48 +02:00
Roman Telezhynskyi
1f6285aef9 Fix deprecation warnings.
(grafted from 686129d90f37b8d0c428092668673d44f06545d8)

--HG--
branch : develop
2020-01-06 20:10:09 +02:00
Roman Telezhynskyi
d74225e63e QLineF::IntersectType QLineF::intersect(const QLineF&, QPointF*) const' is
deprecated: Use intersects() instead.
(grafted from b8646bf40865848ad48eae89cae8419483d56f6b)

--HG--
branch : develop
2020-01-06 18:34:35 +02:00
Roman Telezhynskyi
57b9868316 Cppcheck warning.
(grafted from e996125b7dbe0fb7b439bc80db0b561144628c18)

--HG--
branch : develop
2020-01-06 18:33:37 +02:00
Roman Telezhynskyi
84001dac61 Refactoring. Added move constructor.
--HG--
branch : develop
2019-12-30 17:13:18 +02:00
Roman Telezhynskyi
54cb9fe0fb Fix move semantic.
New class.

--HG--
branch : develop
2019-12-30 14:48:27 +02:00
Roman Telezhynskyi
74bb3e4369 Fix move sematic.
(grafted from fb8691f522f3515d7c3014a0ea90b60b352a444e)

--HG--
branch : develop
2019-12-30 13:00:57 +02:00
Roman Telezhynskyi
6fc51d83b0 Improve ergonomic. Allow a user to define both text and image, and control
which will of them be active.

--HG--
branch : develop
2019-12-30 14:43:06 +02:00
Roman Telezhynskyi
d0dc209c45 error: implicit conversion changes signedness: 'quint32' (aka 'unsigned int')
to 'int'.

--HG--
branch : develop
2019-12-29 17:13:30 +02:00
Roman Telezhynskyi
f83f28998f error: implicit instantiation of undefined template 'QVector<TextLine>'.
--HG--
branch : develop
2019-12-29 16:23:15 +02:00
Roman Telezhynskyi
5f6b17fc9d error: 'VWatermarkData' defined as a struct here but previously declared as a
class.

--HG--
branch : develop
2019-12-29 16:00:06 +02:00
Roman Telezhynskyi
08b58c2518 Code style.
--HG--
branch : develop
2019-12-29 15:59:48 +02:00
Roman Telezhynskyi
b7829428c9 Beside usage similar to that of English, the colon has other functions. Several
compatibility forms for Chinese and Japanese typography are encoded in Unicode.
(grafted from 065a26d8b5779ca5c8c2486509352c8c48190a33)

--HG--
branch : develop
2019-12-29 14:37:46 +02:00
Roman Telezhynskyi
3c74c03c59 Fix crash after uniting three pieces in sequence.
(grafted from 7f649df048328d449e1de01794d238eeef0c39be)

--HG--
branch : develop
2019-12-29 13:49:57 +02:00
Roman Telezhynskyi
9e7cf5c55c error: 'static bool QPixmapCache::find(const QString&, QPixmap&)' is
deprecated: Use bool find(const QString &, QPixmap *) instead.

--HG--
branch : develop
2019-12-29 11:06:34 +02:00
Roman Telezhynskyi
9aa0e2ed52 Cppcheck warning.
--HG--
branch : develop
2019-12-28 18:18:31 +02:00
Roman Telezhynskyi
15852ed2cd Add missing icon in Windows icon theme.
--HG--
branch : develop
2019-12-28 18:06:06 +02:00
Roman Telezhynskyi
1d7667df61 Export tiled PDF with watermark.
--HG--
branch : develop
2019-12-13 10:51:29 +02:00
Roman Telezhynskyi
41c3ddf5db ${TARGET} variable works differently for shared libraries.
--HG--
branch : develop
2019-12-22 12:44:43 +02:00
Roman Telezhynskyi
888a968056 Refactoring. Remove unneeded conditions.
--HG--
branch : develop
2019-12-22 11:48:42 +02:00
Roman Telezhynskyi
cadf6ecb3b Fix path bin file.
--HG--
branch : develop
2019-12-22 11:47:54 +02:00
Roman Telezhynskyi
7fd1674a81 Added a ruler at the bottom of a tiled PDF document.
--HG--
branch : develop
2019-12-08 14:43:26 +02:00
Andrey Ushakov
bc26d545d1 add rule in page bottom
--HG--
branch : develop
2019-12-08 00:18:44 +03:00
Andrey Ushakov
82bad42a3c log layout efficiency to console
--HG--
branch : develop
2019-12-08 00:18:00 +03:00
Roman Telezhynskyi
1c6ff72b23 Removed hard coded font value. Kept only its bold status.
--HG--
branch : develop
2019-12-07 08:58:12 +02:00
Roman Telezhynskyi
34c49f3323 Clazy warning.
--HG--
branch : develop
2019-12-07 08:55:52 +02:00
Roman Telezhynskyi
c87a15b99c Improve working with measurements in Tape.
* Disable remove button if a table is empty.
* Switch to previous measurement if remove the last in the list.

--HG--
branch : develop
2019-12-05 10:27:33 +02:00
Roman Telezhynskyi
5c7af760d0 Improve Passmark tab by adding a tooltip about a way to define a passmark.
--HG--
branch : develop
2019-12-04 17:50:50 +02:00
Roman Telezhynskyi
eeedebbac3 Fix regression in dialog Placelabel.
--HG--
branch : develop
2019-12-03 15:20:47 +02:00
Roman Telezhynskyi
80418045b0 Fix build on Windows.
--HG--
branch : develop
2019-11-29 21:16:37 +02:00
Roman Telezhynskyi
3c69b425ec Fix noDebugSymbols.
--HG--
branch : develop
2019-11-29 19:55:27 +02:00
Roman Telezhynskyi
037ca99280 Refactoring. Move the code that gets path to exe file to separate module. DRY.
--HG--
branch : develop
2019-11-29 14:40:00 +02:00
Roman Telezhynskyi
18284289a0 Forgot to add a correction.
--HG--
branch : develop
2019-11-29 12:24:00 +02:00
Roman Telezhynskyi
7624b27409 BinReloc to get path to exe directory.
--HG--
branch : develop
2019-11-29 11:40:00 +02:00
Roman Telezhynskyi
df79ea7395 Test idea that Qt classes internally use ICU.
--HG--
branch : develop
2019-11-29 08:49:32 +02:00
Roman Telezhynskyi
1d28dd5be9 u_setDataDirectory expects const * char.
--HG--
branch : develop
2019-11-29 08:15:29 +02:00
Roman Telezhynskyi
002f86b1a8 Move SetICUData on top.
--HG--
branch : develop
2019-11-28 19:00:23 +02:00
Roman Telezhynskyi
5ca33d5b3f Lupdate.
--HG--
branch : develop
2019-11-28 18:09:37 +02:00
Roman Telezhynskyi
50b929ea48 u_setDataDirectory to define path to ICU data.
--HG--
branch : develop
2019-11-28 16:42:06 +02:00
Roman Telezhynskyi
866a801f38 Auto refresh the list with each parse.
--HG--
branch : develop
2019-11-28 15:17:27 +02:00
Roman Telezhynskyi
0c78511cfc Set environment variable ICU_DATA on runtime.
This time before QApplication and manually getting the application dir path.

--HG--
branch : develop
2019-11-26 19:56:40 +02:00
Roman Telezhynskyi
f81d814bb2 QCoreApplication::applicationDirPath returns empty string until we do not init
QApplication instance.

--HG--
branch : develop
2019-11-26 16:44:52 +02:00
Roman Telezhynskyi
b724210bf9 Debug ICU_DATA environment variable.
--HG--
branch : develop
2019-11-26 15:35:43 +02:00
Roman Telezhynskyi
3b56659226 Set environment variable ICU_DATA on runtime.
When deploying with AppImage based on OpenSuse, the ICU library has a
hardcoded path to the icudt*.dat file. This prevents the library from using
shared in memory data. There are few ways to resolve this issue. According to
documentation we can either use ICU_DATA environment variable or the function
u_setDataDirectory().

--HG--
branch : develop
2019-11-26 12:57:06 +02:00
Roman Telezhynskyi
a59f4d7923 Fix crash when QTextCodec::codecForMib returns null.
--HG--
branch : develop
2019-11-25 11:34:17 +02:00
Roman Telezhynskyi
9cc97ef602 Clazy warnings.
--HG--
branch : develop
2019-11-24 13:09:30 +02:00
Roman Telezhynskyi
1217616813 Refactoring.
Pass VContainer::AddVariable only a variable, the variable already knows its
name.

--HG--
branch : develop
2019-11-24 13:09:16 +02:00
Roman Telezhynskyi
2d63440549 Fix a crash. ref #984.
Cover cases with VCubicBezier and VCubicBezierPath.

--HG--
branch : develop
2019-11-24 12:49:40 +02:00
Roman Telezhynskyi
9e25e6de24 Introducing vRound function.
Shortcut to round double to X points decimal.

--HG--
branch : develop
2019-11-19 15:46:11 +02:00
Roman Telezhynskyi
0c0207aa6f Fix dialog for tool Point along perpendicular. No memory of line color settings.
(grafted from d65f796893e4f8c04b535f711bd8d93275e2ddff)

--HG--
branch : develop
2019-11-19 10:52:53 +02:00
Roman Telezhynskyi
816db0a7bb Make increments separator more visually separated from regular increments.
--HG--
branch : develop
2019-11-18 14:42:27 +02:00
Roman Telezhynskyi
ec346117f1 Fix initial state for Pattern messages dock widget.
It should not float, better initially show it docked.

--HG--
branch : develop
2019-11-15 17:42:12 +02:00
Roman Telezhynskyi
2a2ebe32b8 Always use Q_OS_WIN macros.
We don't have specific 32 bit implementations.

--HG--
branch : develop
2019-11-15 09:48:05 +02:00
Roman Telezhynskyi
75786483c7 Remove unused header.
--HG--
branch : develop
2019-11-15 09:44:33 +02:00
Roman Telezhynskyi
36e839ed5d Move to top and include qt_windows.h.
--HG--
branch : develop
2019-11-15 09:51:31 +02:00
Roman Telezhynskyi
477040c0b2 Fix crash.
When a user calls full parse and a pattern contains a lot of pieces while they
update a second call may cause a crash.

--HG--
branch : develop
2019-11-14 10:52:07 +02:00
Roman Telezhynskyi
f8ca985ad7 Fix a crash. ref #984.
--HG--
branch : develop
2019-11-07 18:07:07 +02:00
Roman Telezhynskyi
22c3bbcd46 Fix tests.
--HG--
branch : develop
2019-11-04 12:20:07 +02:00
Roman Telezhynskyi
db14bca099 Lupdate.
--HG--
branch : develop
2019-11-03 18:38:21 +02:00
Roman Telezhynskyi
0cb7965379 Minimal seam allowance must be little bit bigger.
--HG--
branch : develop
2019-11-03 17:50:39 +02:00
Roman Telezhynskyi
f460a324b3 We must not rely on current directory when start tests.
--HG--
branch : develop
2019-11-03 16:00:23 +02:00
Roman Telezhynskyi
bb70989165 Fixing error: invalid return type 'void' of constexpr function.
--HG--
branch : develop
2019-11-03 10:45:04 +02:00
Roman Telezhynskyi
b8f2d1782b Cppcheck warning.
--HG--
branch : develop
2019-11-03 10:20:00 +02:00